Skip to content

Commit 850148f

Browse files
committed
Add SHA1 test for Poco::Crypto::DigestEngine
1 parent 1950377 commit 850148f

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

Crypto/testsuite/src/DigestEngineTest.cpp

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,22 @@ void DigestEngineTest::testMD5()
7878
assert (DigestEngine::digestToHex(engine.digest()) == "57edf4a22be3c955ac49da2e2107b67a");
7979
}
8080

81+
void DigestEngineTest::testSHA1()
82+
{
83+
DigestEngine engine("SHA1");
84+
85+
// test vectors from FIPS 180-1
86+
87+
engine.update("abc");
88+
assert (DigestEngine::digestToHex(engine.digest()) == "a9993e364706816aba3e25717850c26c9cd0d89d");
89+
90+
engine.update("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq");
91+
assert (DigestEngine::digestToHex(engine.digest()) == "84983e441c3bd26ebaae4aa1f95129e5e54670f1");
92+
93+
for (int i = 0; i < 1000000; ++i)
94+
engine.update('a');
95+
assert (DigestEngine::digestToHex(engine.digest()) == "34aa973cd4c4daa4f61eeb2bdbad27316534016f");
96+
}
8197

8298
void DigestEngineTest::setUp()
8399
{
@@ -94,6 +110,7 @@ CppUnit::Test* DigestEngineTest::suite()
94110
CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("DigestEngineTest");
95111

96112
CppUnit_addTest(pSuite, DigestEngineTest, testMD5);
113+
CppUnit_addTest(pSuite, DigestEngineTest, testSHA1);
97114

98115
return pSuite;
99116
}

Crypto/testsuite/src/DigestEngineTest.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ class DigestEngineTest: public CppUnit::TestCase
4747
~DigestEngineTest();
4848

4949
void testMD5();
50+
void testSHA1();
5051

5152
void setUp();
5253
void tearDown();

0 commit comments

Comments
 (0)