summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorAndreas Stöckel <astoecke@techfak.uni-bielefeld.de>2014-12-05 17:53:46 +0100
committerAndreas Stöckel <andreas@somweyr.de>2014-12-05 17:53:46 +0100
commit2069538e089696eead64169895c935ff4bc577ba (patch)
tree2da913db918ff62a3626f81383bec79abd7ab976 /test
parent2dd08daa56c05d6c720a30fd9ec14a2471f81c5f (diff)
implemented parsing integers and doubles
Diffstat (limited to 'test')
-rw-r--r--test/core/variant/ReaderTest.cpp33
1 files changed, 33 insertions, 0 deletions
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);