Browse Source

[4259] Add unit tests to ensure StringParser can parse booleans

    Added checks to ensure that StringParser can handle being given
    a boolean literal (i.e. unquoted true or false)
Thomas Markwalder 9 years ago
parent
commit
849439da6c
1 changed files with 18 additions and 0 deletions
  1. 18 0
      src/lib/dhcpsrv/tests/dhcp_parsers_unittest.cc

+ 18 - 0
src/lib/dhcpsrv/tests/dhcp_parsers_unittest.cc

@@ -144,6 +144,24 @@ TEST_F(DhcpParserTest, stringParserTest) {
     parser.commit();
     parser.commit();
     EXPECT_NO_THROW((actual_value = storage->getParam(name)));
     EXPECT_NO_THROW((actual_value = storage->getParam(name)));
     EXPECT_EQ(test_value, actual_value);
     EXPECT_EQ(test_value, actual_value);
+
+    // Verify that parser with accepts a boolean true element.
+    element = Element::create(true);
+    EXPECT_NO_THROW(parser.build(element));
+
+    // Verify that commit updates storage.
+    parser.commit();
+    EXPECT_NO_THROW((actual_value = storage->getParam(name)));
+    EXPECT_EQ("true", actual_value);
+
+    // Verify that parser with accepts a boolean true element.
+    element = Element::create(false);
+    EXPECT_NO_THROW(parser.build(element));
+
+    // Verify that commit updates storage.
+    parser.commit();
+    EXPECT_NO_THROW((actual_value = storage->getParam(name)));
+    EXPECT_EQ("false", actual_value);
 }
 }
 
 
 /// @brief Check Uint32Parser basic functionality
 /// @brief Check Uint32Parser basic functionality