From: Thomas Markwalder Date: Thu, 19 Nov 2015 15:21:30 +0000 (-0500) Subject: [4096] Added unit test for an blank client class name X-Git-Tag: trac4097a_base~1^2~3 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ca10116a5d6a453b31d0f31ccf358e0355aee846;p=thirdparty%2Fkea.git [4096] Added unit test for an blank client class name --- diff --git a/src/lib/dhcpsrv/tests/client_class_def_parser_unittest.cc b/src/lib/dhcpsrv/tests/client_class_def_parser_unittest.cc index fd831aaf98..5e95767e4f 100644 --- a/src/lib/dhcpsrv/tests/client_class_def_parser_unittest.cc +++ b/src/lib/dhcpsrv/tests/client_class_def_parser_unittest.cc @@ -370,7 +370,7 @@ TEST_F(ClientClassDefParserTest, noClassName) { std::string cfg_text = "{ \n" - " \"test\": \"vendor-class-identifier == 'MSFT'\", \n" + " \"test\": \"option[123] == 'abc'\", \n" " \"option-data\": [ \n" " { \n" " \"name\": \"domain-name-servers\", \n" @@ -387,6 +387,30 @@ TEST_F(ClientClassDefParserTest, noClassName) { DhcpConfigError); } +// Verifies that a class with a blank name, fails to parse. +TEST_F(ClientClassDefParserTest, blankClassName) { + + std::string cfg_text = + "{ \n" + " \"name\": \"\", \n" + " \"test\": \"option[123] == 'abc'\", \n" + " \"option-data\": [ \n" + " { \n" + " \"name\": \"domain-name-servers\", \n" + " \"code\": 6, \n" + " \"space\": \"dhcp4\", \n" + " \"csv-format\": true, \n" + " \"data\": \"192.0.2.1, 192.0.2.2\" \n" + " } \n" + " ] \n" + "} \n"; + + ClientClassDefPtr cclass; + ASSERT_THROW(cclass = parseClientClassDef(cfg_text, Option::V4), + DhcpConfigError); +} + + // Verifies that a class with an unknown element, fails to parse. TEST_F(ClientClassDefParserTest, unknownElement) { std::string cfg_text =