From be0d01be9d6e98c59c6484e3bd691c4354142c4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Remko=20Tron=C3=A7on?= Date: Wed, 30 Sep 2009 22:26:00 +0200 Subject: Added SHA-1 and Base64 tests for empty input data. diff --git a/Swiften/StringCodecs/UnitTest/Base64Test.cpp b/Swiften/StringCodecs/UnitTest/Base64Test.cpp index fb05c90..0217758 100644 --- a/Swiften/StringCodecs/UnitTest/Base64Test.cpp +++ b/Swiften/StringCodecs/UnitTest/Base64Test.cpp @@ -10,7 +10,9 @@ class Base64Test : public CppUnit::TestFixture CPPUNIT_TEST_SUITE(Base64Test); CPPUNIT_TEST(testEncode); CPPUNIT_TEST(testEncode_NonAscii); + CPPUNIT_TEST(testEncode_NoData); CPPUNIT_TEST(testDecode); + CPPUNIT_TEST(testDecode_NoData); CPPUNIT_TEST_SUITE_END(); public: @@ -26,10 +28,20 @@ class Base64Test : public CppUnit::TestFixture CPPUNIT_ASSERT_EQUAL(String("QgayPKawpkPSDYmwT/WM94uAlu0="), result); } + void testEncode_NoData() { + String result(Base64::encode(ByteArray())); + CPPUNIT_ASSERT_EQUAL(String(""), result); + } + void testDecode() { ByteArray result(Base64::decode("QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVphYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ejEyMzQ1Njc4OTA=")); CPPUNIT_ASSERT_EQUAL(ByteArray("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890"), result); } + + void testDecode_NoData() { + ByteArray result(Base64::decode("")); + CPPUNIT_ASSERT_EQUAL(ByteArray(), result); + } }; CPPUNIT_TEST_SUITE_REGISTRATION(Base64Test); diff --git a/Swiften/StringCodecs/UnitTest/SHA1Test.cpp b/Swiften/StringCodecs/UnitTest/SHA1Test.cpp index e556429..849dd6d 100644 --- a/Swiften/StringCodecs/UnitTest/SHA1Test.cpp +++ b/Swiften/StringCodecs/UnitTest/SHA1Test.cpp @@ -11,6 +11,7 @@ class SHA1Test : public CppUnit::TestFixture CPPUNIT_TEST(testGetBinaryHash); CPPUNIT_TEST(testGetBinaryHash_Twice); CPPUNIT_TEST(testGetHexHash); + CPPUNIT_TEST(testGetHexHash_NoData); CPPUNIT_TEST_SUITE_END(); public: @@ -34,6 +35,12 @@ class SHA1Test : public CppUnit::TestFixture String result(SHA1::getHexHash("client/pc//Exodus 0.9.1