diff options
author | Remko Tronçon <git@el-tramo.be> | 2009-11-27 19:06:47 (GMT) |
---|---|---|
committer | Remko Tronçon <git@el-tramo.be> | 2009-11-27 19:06:47 (GMT) |
commit | aa09a889108c4d0e3c5888ad98958d8f3e12bd3b (patch) | |
tree | 3c621ae0a6e2150281be182b37e2837b804adcba /Swiften/StringCodecs/UnitTest/MD5Test.cpp | |
parent | c89ef0ffae597ac8c1063732e1d9a2d84703a80c (diff) | |
download | swift-contrib-aa09a889108c4d0e3c5888ad98958d8f3e12bd3b.zip swift-contrib-aa09a889108c4d0e3c5888ad98958d8f3e12bd3b.tar.bz2 |
Added MD5 hashing algorithm.
Moved 'hexifying' of hashes into its own class, such that it can be
shared between all hashes.
Diffstat (limited to 'Swiften/StringCodecs/UnitTest/MD5Test.cpp')
-rw-r--r-- | Swiften/StringCodecs/UnitTest/MD5Test.cpp | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/Swiften/StringCodecs/UnitTest/MD5Test.cpp b/Swiften/StringCodecs/UnitTest/MD5Test.cpp new file mode 100644 index 0000000..cad8754 --- /dev/null +++ b/Swiften/StringCodecs/UnitTest/MD5Test.cpp @@ -0,0 +1,29 @@ +#include <cppunit/extensions/HelperMacros.h> +#include <cppunit/extensions/TestFactoryRegistry.h> + +#include "Swiften/StringCodecs/MD5.h" +#include "Swiften/Base/ByteArray.h" + +using namespace Swift; + +class MD5Test : public CppUnit::TestFixture { + CPPUNIT_TEST_SUITE(MD5Test); + CPPUNIT_TEST(testGetHash_Empty); + CPPUNIT_TEST(testGetHash_Alphabet); + CPPUNIT_TEST_SUITE_END(); + + public: + void testGetHash_Empty() { + ByteArray result(MD5::getHash("")); + + CPPUNIT_ASSERT_EQUAL(ByteArray("\xd4\x1d\x8c\xd9\x8f\x00\xb2\x04\xe9\x80\x09\x98\xec\xf8\x42\x7e", 16), result); + } + + void testGetHash_Alphabet() { + ByteArray result(MD5::getHash("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789")); + + CPPUNIT_ASSERT_EQUAL(ByteArray("\xd1\x74\xab\x98\xd2\x77\xd9\xf5\xa5\x61\x1c\x2c\x9f\x41\x9d\x9f", 16), result); + } +}; + +CPPUNIT_TEST_SUITE_REGISTRATION(MD5Test); |