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()
{
}
@ -107,9 +116,10 @@ CppUnit::Test* DigestStreamTest::suite()
{
CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("DigestStreamTest");
CppUnit_addTest(pSuite, DigestStreamTest, testInputStream);
CppUnit_addTest(pSuite, DigestStreamTest, testOutputStream1);
CppUnit_addTest(pSuite, DigestStreamTest, testOutputStream2);
CppUnit_addTest(pSuite, DigestStreamTest, testInputStream);
CppUnit_addTest(pSuite, DigestStreamTest, testOutputStream1);
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();
void testInputStream();
void testOutputStream1();
void testOutputStream2();
void testInputStream();
void testOutputStream1();
void testOutputStream2();
void testToFromHex();
void setUp();
void tearDown();
void setUp();
void tearDown();
static CppUnit::Test* suite();

View File

@ -86,9 +86,16 @@ void NumberFormatterTest::testFormat()
assert (NumberFormatter::format((void*) 0x12345678) == "0000000012345678");
}
assert (NumberFormatter::format(12.25) == "12.25");
assert (NumberFormatter::format(12.25, 4) == "12.2500");
assert (NumberFormatter::format(12.25, 8, 4) == " 12.2500");
assert (NumberFormatter::format(12.25) == "12.25");
assert (NumberFormatter::format(12.25, 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()
{
std::string s(NumberFormatter::format(1.0f));
assert (s == "1");
s = NumberFormatter::format(0.1f);
assert (s == "0.1");
std::string s(NumberFormatter::format(1.0f));
assert (s == "1");
s = NumberFormatter::format(0.1f);
assert (s == "0.1");
s = NumberFormatter::format(1.0);
assert (s == "1");
s = NumberFormatter::format(0.1);
assert (s == "0.1");
s = NumberFormatter::format(1.0);
assert (s == "1");
s = NumberFormatter::format(0.1);
assert (s == "0.1");
}
@ -172,10 +179,10 @@ CppUnit::Test* NumberFormatterTest::suite()
{
CppUnit::TestSuite* pSuite = new CppUnit::TestSuite("NumberFormatterTest");
CppUnit_addTest(pSuite, NumberFormatterTest, testFormat);
CppUnit_addTest(pSuite, NumberFormatterTest, testFormat0);
CppUnit_addTest(pSuite, NumberFormatterTest, testFormatHex);
CppUnit_addTest(pSuite, NumberFormatterTest, testFormatFloat);
CppUnit_addTest(pSuite, NumberFormatterTest, testFormat);
CppUnit_addTest(pSuite, NumberFormatterTest, testFormat0);
CppUnit_addTest(pSuite, NumberFormatterTest, testFormatHex);
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::parseUnsigned("123") == 123);
assert (NumberParser::parseHex("12AB") == 0x12ab);
assert (NumberParser::parseUnsigned("123") == 123);
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)
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::parseHex64("12AB") == 0x12ab);
#endif
@ -70,21 +77,23 @@ void NumberParserTest::testParse()
void NumberParserTest::testParseError()
{
try
{
NumberParser::parse("");
failmsg("must throw SyntaxException");
}
catch (SyntaxException&)
try
{
NumberParser::parse("");
NumberParser::parseBool("");
failmsg("must throw SyntaxException");
}
catch (SyntaxException&)
{
}
try
{
NumberParser::parse("asd");
failmsg("must throw SyntaxException");
}
catch (SyntaxException&)
try
{
NumberParser::parse("asd");
NumberParser::parseBool("asd");
failmsg("must throw SyntaxException");
}
catch (SyntaxException&)
{
}