From 2069538e089696eead64169895c935ff4bc577ba Mon Sep 17 00:00:00 2001 From: Andreas Stöckel Date: Fri, 5 Dec 2014 17:53:46 +0100 Subject: implemented parsing integers and doubles --- test/core/variant/ReaderTest.cpp | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'test/core/variant/ReaderTest.cpp') diff --git a/test/core/variant/ReaderTest.cpp b/test/core/variant/ReaderTest.cpp index 760760b..c33f80d 100644 --- a/test/core/variant/ReaderTest.cpp +++ b/test/core/variant/ReaderTest.cpp @@ -98,6 +98,39 @@ TEST(Reader, parseUnescapedString) } } +TEST(Reader, parseInteger) +{ + TerminalLogger logger(std::cerr, true); + + { + BufferedCharReader reader("42"); + auto res = Reader::parseInteger(reader, logger); + ASSERT_TRUE(res.first); + ASSERT_EQ(42, res.second); + } + + { + BufferedCharReader reader("-42"); + auto res = Reader::parseInteger(reader, logger); + ASSERT_TRUE(res.first); + ASSERT_EQ(-42, res.second); + } + + { + BufferedCharReader reader("0x42"); + auto res = Reader::parseInteger(reader, logger); + ASSERT_TRUE(res.first); + ASSERT_EQ(0x42, res.second); + } + +/* { + BufferedCharReader reader("0Xaffe"); + auto res = Reader::parseInteger(reader, logger); + ASSERT_TRUE(res.first); + ASSERT_EQ(0xAFFE, res.second); + }*/ +} + TEST(Reader, parseGeneric) { TerminalLogger logger(std::cerr, true); -- cgit v1.2.3