added tests for DegestStream / NumberParser / NumberFormatter

This commit is contained in:
Marian Krivos 2012-04-28 09:46:01 +00:00
parent a4931bb9af
commit ae48e7465a
4 changed files with 577 additions and 550 deletions

View File

@ -93,6 +93,15 @@ void DigestStreamTest::testOutputStream2()
} }
void DigestStreamTest::testToFromHex()
{
std::string digest("c3fcd3d76192e4007dfb496cca67e13b");
Poco::DigestEngine::Digest dig = DigestEngine::digestFromHex(digest);
std::string digest2 = DigestEngine::digestToHex(dig);
assert (digest == digest2);
}
void DigestStreamTest::setUp() void DigestStreamTest::setUp()
{ {
} }
@ -107,9 +116,10 @@ CppUnit::Test* DigestStreamTest::suite()
{ {
CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("DigestStreamTest"); CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("DigestStreamTest");
CppUnit_addTest(pSuite, DigestStreamTest, testInputStream); CppUnit_addTest(pSuite, DigestStreamTest, testInputStream);
CppUnit_addTest(pSuite, DigestStreamTest, testOutputStream1); CppUnit_addTest(pSuite, DigestStreamTest, testOutputStream1);
CppUnit_addTest(pSuite, DigestStreamTest, testOutputStream2); CppUnit_addTest(pSuite, DigestStreamTest, testOutputStream2);
CppUnit_addTest(pSuite, DigestStreamTest, testToFromHex);
return pSuite; return pSuite;
} }

View File

@ -46,12 +46,13 @@ public:
DigestStreamTest(const std::string& name); DigestStreamTest(const std::string& name);
~DigestStreamTest(); ~DigestStreamTest();
void testInputStream(); void testInputStream();
void testOutputStream1(); void testOutputStream1();
void testOutputStream2(); void testOutputStream2();
void testToFromHex();
void setUp(); void setUp();
void tearDown(); void tearDown();
static CppUnit::Test* suite(); static CppUnit::Test* suite();

View File

@ -86,9 +86,16 @@ void NumberFormatterTest::testFormat()
assert (NumberFormatter::format((void*) 0x12345678) == "0000000012345678"); assert (NumberFormatter::format((void*) 0x12345678) == "0000000012345678");
} }
assert (NumberFormatter::format(12.25) == "12.25"); assert (NumberFormatter::format(12.25) == "12.25");
assert (NumberFormatter::format(12.25, 4) == "12.2500"); assert (NumberFormatter::format(12.25, 4) == "12.2500");
assert (NumberFormatter::format(12.25, 8, 4) == " 12.2500"); assert (NumberFormatter::format(12.25, 8, 4) == " 12.2500");
assert (NumberFormatter::format(true, NumberFormatter::FMT_TRUE_FALSE) == "true");
assert (NumberFormatter::format(false, NumberFormatter::FMT_TRUE_FALSE) == "false");
assert (NumberFormatter::format(true, NumberFormatter::FMT_YES_NO) == "yes");
assert (NumberFormatter::format(false, NumberFormatter::FMT_YES_NO) == "no");
assert (NumberFormatter::format(true, NumberFormatter::FMT_ON_OFF) == "on");
assert (NumberFormatter::format(false, NumberFormatter::FMT_ON_OFF) == "off");
} }
@ -146,15 +153,15 @@ void NumberFormatterTest::testFormatHex()
void NumberFormatterTest::testFormatFloat() void NumberFormatterTest::testFormatFloat()
{ {
std::string s(NumberFormatter::format(1.0f)); std::string s(NumberFormatter::format(1.0f));
assert (s == "1"); assert (s == "1");
s = NumberFormatter::format(0.1f); s = NumberFormatter::format(0.1f);
assert (s == "0.1"); assert (s == "0.1");
s = NumberFormatter::format(1.0); s = NumberFormatter::format(1.0);
assert (s == "1"); assert (s == "1");
s = NumberFormatter::format(0.1); s = NumberFormatter::format(0.1);
assert (s == "0.1"); assert (s == "0.1");
} }
@ -172,10 +179,10 @@ CppUnit::Test* NumberFormatterTest::suite()
{ {
CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("NumberFormatterTest"); CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("NumberFormatterTest");
CppUnit_addTest(pSuite, NumberFormatterTest, testFormat); CppUnit_addTest(pSuite, NumberFormatterTest, testFormat);
CppUnit_addTest(pSuite, NumberFormatterTest, testFormat0); CppUnit_addTest(pSuite, NumberFormatterTest, testFormat0);
CppUnit_addTest(pSuite, NumberFormatterTest, testFormatHex); CppUnit_addTest(pSuite, NumberFormatterTest, testFormatHex);
CppUnit_addTest(pSuite, NumberFormatterTest, testFormatFloat); CppUnit_addTest(pSuite, NumberFormatterTest, testFormatFloat);
return pSuite; return pSuite;
} }

View File

@ -55,12 +55,19 @@ void NumberParserTest::testParse()
{ {
assert (NumberParser::parse("123") == 123); assert (NumberParser::parse("123") == 123);
assert (NumberParser::parse("-123") == -123); assert (NumberParser::parse("-123") == -123);
assert (NumberParser::parseUnsigned("123") == 123); assert (NumberParser::parseUnsigned("123") == 123);
assert (NumberParser::parseHex("12AB") == 0x12ab); assert (NumberParser::parseHex("12AB") == 0x12ab);
assert (NumberParser::parseBool("0") == false);
assert (NumberParser::parseBool("FALSE") == false);
assert (NumberParser::parseBool("no") == false);
assert (NumberParser::parseBool("1") == true);
assert (NumberParser::parseBool("True") == true);
assert (NumberParser::parseBool("YeS") == true);
#if defined(POCO_HAVE_INT64) #if defined(POCO_HAVE_INT64)
assert (NumberParser::parse64("123") == 123); assert (NumberParser::parse64("123") == 123);
assert (NumberParser::parse64("-123") == -123); assert (NumberParser::parse64("-123") == -123);
assert (NumberParser::parseUnsigned64("123") == 123); assert (NumberParser::parseUnsigned64("123") == 123);
assert (NumberParser::parseHex64("12AB") == 0x12ab); assert (NumberParser::parseHex64("12AB") == 0x12ab);
#endif #endif
@ -70,21 +77,23 @@ void NumberParserTest::testParse()
void NumberParserTest::testParseError() void NumberParserTest::testParseError()
{ {
try try
{ {
NumberParser::parse(""); NumberParser::parse("");
failmsg("must throw SyntaxException"); NumberParser::parseBool("");
} failmsg("must throw SyntaxException");
catch (SyntaxException&) }
catch (SyntaxException&)
{ {
} }
try try
{ {
NumberParser::parse("asd"); NumberParser::parse("asd");
failmsg("must throw SyntaxException"); NumberParser::parseBool("asd");
} failmsg("must throw SyntaxException");
catch (SyntaxException&) }
catch (SyntaxException&)
{ {
} }