Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Sebastian Schrader
Kea
Commits
aef276b9
Commit
aef276b9
authored
Dec 10, 2016
by
Francis Dupont
Browse files
[5036] Optional exception display and case sensitive JSON unit tests
parent
b7837f89
Changes
2
Hide whitespace changes
Inline
Side-by-side
src/bin/dhcp6/tests/dhcp6_test_utils.h
View file @
aef276b9
...
...
@@ -656,16 +656,19 @@ parseJSON(const std::string& in)
/// needed. This format is used by most of the tests.
///
/// @param in string to be parsed
/// @param verbose display the exception message when it fails
/// @return ElementPtr structure representing parsed JSON
inline
isc
::
data
::
ConstElementPtr
parseDHCP6
(
const
std
::
string
&
in
)
parseDHCP6
(
const
std
::
string
&
in
,
bool
verbose
=
false
)
{
try
{
isc
::
dhcp
::
Parser6Context
ctx
;
return
(
ctx
.
parseString
(
in
,
isc
::
dhcp
::
Parser6Context
::
SUBPARSER_DHCP6
));
}
catch
(
const
std
::
exception
&
ex
)
{
std
::
cout
<<
"EXCEPTION: "
<<
ex
.
what
()
<<
std
::
endl
;
if
(
verbose
)
{
std
::
cout
<<
"EXCEPTION: "
<<
ex
.
what
()
<<
std
::
endl
;
}
throw
;
}
}
...
...
@@ -675,16 +678,19 @@ parseDHCP6(const std::string& in)
/// This function parses specified text as JSON that defines option definitions.
///
/// @param in string to be parsed
/// @param verbose display the exception message when it fails
/// @return ElementPtr structure representing parsed JSON
inline
isc
::
data
::
ConstElementPtr
parseOPTION_DEF
(
const
std
::
string
&
in
)
parseOPTION_DEF
(
const
std
::
string
&
in
,
bool
verbose
=
false
)
{
try
{
isc
::
dhcp
::
Parser6Context
ctx
;
return
(
ctx
.
parseString
(
in
,
isc
::
dhcp
::
Parser6Context
::
PARSER_OPTION_DEF
));
}
catch
(
const
std
::
exception
&
ex
)
{
std
::
cout
<<
"EXCEPTION: "
<<
ex
.
what
()
<<
std
::
endl
;
if
(
verbose
)
{
std
::
cout
<<
"EXCEPTION: "
<<
ex
.
what
()
<<
std
::
endl
;
}
throw
;
}
}
...
...
src/bin/dhcp6/tests/parser_unittest.cc
View file @
aef276b9
...
...
@@ -326,6 +326,14 @@ TEST(ParserTest, errors) {
Parser6Context
::
PARSER_JSON
,
"Can't open include file /foo/bar"
);
// case sensitivity
testError
(
"{
\"
foo
\"
: True }"
,
Parser6Context
::
PARSER_JSON
,
"<string>:1.10: Invalid character: T"
);
testError
(
"{
\"
foo
\"
: NULL }"
,
Parser6Context
::
PARSER_JSON
,
"<string>:1.10: Invalid character: N"
);
// numbers
testError
(
"123"
,
Parser6Context
::
PARSER_DHCP6
,
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment