diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2010-11-11 02:56:24 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2010-11-11 02:56:24 +0000 |
| commit | 89f997ec0d93345fa3134d1c906bf16246a51fc1 (patch) | |
| tree | d9a190441b4edd3ced4ff69989fe8d95d99d89a6 /test | |
| parent | 513e8a7917a48e891ef1c4e2b005b862b3a06ac7 (diff) | |
2010-11-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Replaced MessageDigestContext with MessageDigest. Cleaned up
unnecessary functions in MessageDigestHelper.
* src/BtPieceMessage.cc
* src/Checksum.h
* src/DHTTokenTracker.cc
* src/DownloadCommand.cc
* src/DownloadCommand.h
* src/HashFuncEntry.h
* src/IteratableChecksumValidator.cc
* src/IteratableChecksumValidator.h
* src/IteratableChunkChecksumValidator.cc
* src/IteratableChunkChecksumValidator.h
* src/LibgcryptMessageDigestImpl.cc
* src/LibgcryptMessageDigestImpl.h
* src/LibsslMessageDigestImpl.cc
* src/LibsslMessageDigestImpl.h
* src/MSEHandshake.cc
* src/MSEHandshake.h
* src/Makefile.am
* src/MessageDigest.cc
* src/MessageDigest.h
* src/MessageDigestHelper.cc
* src/MessageDigestHelper.h
* src/MessageDigestImpl.h
* src/MetalinkParserController.cc
* src/Piece.cc
* src/Piece.h
* src/UTMetadataDataExtensionMessage.cc
* src/bittorrent_helper.cc
* src/messageDigest.cc: Removed
* src/messageDigest.h: Removed
* src/util.cc
* src/version_usage.cc
* test/BittorrentHelperTest.cc
* test/GZipDecoderTest.cc
* test/GZipDecodingStreamFilterTest.cc
* test/IteratableChecksumValidatorTest.cc
* test/IteratableChunkChecksumValidatorTest.cc
* test/Makefile.am
* test/MessageDigestHelperTest.cc
* test/MessageDigestTest.cc
* test/Metalink2RequestGroupTest.cc
* test/MetalinkProcessorTest.cc
* test/PieceTest.cc
* test/TestUtil.cc
* test/TestUtil.h
* test/UTMetadataDataExtensionMessageTest.cc
* test/UTMetadataPostDownloadHandlerTest.cc
Diffstat (limited to 'test')
| -rw-r--r-- | test/BittorrentHelperTest.cc | 3 | ||||
| -rw-r--r-- | test/GZipDecoderTest.cc | 14 | ||||
| -rw-r--r-- | test/GZipDecodingStreamFilterTest.cc | 7 | ||||
| -rw-r--r-- | test/IteratableChecksumValidatorTest.cc | 5 | ||||
| -rw-r--r-- | test/IteratableChunkChecksumValidatorTest.cc | 5 | ||||
| -rw-r--r-- | test/Makefile.am | 3 | ||||
| -rw-r--r-- | test/Makefile.in | 29 | ||||
| -rw-r--r-- | test/MessageDigestHelperTest.cc | 36 | ||||
| -rw-r--r-- | test/MessageDigestTest.cc | 84 | ||||
| -rw-r--r-- | test/Metalink2RequestGroupTest.cc | 11 | ||||
| -rw-r--r-- | test/MetalinkProcessorTest.cc | 32 | ||||
| -rw-r--r-- | test/PieceTest.cc | 7 | ||||
| -rw-r--r-- | test/TestUtil.cc | 14 | ||||
| -rw-r--r-- | test/TestUtil.h | 9 | ||||
| -rw-r--r-- | test/UTMetadataDataExtensionMessageTest.cc | 3 | ||||
| -rw-r--r-- | test/UTMetadataPostDownloadHandlerTest.cc | 4 |
16 files changed, 182 insertions, 84 deletions
diff --git a/test/BittorrentHelperTest.cc b/test/BittorrentHelperTest.cc index af1c703d..7b8ebb56 100644 --- a/test/BittorrentHelperTest.cc +++ b/test/BittorrentHelperTest.cc @@ -12,7 +12,6 @@ #include "FixedNumberRandomizer.h" #include "FileEntry.h" #include "array_fun.h" -#include "messageDigest.h" #include "a2netcompat.h" #include "bencode2.h" #include "TestUtil.h" @@ -153,7 +152,7 @@ void BittorrentHelperTest::testGetPieceHash() { CPPUNIT_ASSERT_EQUAL(std::string(""), dctx->getPieceHash(3)); - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA1, dctx->getPieceHashAlgo()); + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"), dctx->getPieceHashAlgo()); } void BittorrentHelperTest::testGetFileEntries() { diff --git a/test/GZipDecoderTest.cc b/test/GZipDecoderTest.cc index d0fc95fb..98a10342 100644 --- a/test/GZipDecoderTest.cc +++ b/test/GZipDecoderTest.cc @@ -1,12 +1,17 @@ #include "GZipDecoder.h" + +#include <iostream> +#include <fstream> + +#include <cppunit/extensions/HelperMacros.h> + +#include "TestUtil.h" #include "Exception.h" #include "util.h" #ifdef ENABLE_MESSAGE_DIGEST +# include "MessageDigest.h" # include "MessageDigestHelper.h" #endif // ENABLE_MESSAGE_DIGEST -#include <iostream> -#include <fstream> -#include <cppunit/extensions/HelperMacros.h> namespace aria2 { @@ -51,8 +56,7 @@ void GZipDecoderTest::testDecode() #ifdef ENABLE_MESSAGE_DIGEST CPPUNIT_ASSERT_EQUAL(std::string("8b577b33c0411b2be9d4fa74c7402d54a8d21f96"), - MessageDigestHelper::digest(MessageDigestContext::SHA1, - outfile)); + fileHexDigest(MessageDigest::sha1(), outfile)); #endif // ENABLE_MESSAGE_DIGEST } diff --git a/test/GZipDecodingStreamFilterTest.cc b/test/GZipDecodingStreamFilterTest.cc index 250f410e..57f46da3 100644 --- a/test/GZipDecodingStreamFilterTest.cc +++ b/test/GZipDecodingStreamFilterTest.cc @@ -13,6 +13,7 @@ #include "SinkStreamFilter.h" #include "MockSegment.h" #ifdef ENABLE_MESSAGE_DIGEST +# include "MessageDigest.h" # include "MessageDigestHelper.h" #endif // ENABLE_MESSAGE_DIGEST @@ -72,9 +73,11 @@ void GZipDecodingStreamFilterTest::testTransform() } CPPUNIT_ASSERT(filter_->finished()); #ifdef ENABLE_MESSAGE_DIGEST + std::string data = writer_->getString(); + SharedHandle<MessageDigest> sha1(MessageDigest::sha1()); + sha1->update(data.data(), data.size()); CPPUNIT_ASSERT_EQUAL(std::string("8b577b33c0411b2be9d4fa74c7402d54a8d21f96"), - MessageDigestHelper::digestString - (MessageDigestContext::SHA1, writer_->getString())); + sha1->hexDigest()); #endif // ENABLE_MESSAGE_DIGEST } diff --git a/test/IteratableChecksumValidatorTest.cc b/test/IteratableChecksumValidatorTest.cc index 57ee51e9..ea235c68 100644 --- a/test/IteratableChecksumValidatorTest.cc +++ b/test/IteratableChecksumValidatorTest.cc @@ -8,7 +8,6 @@ #include "DiskAdaptor.h" #include "FileEntry.h" #include "PieceSelector.h" -#include "messageDigest.h" namespace aria2 { @@ -36,7 +35,7 @@ void IteratableChecksumValidatorTest::testValidate() { SharedHandle<DownloadContext> dctx (new DownloadContext(100, 250, "chunkChecksumTestFile250.txt")); dctx->setChecksum("898a81b8e0181280ae2ee1b81e269196d91e869a"); - dctx->setChecksumHashAlgo(MessageDigestContext::SHA1); + dctx->setChecksumHashAlgo("sha-1"); SharedHandle<DefaultPieceStorage> ps(new DefaultPieceStorage(dctx, &option)); ps->initStorage(); ps->getDiskAdaptor()->openFile(); @@ -55,7 +54,7 @@ void IteratableChecksumValidatorTest::testValidate_fail() { SharedHandle<DownloadContext> dctx (new DownloadContext(100, 250, "chunkChecksumTestFile250.txt")); dctx->setChecksum(std::string(40, '0')); // set wrong checksum - dctx->setChecksumHashAlgo(MessageDigestContext::SHA1); + dctx->setChecksumHashAlgo("sha-1"); SharedHandle<DefaultPieceStorage> ps(new DefaultPieceStorage(dctx, &option)); ps->initStorage(); ps->getDiskAdaptor()->openFile(); diff --git a/test/IteratableChunkChecksumValidatorTest.cc b/test/IteratableChunkChecksumValidatorTest.cc index 9fa2543d..3b91dd35 100644 --- a/test/IteratableChunkChecksumValidatorTest.cc +++ b/test/IteratableChunkChecksumValidatorTest.cc @@ -8,7 +8,6 @@ #include "DiskAdaptor.h" #include "FileEntry.h" #include "PieceSelector.h" -#include "messageDigest.h" namespace aria2 { @@ -41,7 +40,7 @@ void IteratableChunkChecksumValidatorTest::testValidate() { SharedHandle<DownloadContext> dctx (new DownloadContext(100, 250, "chunkChecksumTestFile250.txt")); dctx->setPieceHashes(&csArray[0], &csArray[3]); - dctx->setPieceHashAlgo(MessageDigestContext::SHA1); + dctx->setPieceHashAlgo("sha-1"); SharedHandle<DefaultPieceStorage> ps (new DefaultPieceStorage(dctx, &option)); ps->initStorage(); @@ -81,7 +80,7 @@ void IteratableChunkChecksumValidatorTest::testValidate_readError() { hashes.push_back("ffffffffffffffffffffffffffffffffffffffff"); hashes.push_back("ffffffffffffffffffffffffffffffffffffffff"); dctx->setPieceHashes(hashes.begin(), hashes.end()); - dctx->setPieceHashAlgo(MessageDigestContext::SHA1); + dctx->setPieceHashAlgo("sha-1"); SharedHandle<DefaultPieceStorage> ps(new DefaultPieceStorage(dctx, &option)); ps->initStorage(); ps->getDiskAdaptor()->openFile(); diff --git a/test/Makefile.am b/test/Makefile.am index a5548914..e29602e9 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -100,7 +100,8 @@ endif # HAVE_SQLITE3 if ENABLE_MESSAGE_DIGEST aria2c_SOURCES += MessageDigestHelperTest.cc\ IteratableChunkChecksumValidatorTest.cc\ - IteratableChecksumValidatorTest.cc + IteratableChecksumValidatorTest.cc\ + MessageDigestTest.cc endif # ENABLE_MESSAGE_DIGEST if ENABLE_BITTORRENT diff --git a/test/Makefile.in b/test/Makefile.in index b25b8310..2907ac30 100644 --- a/test/Makefile.in +++ b/test/Makefile.in @@ -48,7 +48,8 @@ check_PROGRAMS = $(am__EXEEXT_1) @HAVE_SQLITE3_TRUE@am__append_4 = Sqlite3CookieParserTest.cc @ENABLE_MESSAGE_DIGEST_TRUE@am__append_5 = MessageDigestHelperTest.cc\ @ENABLE_MESSAGE_DIGEST_TRUE@ IteratableChunkChecksumValidatorTest.cc\ -@ENABLE_MESSAGE_DIGEST_TRUE@ IteratableChecksumValidatorTest.cc +@ENABLE_MESSAGE_DIGEST_TRUE@ IteratableChecksumValidatorTest.cc\ +@ENABLE_MESSAGE_DIGEST_TRUE@ MessageDigestTest.cc @ENABLE_BITTORRENT_TRUE@am__append_6 = BtAllowedFastMessageTest.cc\ @ENABLE_BITTORRENT_TRUE@ BtBitfieldMessageTest.cc\ @@ -222,17 +223,17 @@ am__aria2c_SOURCES_DIST = AllTest.cc TestUtil.cc TestUtil.h \ GZipEncoderTest.cc GZipDecodingStreamFilterTest.cc \ Sqlite3CookieParserTest.cc MessageDigestHelperTest.cc \ IteratableChunkChecksumValidatorTest.cc \ - IteratableChecksumValidatorTest.cc BtAllowedFastMessageTest.cc \ - BtBitfieldMessageTest.cc BtCancelMessageTest.cc \ - BtChokeMessageTest.cc BtHandshakeMessageTest.cc \ - BtHaveAllMessageTest.cc BtHaveMessageTest.cc \ - BtHaveNoneMessageTest.cc BtInterestedMessageTest.cc \ - BtKeepAliveMessageTest.cc BtNotInterestedMessageTest.cc \ - BtPieceMessageTest.cc BtPortMessageTest.cc \ - BtRejectMessageTest.cc BtRequestMessageTest.cc \ - BtSuggestPieceMessageTest.cc BtUnchokeMessageTest.cc \ - DefaultPieceStorageTest.cc DefaultBtAnnounceTest.cc \ - DefaultBtMessageDispatcherTest.cc \ + IteratableChecksumValidatorTest.cc MessageDigestTest.cc \ + BtAllowedFastMessageTest.cc BtBitfieldMessageTest.cc \ + BtCancelMessageTest.cc BtChokeMessageTest.cc \ + BtHandshakeMessageTest.cc BtHaveAllMessageTest.cc \ + BtHaveMessageTest.cc BtHaveNoneMessageTest.cc \ + BtInterestedMessageTest.cc BtKeepAliveMessageTest.cc \ + BtNotInterestedMessageTest.cc BtPieceMessageTest.cc \ + BtPortMessageTest.cc BtRejectMessageTest.cc \ + BtRequestMessageTest.cc BtSuggestPieceMessageTest.cc \ + BtUnchokeMessageTest.cc DefaultPieceStorageTest.cc \ + DefaultBtAnnounceTest.cc DefaultBtMessageDispatcherTest.cc \ DefaultBtRequestFactoryTest.cc MockBtMessage.h \ MockBtMessageDispatcher.h MockBtMessageFactory.h \ AnnounceListTest.cc DefaultPeerStorageTest.cc \ @@ -287,7 +288,8 @@ am__aria2c_SOURCES_DIST = AllTest.cc TestUtil.cc TestUtil.h \ @ENABLE_MESSAGE_DIGEST_TRUE@am__objects_5 = \ @ENABLE_MESSAGE_DIGEST_TRUE@ MessageDigestHelperTest.$(OBJEXT) \ @ENABLE_MESSAGE_DIGEST_TRUE@ IteratableChunkChecksumValidatorTest.$(OBJEXT) \ -@ENABLE_MESSAGE_DIGEST_TRUE@ IteratableChecksumValidatorTest.$(OBJEXT) +@ENABLE_MESSAGE_DIGEST_TRUE@ IteratableChecksumValidatorTest.$(OBJEXT) \ +@ENABLE_MESSAGE_DIGEST_TRUE@ MessageDigestTest.$(OBJEXT) @ENABLE_BITTORRENT_TRUE@am__objects_6 = \ @ENABLE_BITTORRENT_TRUE@ BtAllowedFastMessageTest.$(OBJEXT) \ @ENABLE_BITTORRENT_TRUE@ BtBitfieldMessageTest.$(OBJEXT) \ @@ -850,6 +852,7 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MSEHandshakeTest.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MagnetTest.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MessageDigestHelperTest.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MessageDigestTest.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/Metalink2RequestGroupTest.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MetalinkEntryTest.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/MetalinkHelperTest.Po@am__quote@ diff --git a/test/MessageDigestHelperTest.cc b/test/MessageDigestHelperTest.cc index faa7abd1..8bc781e0 100644 --- a/test/MessageDigestHelperTest.cc +++ b/test/MessageDigestHelperTest.cc @@ -4,16 +4,15 @@ #include "util.h" #include "DefaultDiskWriter.h" -#include "messageDigest.h" +#include "MessageDigest.h" namespace aria2 { class MessageDigestHelperTest:public CppUnit::TestFixture { CPPUNIT_TEST_SUITE(MessageDigestHelperTest); - CPPUNIT_TEST(testDigestDiskWriter); - CPPUNIT_TEST(testDigestFilename); - CPPUNIT_TEST(testDigestData); + CPPUNIT_TEST(testHexDigestDiskWriter); + CPPUNIT_TEST(testDigest); CPPUNIT_TEST_SUITE_END(); private: @@ -21,40 +20,33 @@ public: void setUp() { } - void testDigestDiskWriter(); - void testDigestFilename(); - void testDigestData(); + void testHexDigestDiskWriter(); + void testDigest(); }; CPPUNIT_TEST_SUITE_REGISTRATION( MessageDigestHelperTest ); -void MessageDigestHelperTest::testDigestDiskWriter() { +void MessageDigestHelperTest::testHexDigestDiskWriter() { SharedHandle<DefaultDiskWriter> diskio (new DefaultDiskWriter("4096chunk.txt")); diskio->openExistingFile(); CPPUNIT_ASSERT_EQUAL(std::string("608cabc0f2fa18c260cafd974516865c772363d5"), - MessageDigestHelper::digest - (MessageDigestContext::SHA1, diskio, 0, 4096)); + MessageDigestHelper::hexDigest + (MessageDigest::sha1(), diskio, 0, 4096)); CPPUNIT_ASSERT_EQUAL(std::string("7a4a9ae537ebbbb826b1060e704490ad0f365ead"), - MessageDigestHelper::digest - (MessageDigestContext::SHA1, diskio, 5, 100)); + MessageDigestHelper::hexDigest + (MessageDigest::sha1(), diskio, 5, 100)); } -void MessageDigestHelperTest::testDigestFilename() -{ - CPPUNIT_ASSERT_EQUAL(std::string("608cabc0f2fa18c260cafd974516865c772363d5"), - MessageDigestHelper::digest - (MessageDigestContext::SHA1, "4096chunk.txt")); -} - -void MessageDigestHelperTest::testDigestData() +void MessageDigestHelperTest::testDigest() { std::string data = "aria2"; + SharedHandle<MessageDigest> sha1 = MessageDigest::sha1(); + sha1->update(data.data(), data.size()); CPPUNIT_ASSERT_EQUAL(std::string("f36003f22b462ffa184390533c500d8989e9f681"), - MessageDigestHelper::digest - (MessageDigestContext::SHA1, data.c_str(), data.size())); + sha1->hexDigest()); } } // namespace aria2 diff --git a/test/MessageDigestTest.cc b/test/MessageDigestTest.cc new file mode 100644 index 00000000..627597da --- /dev/null +++ b/test/MessageDigestTest.cc @@ -0,0 +1,84 @@ +#include "MessageDigest.h" + +#include <cppunit/extensions/HelperMacros.h> + +#include "util.h" + +namespace aria2 { + +class MessageDigestTest:public CppUnit::TestFixture { + + CPPUNIT_TEST_SUITE(MessageDigestTest); + CPPUNIT_TEST(testHexDigest); + CPPUNIT_TEST(testSupports); + CPPUNIT_TEST(testGetDigestLength); + CPPUNIT_TEST(testIsStronger); + CPPUNIT_TEST(testIsValidHash); + CPPUNIT_TEST(testGetCanonicalHashType); + CPPUNIT_TEST_SUITE_END(); + + SharedHandle<MessageDigest> sha1_; +public: + void setUp() + { + sha1_ = MessageDigest::sha1(); + } + + void testHexDigest(); + void testSupports(); + void testGetDigestLength(); + void testIsStronger(); + void testIsValidHash(); + void testGetCanonicalHashType(); +}; + + +CPPUNIT_TEST_SUITE_REGISTRATION( MessageDigestTest ); + +void MessageDigestTest::testHexDigest() +{ + sha1_->update("aria2", 5); + CPPUNIT_ASSERT_EQUAL(std::string("f36003f22b462ffa184390533c500d8989e9f681"), + sha1_->hexDigest()); +} + +void MessageDigestTest::testSupports() +{ + CPPUNIT_ASSERT(MessageDigest::supports("sha-1")); + // Fails because sha1 is not valid name. + CPPUNIT_ASSERT(!MessageDigest::supports("sha1")); +} + +void MessageDigestTest::testGetDigestLength() +{ + CPPUNIT_ASSERT_EQUAL((size_t)20, MessageDigest::getDigestLength("sha-1")); + CPPUNIT_ASSERT_EQUAL((size_t)20, sha1_->getDigestLength()); +} + +void MessageDigestTest::testIsStronger() +{ + CPPUNIT_ASSERT(MessageDigest::isStronger("sha-1", "md5")); + CPPUNIT_ASSERT(!MessageDigest::isStronger("md5", "sha-1")); + CPPUNIT_ASSERT(!MessageDigest::isStronger("unknown", "sha-1")); + CPPUNIT_ASSERT(!MessageDigest::isStronger("sha-1", "unknown")); +} + +void MessageDigestTest::testIsValidHash() +{ + CPPUNIT_ASSERT(MessageDigest::isValidHash + ("sha-1", "f36003f22b462ffa184390533c500d8989e9f681")); + CPPUNIT_ASSERT(!MessageDigest::isValidHash + ("sha-1", "f36003f22b462ffa184390533c500d89")); +} + +void MessageDigestTest::testGetCanonicalHashType() +{ + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"), + MessageDigest::getCanonicalHashType("sha1")); + CPPUNIT_ASSERT_EQUAL(std::string("sha-256"), + MessageDigest::getCanonicalHashType("sha256")); + CPPUNIT_ASSERT_EQUAL(std::string("unknown"), + MessageDigest::getCanonicalHashType("unknown")); +} + +} // namespace aria2 diff --git a/test/Metalink2RequestGroupTest.cc b/test/Metalink2RequestGroupTest.cc index 920a15be..ea70d7c7 100644 --- a/test/Metalink2RequestGroupTest.cc +++ b/test/Metalink2RequestGroupTest.cc @@ -9,9 +9,6 @@ #include "Option.h" #include "RequestGroup.h" #include "FileEntry.h" -#ifdef ENABLE_MESSAGE_DIGEST -# include "messageDigest.h" -#endif // ENABLE_MESSAGE_DIGEST namespace aria2 { @@ -63,8 +60,7 @@ void Metalink2RequestGroupTest::testGenerate() CPPUNIT_ASSERT_EQUAL((uint64_t)0ULL, dctx->getTotalLength()); CPPUNIT_ASSERT_EQUAL(std::string("/tmp"), dctx->getDir()); #ifdef ENABLE_MESSAGE_DIGEST - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA1, - dctx->getChecksumHashAlgo()); + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"), dctx->getChecksumHashAlgo()); CPPUNIT_ASSERT_EQUAL (std::string("a96cf3f0266b91d87d5124cf94326422800b627d"), dctx->getChecksum()); @@ -84,11 +80,10 @@ void Metalink2RequestGroupTest::testGenerate() CPPUNIT_ASSERT(!dctx.isNull()); CPPUNIT_ASSERT_EQUAL(std::string("/tmp"), dctx->getDir()); #ifdef ENABLE_MESSAGE_DIGEST - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA1, dctx->getPieceHashAlgo()); + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"), dctx->getPieceHashAlgo()); CPPUNIT_ASSERT_EQUAL((size_t)2, dctx->getPieceHashes().size()); CPPUNIT_ASSERT_EQUAL((size_t)262144, dctx->getPieceLength()); - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA1, - dctx->getChecksumHashAlgo()); + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"), dctx->getChecksumHashAlgo()); CPPUNIT_ASSERT_EQUAL (std::string("4c255b0ed130f5ea880f0aa061c3da0487e251cc"), dctx->getChecksum()); diff --git a/test/MetalinkProcessorTest.cc b/test/MetalinkProcessorTest.cc index 1da48b47..ae3fa496 100644 --- a/test/MetalinkProcessorTest.cc +++ b/test/MetalinkProcessorTest.cc @@ -13,7 +13,7 @@ #include "MetalinkResource.h" #include "MetalinkMetaurl.h" #ifdef ENABLE_MESSAGE_DIGEST -# include "messageDigest.h" +# include "MessageDigest.h" # include "ChunkChecksum.h" # include "Checksum.h" #endif // ENABLE_MESSAGE_DIGEST @@ -95,11 +95,10 @@ void MetalinkProcessorTest::testParseFileV4() CPPUNIT_ASSERT_EQUAL(std::string("0beec7b5ea3f0fdbc95d0dd47f3c5bc275da8a33"), e->checksum->getMessageDigest()); CPPUNIT_ASSERT(!e->checksum.isNull()); - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA1, e->checksum->getAlgo()); + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"), e->checksum->getAlgo()); CPPUNIT_ASSERT(!e->chunkChecksum.isNull()); - if(MessageDigestContext::supports(MessageDigestContext::SHA256)) { - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA256, - e->chunkChecksum->getAlgo()); + if(MessageDigest::supports("sha-256")) { + CPPUNIT_ASSERT_EQUAL(std::string("sha-256"), e->chunkChecksum->getAlgo()); CPPUNIT_ASSERT_EQUAL((size_t)262144, e->chunkChecksum->getChecksumLength()); CPPUNIT_ASSERT_EQUAL((size_t)3, e->chunkChecksum->countChecksum()); CPPUNIT_ASSERT_EQUAL(std::string("0245178074fd042e19b7c3885b360fc21064b30e73f5626c7e3b005d048069c5"), @@ -109,8 +108,7 @@ void MetalinkProcessorTest::testParseFileV4() CPPUNIT_ASSERT_EQUAL(std::string("37290d74ac4d186e3a8e5785d259d2ec04fac91ae28092e7620ec8bc99e830aa"), e->chunkChecksum->getChecksum(2)); } else { - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA1, - e->chunkChecksum->getAlgo()); + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"), e->chunkChecksum->getAlgo()); CPPUNIT_ASSERT_EQUAL((size_t)262144, e->chunkChecksum->getChecksumLength()); CPPUNIT_ASSERT_EQUAL((size_t)3, e->chunkChecksum->countChecksum()); CPPUNIT_ASSERT_EQUAL @@ -511,8 +509,7 @@ void MetalinkProcessorTest::testParseFile() #ifdef ENABLE_MESSAGE_DIGEST CPPUNIT_ASSERT_EQUAL(std::string("a96cf3f0266b91d87d5124cf94326422800b627d"), entry1->checksum->getMessageDigest()); - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA1, - entry1->checksum->getAlgo()); + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"), entry1->checksum->getAlgo()); #endif // ENABLE_MESSAGE_DIGEST CPPUNIT_ASSERT(!entry1->getSignature().isNull()); CPPUNIT_ASSERT_EQUAL(std::string("pgp"), entry1->getSignature()->getType()); @@ -567,8 +564,7 @@ void MetalinkProcessorTest::testParseFile() entry2->chunkChecksum->getChecksum(0)); CPPUNIT_ASSERT_EQUAL(std::string("fecf8bc9a1647505fe16746f94e97a477597dbf3"), entry2->chunkChecksum->getChecksum(1)); - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA1, - entry2->checksum->getAlgo()); + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"), entry2->checksum->getAlgo()); #endif // ENABLE_MESSAGE_DIGEST // See that signature is null CPPUNIT_ASSERT(entry2->getSignature().isNull()); @@ -589,12 +585,10 @@ void MetalinkProcessorTest::testParseFile() SharedHandle<MetalinkEntry> entry4 = *entryItr; CPPUNIT_ASSERT_EQUAL(std::string("UnsupportedVerificationHashTypeIncluded"), entry4->getPath()); #ifdef ENABLE_MESSAGE_DIGEST - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA1, - entry4->checksum->getAlgo()); + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"), entry4->checksum->getAlgo()); CPPUNIT_ASSERT_EQUAL(std::string("4c255b0ed130f5ea880f0aa061c3da0487e251cc"), entry4->checksum->getMessageDigest()); - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA1, - entry4->chunkChecksum->getAlgo()); + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"),entry4->chunkChecksum->getAlgo()); #endif // ENABLE_MESSAGE_DIGEST @@ -903,7 +897,7 @@ void MetalinkProcessorTest::testMultiplePieces() SharedHandle<MetalinkEntry> e = m->getEntries()[0]; SharedHandle<ChunkChecksum> c = e->chunkChecksum; - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA1, c->getAlgo()); + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"), c->getAlgo()); CPPUNIT_ASSERT_EQUAL((size_t)1024, c->getChecksumLength()); } catch(Exception& e) { CPPUNIT_FAIL(e.stackTrace()); @@ -938,7 +932,7 @@ void MetalinkProcessorTest::testBadPieceNo() CPPUNIT_ASSERT(!c.isNull()); CPPUNIT_ASSERT_EQUAL((size_t)1024, c->getChecksumLength()); - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA1, c->getAlgo()); + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"), c->getAlgo()); } catch(Exception& e) { CPPUNIT_FAIL(e.stackTrace()); } @@ -971,7 +965,7 @@ void MetalinkProcessorTest::testBadPieceLength() SharedHandle<ChunkChecksum> c = e->chunkChecksum; CPPUNIT_ASSERT(!c.isNull()); CPPUNIT_ASSERT_EQUAL((size_t)1024, c->getChecksumLength()); - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA1, c->getAlgo()); + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"), c->getAlgo()); } catch(Exception& e) { CPPUNIT_FAIL(e.stackTrace()); } @@ -1004,7 +998,7 @@ void MetalinkProcessorTest::testUnsupportedType_piece() CPPUNIT_ASSERT(!c.isNull()); CPPUNIT_ASSERT_EQUAL((size_t)1024, c->getChecksumLength()); - CPPUNIT_ASSERT_EQUAL(MessageDigestContext::SHA1, c->getAlgo()); + CPPUNIT_ASSERT_EQUAL(std::string("sha-1"), c->getAlgo()); } catch(Exception& e) { CPPUNIT_FAIL(e.stackTrace()); } diff --git a/test/PieceTest.cc b/test/PieceTest.cc index f30b9784..d0cea08a 100644 --- a/test/PieceTest.cc +++ b/test/PieceTest.cc @@ -1,8 +1,7 @@ #include "Piece.h" -#ifdef ENABLE_MESSAGE_DIGEST -# include "messageDigest.h" -#endif // ENABLE_MESSAGE_DIGEST + #include <string> + #include <cppunit/extensions/HelperMacros.h> namespace aria2 { @@ -66,7 +65,7 @@ void PieceTest::testGetCompletedLength() void PieceTest::testUpdateHash() { Piece p(0, 16, 2*1024*1024); - p.setHashAlgo(MessageDigestContext::SHA1); + p.setHashAlgo("sha-1"); std::string spam("SPAM!"); CPPUNIT_ASSERT(p.updateHash diff --git a/test/TestUtil.cc b/test/TestUtil.cc index a8c476eb..493ac80f 100644 --- a/test/TestUtil.cc +++ b/test/TestUtil.cc @@ -13,6 +13,10 @@ #include "StringFormat.h" #include "FatalException.h" #include "Cookie.h" +#include "DefaultDiskWriter.h" +#ifdef ENABLE_MESSAGE_DIGEST +# include "MessageDigestHelper.h" +#endif // ENABLE_MESSAGE_DIGEST namespace aria2 { @@ -71,4 +75,14 @@ Cookie createCookie (name, value, expiryTime, true, domain, hostOnly, path, secure, false, 0); } +#ifdef ENABLE_MESSAGE_DIGEST +std::string fileHexDigest +(const SharedHandle<MessageDigest>& ctx, const std::string& filename) +{ + SharedHandle<DiskWriter> writer(new DefaultDiskWriter(filename)); + writer->openExistingFile(); + return MessageDigestHelper::hexDigest(ctx, writer, 0, writer->size()); +} +#endif // ENABLE_MESSAGE_DIGEST + } // namespace aria2 diff --git a/test/TestUtil.h b/test/TestUtil.h index 3ac0ec9e..1dd010ee 100644 --- a/test/TestUtil.h +++ b/test/TestUtil.h @@ -2,10 +2,13 @@ #include <string> +#include "SharedHandle.h" #include "Cookie.h" namespace aria2 { +class MessageDigest; + void createFile(const std::string& filename, size_t length); std::string readFile(const std::string& path); @@ -39,4 +42,10 @@ Cookie createCookie const std::string& path, bool secure); +#ifdef ENABLE_MESSAGE_DIGEST +// Returns hex digest of contents of file denoted by filename. +std::string fileHexDigest +(const SharedHandle<MessageDigest>& ctx, const std::string& filename); +#endif // ENABLE_MESSAGE_DIGEST + } // namespace aria2 diff --git a/test/UTMetadataDataExtensionMessageTest.cc b/test/UTMetadataDataExtensionMessageTest.cc index d80bfc7f..b8aaca27 100644 --- a/test/UTMetadataDataExtensionMessageTest.cc +++ b/test/UTMetadataDataExtensionMessageTest.cc @@ -13,6 +13,7 @@ #include "MockPieceStorage.h" #include "UTMetadataRequestTracker.h" #include "bittorrent_helper.h" +#include "MessageDigest.h" #include "MessageDigestHelper.h" namespace aria2 { @@ -80,7 +81,7 @@ void UTMetadataDataExtensionMessageTest::testDoReceivedAction() unsigned char infoHash[INFO_HASH_LENGTH]; MessageDigestHelper::digest(infoHash, INFO_HASH_LENGTH, - MessageDigestContext::SHA1, + MessageDigest::sha1(), metadata.data(), metadata.size()); attrs->infoHash = std::string(&infoHash[0], &infoHash[20]); dctx->setAttribute(bittorrent::BITTORRENT, attrs); diff --git a/test/UTMetadataPostDownloadHandlerTest.cc b/test/UTMetadataPostDownloadHandlerTest.cc index 0b5239a9..b1f4641a 100644 --- a/test/UTMetadataPostDownloadHandlerTest.cc +++ b/test/UTMetadataPostDownloadHandlerTest.cc @@ -12,8 +12,10 @@ #include "PieceStorage.h" #include "DiskAdaptor.h" #include "util.h" +#include "MessageDigest.h" #include "MessageDigestHelper.h" #include "prefs.h" +#include "RecoverableException.h" namespace aria2 { @@ -73,7 +75,7 @@ void UTMetadataPostDownloadHandlerTest::testGetNextRequestGroups() "6:pieces60:AAAAAAAAAAAAAAAAAAAABBBBBBBBBBBBBBBBBBBBCCCCCCCCCCCCCCCCCCCCe"; unsigned char infoHash[20]; MessageDigestHelper::digest - (infoHash, sizeof(infoHash), MessageDigestContext::SHA1, + (infoHash, sizeof(infoHash), MessageDigest::sha1(), reinterpret_cast<const unsigned char*>(metadata.data()), metadata.size()); dctx_->getFirstFileEntry()->setLength(metadata.size()); SharedHandle<TorrentAttribute> attrs(new TorrentAttribute()); |
