MessageDigestHelperTest.cc 1.5 KB

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