Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
J
json
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Libraries
json
Commits
d183d34b
Unverified
Commit
d183d34b
authored
7 years ago
by
Niels Lohmann
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
added another test case
parent
d2d65bb2
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
83 additions
and
0 deletions
+83
-0
test/src/unit-class_parser.cpp
test/src/unit-class_parser.cpp
+83
-0
No files found.
test/src/unit-class_parser.cpp
View file @
d183d34b
...
...
@@ -1415,6 +1415,89 @@ TEST_CASE("parser class")
});
CHECK
(
j_empty_array
==
json
());
}
SECTION
(
"skip in GeoJSON"
)
{
auto
geojsonExample
=
R"(
{ "type": "FeatureCollection",
"features": [
{ "type": "Feature",
"geometry": {"type": "Point", "coordinates": [102.0, 0.5]},
"properties": {"prop0": "value0"}
},
{ "type": "Feature",
"geometry": {
"type": "LineString",
"coordinates": [
[102.0, 0.0], [103.0, 1.0], [104.0, 0.0], [105.0, 1.0]
]
},
"properties": {
"prop0": "value0",
"prop1": 0.0
}
},
{ "type": "Feature",
"geometry": {
"type": "Polygon",
"coordinates": [
[ [100.0, 0.0], [101.0, 0.0], [101.0, 1.0],
[100.0, 1.0], [100.0, 0.0] ]
]
},
"properties": {
"prop0": "value0",
"prop1": {"this": "that"}
}
}
]
})"
;
json
::
parser_callback_t
cb
=
[
&
](
int
depth
,
json
::
parse_event_t
event
,
json
&
parsed
)
{
// skip uninteresting events
if
(
event
==
json
::
parse_event_t
::
value
and
!
parsed
.
is_primitive
())
{
return
false
;
}
switch
(
event
)
{
case
json
:
:
parse_event_t
::
key
:
{
return
true
;
}
case
json
:
:
parse_event_t
::
value
:
{
return
false
;
}
case
json
:
:
parse_event_t
::
object_start
:
{
return
true
;
}
case
json
:
:
parse_event_t
::
object_end
:
{
return
false
;
}
case
json
:
:
parse_event_t
::
array_start
:
{
return
true
;
}
case
json
:
:
parse_event_t
::
array_end
:
{
return
false
;
}
default:
{
return
true
;
}
}
};
auto
j
=
json
::
parse
(
geojsonExample
,
cb
,
true
);
CHECK
(
j
==
json
());
}
}
SECTION
(
"constructing from contiguous containers"
)
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a 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