Commit graph

341 commits

Author SHA1 Message Date
Niels
cd04a7d3e9 fix for #133
added value() function to get object value at given key or a default
value if key does not exist
2015-12-15 08:38:54 +01:00
Niels
258f04c561 fixed #154 (no more warnings for incomplete switches) 2015-12-14 16:32:37 +01:00
Niels
a70a7a8001 fixed #135: operator[] now only works on nonconst JSON objects 2015-12-13 11:26:55 +01:00
Niels
9da8770f3a ignore UTF-8 byte order mark (fixes #152) 2015-12-07 22:27:53 +01:00
Robert Marki
ec7a1d8347 Fix character skipping after a surrogate pair
In a string the first character following a surrogate pair is skipped by the
lexer, but the rest of the string is parsed as usual.
2015-11-13 13:13:46 +01:00
Niels
746c1a7142 cleanup 2015-10-17 12:51:59 +02:00
dariomt
4b8a822f33 Merge branch 'get_ref' 2015-10-16 16:42:03 +02:00
dariomt
04cc7d5a05 doh! disable test correctly only for MSVC 2015-10-16 16:36:34 +02:00
dariomt
bd2783f45c Added get_ref()
Same as get_ptr() but for references.
If the type is incompatible it throws (get_ptr() returns null).
Implemented in terms of get_ptr().
2015-10-16 15:23:57 +02:00
dariomt
9d45aafc2c disabled "CopyAssignable" test for MSVC in Debug mode, see #125
STL iterators used by json::iterator don't pass this test in Debug mode.
The test does pass in Release mode, so I felt the best thing to do was selectively disable that test.
2015-10-07 18:31:08 +02:00
Niels
b58a93b8dd merged #111 2015-08-14 14:45:13 +02:00
Niels
fadccc34eb fixed iterator_wrapper 2015-08-13 10:08:55 +02:00
Niels
66ec58639b removed failing tests 2015-08-06 23:02:52 +02:00
Niels
b0eb34394c added test cases for #83 2015-08-06 22:36:08 +02:00
Niels
c910853304 fixed build 2015-08-02 21:49:42 +02:00
Niels
b00e627c30 fixed build 2015-08-02 21:47:11 +02:00
Niels
9355dce063 fixed build 2015-08-02 21:40:25 +02:00
Niels
e64dc532ab fixed build 2015-08-02 21:35:07 +02:00
Niels
b5a05e1121 add a test for the iterator_wrapper 2015-08-02 21:27:02 +02:00
Niels
359cf7993f closed #75
minor changes, but the core idea remains the same
2015-07-26 18:41:58 +02:00
Niels
5993ff9976 updated catch 2015-07-26 10:41:38 +02:00
Niels
5084159048 added changes from #105: MSVC fixes
- additionally, switch off optimization flags to maybe allow build to
complete on AppVeyor
2015-07-16 18:45:19 +02:00
Niels
1c8d5dc211 added another insert function 2015-07-12 22:47:08 +02:00
Niels
092bf39f53 added test case 2015-07-12 20:40:46 +02:00
Niels
186aefb8f2 added first insert functions 2015-07-12 18:28:23 +02:00
Niels
b2efd50a03 more documentation 2015-07-12 17:08:51 +02:00
Niels
19d550c044 new implementation for (const_)reverse_iterator to cope with issue #93 2015-07-07 23:31:43 +02:00
Niels
12d174d424 fixed #100 2015-07-06 23:21:54 +02:00
Niels
2bc5d893c8 refactored generic iterator into a new class primitive_iterator_t 2015-07-05 22:22:15 +02:00
Niels
82a6995306 fixed #101 2015-07-01 23:08:54 +02:00
Niels
abd741708d more tests 2015-06-30 00:12:18 +02:00
Niels
3f6b10733b addressed static analysis warnings #94 2015-06-28 14:02:47 +02:00
Niels
c58c5aa8c9 fixed #97
- added functions is_structured() and is_primitive()
- updated documentation
- updated test cases
2015-06-27 18:43:11 +02:00
Niels
3ffedea5c4 minor changes 2015-06-25 00:40:16 +02:00
Niels
6e6dd5f45d added test cases for the last uncovered lines 2015-06-24 15:46:50 +02:00
Niels
40312fb07b worked on #91
- implemented `get_ptr` function to return pointer to value member
- overworked `get` function to support pointer types
- added test cases
- added documentation (see
http://nlohmann.github.io/json/classnlohmann_1_1basic__json.html) with
examples
2015-06-24 15:16:32 +02:00
Niels
457572184c more documentation
In this commit, also the semantics for values skipped via the parser
callback has changed. Now, the top-level value is returned as “null”
instead of “discarded”.
2015-06-24 12:15:51 +02:00
Niels
bd8150c58e updated Catch 2015-06-20 15:47:26 +02:00
Niels
64c467e940 fix warnings possible loss of data (from #88) 2015-06-20 14:15:15 +02:00
Niels
51edad3962 fixed #89 without breaking #71 2015-06-15 19:45:25 +02:00
Niels
8e9a711996 closes #90 2015-06-15 16:37:49 +02:00
Niels
1375162562 exclude Unicode tests from Valgrind to avoid timeout 2015-06-15 05:46:12 +02:00
Niels
2e9a13bd88 added extensive Unicode tests 2015-06-14 23:17:49 +02:00
Niels
6fb829062c some maintenance
- unified used exception types
- removed any camel case names
2015-06-14 19:35:20 +02:00
Niels
bc55e496de test suite is not portable :-( 2015-06-13 13:01:10 +02:00
Niels
bd0cb65b7a fixed more float parsing cases 2015-06-13 12:42:18 +02:00
Niels
29512ae989 added test case for #82 2015-06-04 20:07:33 +02:00
Niels
9dbb4402fb improved performance for dump() 2015-06-03 23:34:10 +02:00
Niels
e2035df957 added unit test for issue #76 2015-05-30 16:47:21 +02:00
Niels
5ed80d308d some parsing performance improvements 2015-05-09 22:49:21 +02:00
Niels
abb8653115 more test cases 2015-05-09 16:58:06 +02:00
Niels
03634cacbc cleanup 2015-05-09 15:38:58 +02:00
Niels
9cdd278f45 overworked code for pull request #71 2015-05-09 15:29:20 +02:00
Niels
2b4e461702 fixed string definition 2015-05-09 15:09:52 +02:00
Niels
1f381d496d overworked coverage 2015-05-09 14:54:33 +02:00
Niels
bb142d6cae added test cases 2015-05-09 14:37:22 +02:00
Niels
869035a6c9 added compliance test cases 2015-05-09 13:56:51 +02:00
Niels
9f9d293bad valgrind still makes problems 2015-05-06 21:32:41 +02:00
Niels
bef256600c added test cases 2015-05-06 20:46:04 +02:00
Niels
2cfc93fc76 overflows are handled wrong by Valgrind 2015-05-06 20:21:06 +02:00
Niels
17609f244d fixed #70 2015-05-06 19:52:12 +02:00
Niels
2b825760b5 removed failing test case 2015-05-03 21:37:14 +02:00
Niels
07dd3af848 another try 2015-05-03 21:28:57 +02:00
Niels
370929ac08 overworked test case 2015-05-03 21:10:22 +02:00
Niels
c458bf18e6 more test cases 2015-05-03 20:59:11 +02:00
Niels
106705ed73 more tests 2015-05-03 20:42:24 +02:00
Niels
10bbb77491 test case for filter function 2015-05-03 20:18:16 +02:00
Niels
1143094e4c testing the callback function 2015-05-03 20:07:31 +02:00
Niels
093b97efc4 more tests 2015-05-03 19:55:45 +02:00
Niels
f66e603686 more test cases 2015-05-03 18:59:58 +02:00
Niels
ab1ff9de53 added more test cases 2015-05-03 18:27:43 +02:00
Niels
84561d8866 improved test case coverage 2015-05-03 18:19:12 +02:00
Niels
fc58a73523 fix #60 (double escaping) 2015-04-24 22:06:57 +02:00
Daniel Kopecek
ad6ad4ae1e Fix compilation of json_unit with GCC 5
Addressing:
```
+ make json_unit
g++ -std=c++11  -Wall -Wextra -pedantic -Weffc++ -Wcast-align -Wcast-qual -Wctor-dtor-privacy -Wdisabled-optimization -Wformat=2 -Winit-self -Wmissing-declarations -Wmissing-include-dirs -Wold-style-cast -Woverloaded-virtual -Wredundant-decls -Wshadow -Wsign-conversion -Wsign-promo -Wstrict-overflow=5 -Wswitch -Wundef -Wno-unused -Wnon-virtual-dtor -Wreorder -Wdeprecated -Wfloat-equal  -I src -I test -Dprivate=public test/unit.cpp  -o json_unit
In file included from test/catch.hpp:65:0,
                 from test/unit.cpp:11:
/usr/include/c++/5.0.0/sstream:300:7: error: 'struct std::__cxx11::basic_stringbuf<_CharT, _Traits, _Alloc>::__xfer_bufptrs' redeclared with different access
       struct __xfer_bufptrs
```
2015-04-14 16:02:49 +02:00
Niels
4c55ada0f7 another test case 2015-04-12 18:33:38 +02:00
Niels
6ddb115072 more coverage 2015-04-12 18:12:29 +02:00
Niels
f03c6ce458 added missing test cases 2015-04-12 16:57:51 +02:00
Niels
139ef0e750 implemented front() and back() 2015-04-12 14:14:00 +02:00
Niels
ade49f8b2a constructor for an integer range 2015-04-12 13:15:26 +02:00
Niels
b801adca76 started to implement sequence container 2015-04-12 12:02:30 +02:00
Niels
a3210ee2a9 increase test coverage 2015-04-11 15:42:54 +02:00
Niels
6dceab583c implemented issue #57: erase with iterators 2015-04-11 15:30:19 +02:00
Niels
84195daf28 added erase function for arrays 2015-04-09 18:55:57 +02:00
Niels
9ea3dd9b60 another test case 2015-04-08 23:16:35 +02:00
Niels
9e8e11339d improved test case coverage 2015-04-08 22:58:35 +02:00
Niels
1bdb6acb1f overworked type conversion 2015-04-08 22:23:40 +02:00
Niels
5e89cb0acb implemented key()/value() for reverse iterators 2015-03-26 17:06:33 +01:00
Niels
47ea1c10d4 key/value function for iterators (#46)
Currently only support iterator and const_iterator. reverse_iterator
and const_reverse_iterator to be implemented soon.
2015-03-24 19:08:03 +01:00
Niels
6fc52f3302 fixed #47 (added erase function to remove key form object) 2015-03-24 16:50:55 +01:00
Niels
a382a93a8e Merge pull request #38 from wtsi-hgi/feature/small-float-serialization
Feature/small float serialization
2015-03-23 20:15:50 +01:00
Niels
f2957dc3bf fixed #45 (added count function for keys in objects) 2015-03-22 19:07:43 +01:00
Joshua C. Randall
ef3ad895ae Adds (failing) test for small float serialisation 2015-02-28 15:53:48 +00:00
Niels
63c70fa07e minor changes 2015-02-24 23:19:19 +01:00
Niels
d524e23204 overworked iterators 2015-02-22 17:52:27 +01:00
Niels
bc2e3a798d a more forgiving array behavior 2015-02-21 13:24:07 +01:00
Niels
c8c49dae5d fixed coverage 2015-02-18 22:43:25 +01:00
Niels
afd02eee44 fixed [] operator; added README 2015-02-18 22:28:56 +01:00
Niels
ca981270a0 added another test case 2015-02-17 00:36:29 +01:00
Niels
9e7941b6ba more type adjustments 2015-02-17 00:22:12 +01:00
Niels
e2dff46d14 further type adjustments 2015-02-16 23:34:37 +01:00
Niels
5ca84052a7 removed unused code and fixed includes 2015-02-16 22:47:30 +01:00
Niels
b1be1b45ee minor change 2015-02-15 18:43:17 +01:00
Niels
f1f72403cd some unicode magic 2015-02-15 16:56:54 +01:00
Niels
3e885c8328 added missing test case 2015-02-15 15:51:11 +01:00
Niels
af568b9b27 test cases for new features 2015-02-15 15:45:00 +01:00
Niels
2fc82358ce clean up 2015-02-15 13:35:51 +01:00
Niels
b21bf95620 fixed test case coverage 2015-02-15 11:53:24 +01:00
Niels
bb558d8e6f added Unicode support 2015-02-15 11:44:49 +01:00
Niels
6ef3cb51a4 some reorganization 2015-02-14 17:34:06 +01:00
Niels
cc4a8319a1 reverse iterators 2015-02-14 16:47:14 +01:00
Niels
36e36bf84a two more test cases for numbers 2015-02-13 20:27:27 +01:00
Niels
3391e69248 six more test cases for numbers 2015-02-13 20:16:53 +01:00
Niels
e346011876 more test cases for numbers 2015-02-13 20:02:36 +01:00
Niels
c864ea2199 systematic test case for \uxxxx sequences 2015-02-13 18:57:28 +01:00
Niels
334b7f24ea more systematic test cases 2015-02-13 18:18:58 +01:00
Niels
40a0773e43 more test cases 2015-02-13 17:42:14 +01:00
Niels
4361c4d03f more test cases 2015-02-12 22:54:42 +01:00
Niels
583d20a3b1 more test cases 2015-02-11 22:42:49 +01:00
Niels
89a1b0247b fixed a major bug in the parser 2015-02-11 17:24:14 +01:00
Niels
3f8dc632e2 test cases for iterator classes 2015-02-11 15:29:41 +01:00
Niels
53c9564c51 bug fix and test cases 2015-02-11 14:58:52 +01:00
Niels
4d23c49601 another test case 2015-02-11 13:25:04 +01:00
Niels
7b7a54aca5 fixed a bug 2015-02-11 13:15:22 +01:00
Niels
032bcf6493 more test cases (unexpected ends) 2015-02-11 12:53:47 +01:00
Niels
1d177f82bd more test cases (0e1) 2015-02-11 12:36:30 +01:00
Niels
cb96e30f25 try to understand re2c 2015-02-11 12:21:46 +01:00
Niels
c1bf002522 more test cases (objects, floats) 2015-02-11 11:57:36 +01:00
Niels
3f46fe7a08 more test cases 2015-02-11 11:47:00 +01:00
Niels
f1bd206994 number test cases 2015-02-11 11:36:45 +01:00
Niels
463c38df60 fix test case 2015-02-11 10:57:17 +01:00
Niels
4b9bd96ab1 re-added old (failing) test cases 2015-02-11 10:27:41 +01:00
Niels
c816fd12a0 cleanup 2015-02-11 10:16:43 +01:00
Niels
5d280143b7 fixes 2015-02-11 09:41:23 +01:00
Niels
8a4e127a57 + moved lexer to class 2015-02-11 09:10:28 +01:00
Niels
e845cd1db8 still errors... 2015-02-10 23:55:44 +01:00
Niels
a201bc981d more test cases 2015-02-10 23:45:18 +01:00
Niels
f6f7fcc88c another test case 2015-02-10 23:28:25 +01:00
Niels
0433e71fc3 rename member variables; add whitespace tests 2015-02-10 23:20:30 +01:00
Niels
1aebb6e6ed removing failing (?) test cases 2015-02-10 22:48:16 +01:00
Niels
1bbde4597b more test cases 2015-02-10 22:09:21 +01:00
Niels
963ec13b4a testing the parser 2015-02-10 20:52:39 +01:00
Niels
3589837071 more test cases 2015-02-10 20:28:16 +01:00
Niels
8c6bb04d10 added width feature / more test cases 2015-02-10 19:50:26 +01:00
Niels
4cd341d4db more unit tests 2015-02-10 18:51:09 +01:00
Niels
29a8d43d5a fixed tests for copy assignment 2015-02-10 17:40:47 +01:00
Niels
d760ff5142 tests for comparison operators 2015-02-10 17:10:39 +01:00
Niels
2ec0c79e0f test cases and clean up 2015-02-09 21:10:19 +01:00
Niels
0cfd0f5d68 added test cases and fixed some warnings 2015-02-09 20:21:26 +01:00
Niels
0df642ded0 more test cases 2015-02-09 19:49:09 +01:00
Niels
e53e84e1cc more test cases 2015-02-09 18:45:32 +01:00