MessageDigestHelperTest.cc 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. #include "MessageDigestHelper.h"
  2. #include <cppunit/extensions/HelperMacros.h>
  3. #include "util.h"
  4. #include "DefaultDiskWriter.h"
  5. #include "messageDigest.h"
  6. namespace aria2 {
  7. class MessageDigestHelperTest:public CppUnit::TestFixture {
  8. CPPUNIT_TEST_SUITE(MessageDigestHelperTest);
  9. CPPUNIT_TEST(testDigestDiskWriter);
  10. CPPUNIT_TEST(testDigestFilename);
  11. CPPUNIT_TEST(testDigestData);
  12. CPPUNIT_TEST_SUITE_END();
  13. private:
  14. public:
  15. void setUp() {
  16. }
  17. void testDigestDiskWriter();
  18. void testDigestFilename();
  19. void testDigestData();
  20. };
  21. CPPUNIT_TEST_SUITE_REGISTRATION( MessageDigestHelperTest );
  22. void MessageDigestHelperTest::testDigestDiskWriter() {
  23. SharedHandle<DefaultDiskWriter> diskio
  24. (new DefaultDiskWriter("4096chunk.txt"));
  25. diskio->openExistingFile();
  26. CPPUNIT_ASSERT_EQUAL(std::string("608cabc0f2fa18c260cafd974516865c772363d5"),
  27. MessageDigestHelper::digest
  28. (MessageDigestContext::SHA1, diskio, 0, 4096));
  29. CPPUNIT_ASSERT_EQUAL(std::string("7a4a9ae537ebbbb826b1060e704490ad0f365ead"),
  30. MessageDigestHelper::digest
  31. (MessageDigestContext::SHA1, diskio, 5, 100));
  32. }
  33. void MessageDigestHelperTest::testDigestFilename()
  34. {
  35. CPPUNIT_ASSERT_EQUAL(std::string("608cabc0f2fa18c260cafd974516865c772363d5"),
  36. MessageDigestHelper::digest
  37. (MessageDigestContext::SHA1, "4096chunk.txt"));
  38. }
  39. void MessageDigestHelperTest::testDigestData()
  40. {
  41. std::string data = "aria2";
  42. CPPUNIT_ASSERT_EQUAL(std::string("f36003f22b462ffa184390533c500d8989e9f681"),
  43. MessageDigestHelper::digest
  44. (MessageDigestContext::SHA1, data.c_str(), data.size()));
  45. }
  46. } // namespace aria2