Niels Lohmann
8014637ad1
✅ added a test for EOF error ( #367 )
2016-11-24 21:53:41 +01:00
Niels Lohmann
4bb41d065b
🐛 parsing erroneous files yields an exception ( #366 )
2016-11-23 16:57:01 +01:00
Niels
edc81f3bc1
💚 restored test call
2016-11-16 22:49:25 +01:00
Niels
d362a07239
💚 moved sample.json to standard test suite to run it with Valgrind
2016-11-16 22:49:16 +01:00
Niels
a9744f3937
💚 is sample.json killing AppVeyor?
2016-11-16 22:08:21 +01:00
Niels
0c9ab9427f
💚 added verbose message to check AppVeyor build
2016-11-16 22:02:38 +01:00
Niels
05e916717b
Merge branch 'develop' into feature/messagepack
2016-11-16 19:16:36 +01:00
Niels
693bfe439b
Merge branch 'develop' into feature/emplace
2016-11-16 19:16:16 +01:00
Niels
0d72767b3e
⬆️ updated to Catch v1.5.8
2016-11-16 19:15:54 +01:00
Niels
1be73b903e
proposal for emplace/emplace_back ( #349 )
2016-11-11 19:29:14 +01:00
Niels
d1e73ce954
hid an expensive test case
2016-11-11 17:31:37 +01:00
Niels
543745a10e
starting to integrate MessagePack ( #358 )
2016-11-11 17:11:13 +01:00
Niels
700977d73e
version bump
2016-11-02 20:52:15 +01:00
Niels
3716a2fbe8
Merge branch 'develop' into feature/jsontestsuite
2016-11-02 17:03:12 +01:00
Niels
737d43724f
Merge branch 'feature/issue329' into develop
2016-11-02 16:59:23 +01:00
Niels
59c8343851
cleanup
2016-11-02 15:44:46 +01:00
Niels
8f70525374
more test coverage
2016-10-30 17:46:00 +01:00
Niels
7adccde714
improved coverage and updated README
2016-10-30 17:10:11 +01:00
Niels
8d1e65f297
evaluated i-tests ( #344 )
2016-10-30 16:07:17 +01:00
Niels
7b4e6cf705
added implementation-specific tests ( #344 )
2016-10-30 12:08:29 +01:00
Niels
a8136c578a
fixed BOM handling #344
2016-10-29 21:08:30 +02:00
Niels
b820bb3b1f
fixed a lot of unicode errors ( #344 )
...
BOMs currently yield an error.
2016-10-29 19:35:17 +02:00
Niels
b03bbe724d
added n test cases ( #344 )
2016-10-29 14:02:33 +02:00
Niels
42ea4fb751
fixed a bug for short input files ( #344 )
...
For input files with less than 5 bytes, the parser had a bug so that
refilling the input buffer led to erasing it.
2016-10-29 13:32:36 +02:00
Niels
2fdba9de19
added "y" cases
2016-10-26 23:45:11 +02:00
Niels
a2808322c6
add test files from https://github.com/nst/JSONTestSuite
2016-10-26 18:57:56 +02:00
Niels
606098f45d
release 2.0.6
2016-10-15 16:47:45 +02:00
Niels
d91067220f
added missing overflow check for #329
2016-10-13 21:00:48 +02:00
Niels
470197bd0b
improve test coverage
2016-10-10 21:58:31 +02:00
Niels
2fa8ea0f74
started fixing #323
2016-10-08 14:27:28 +02:00
Vasil Dimov
b5128b1610
Fix usage examples' comments for std::multiset
2016-10-04 18:53:44 +03:00
Niels
d6005e59a5
added fuzzing results
2016-10-02 11:23:47 +02:00
Niels
3d104f1d43
version bump
2016-09-14 23:06:39 +02:00
Niels
6bbcdc1ec5
fixes #310
2016-09-14 22:48:12 +02:00
Niels
7b6cba23f3
results for #307
2016-09-12 21:23:12 +02:00
Niels
768d66560e
version bump
2016-09-11 23:36:59 +02:00
Niels
f922426ec3
fixed #304
2016-09-11 22:40:51 +02:00
Niels
2daab5a4c2
fixed #306
2016-09-11 22:30:08 +02:00
Niels
42be2edd4c
fixed test coverage
2016-09-01 00:29:42 +02:00
Niels
df9fd6237e
release 2.0.3
2016-08-31 21:27:23 +02:00
Niels
58cbf4b3ef
added another test case
2016-08-31 18:23:46 +02:00
Niels
ae7aaed4ac
Merge branch 'develop' into feature/iterator_range_parsing
2016-08-31 18:07:18 +02:00
Niels
a485aa8d27
cleanup and improvement of branch coverage
2016-08-30 23:44:15 +02:00
Thomas Braun
e0ff1a837c
unit-constructor1.cpp: Fix floating point truncation warning
2016-08-25 00:24:33 +02:00
Niels
1d66ab9f7a
fixed lexer issue which required null byte at the end of contiguous storage containers #290
2016-08-23 22:38:05 +02:00
Niels
cda84ba323
Merge branch 'develop' into feature/iterator_range_parsing
2016-08-21 23:15:27 +02:00
Niels
1e896eb91e
improved code coverage
2016-08-21 22:38:56 +02:00
Niels
aa7f5ad8b1
minor changes
2016-08-21 21:48:15 +02:00
Niels
585a39a235
improved branch coverage
2016-08-21 14:39:54 +02:00
Niels
b4571360df
more on #290
2016-08-21 12:35:40 +02:00
Niels
eef8059003
allowing parsing from contiguous containers
2016-08-20 20:29:33 +02:00
Niels
628a5eae50
reset build file
2016-08-17 22:33:26 +02:00
Niels
f40f81c87e
forgot a semicolon
2016-08-17 21:44:53 +02:00
Niels
c0922c7aac
/Wall
2016-08-17 21:43:28 +02:00
Niels
35f22e8596
checking MSVC compiler flags
2016-08-17 21:38:19 +02:00
Niels
a78eaa27b5
fixed unit tests
2016-08-17 21:31:59 +02:00
Niels
5e67f7af01
added a first version of a parser for #290
2016-08-15 22:44:14 +02:00
Niels
dfc2c1abe5
added assertion for contiguous memory
2016-08-14 23:38:20 +02:00
Niels
92ee1d56eb
cleanup
2016-08-14 21:59:41 +02:00
Niels
4871e39415
spell fix
2016-08-14 17:52:21 +02:00
Niels
7b42c973bd
fix for MSVC
2016-08-14 17:34:58 +02:00
Niels
c9e5d56c9c
fix for MSVC
2016-08-14 17:30:53 +02:00
Niels
01386b3977
cleanup
2016-08-14 17:23:15 +02:00
Niels
b76f5506d7
added a parser for continguous containers
2016-08-14 14:18:25 +02:00
Niels
46174879ef
clean up
2016-08-10 22:41:09 +02:00
Niels
d02e67d4a9
coveralls with lcov
2016-08-10 20:56:26 +02:00
Niels
b1c1fe9d39
added Clang 3.8
2016-08-10 16:22:53 +02:00
Niels
38f562af2a
reorganization into smaller test units
2016-08-04 22:51:08 +02:00
Niels
ff592c6d50
adjusted warning flags
2016-08-04 22:05:05 +02:00
Niels
91b6e223d9
adjusted capacity test cases
2016-08-04 22:04:55 +02:00
Niels
d80329034e
split test suite in one file per test case
2016-08-04 21:55:47 +02:00
Niels
be5cf0e3ba
forgot to pass CPPFLAGS
2016-08-04 07:33:44 +02:00
Niels
5541e6f6f9
split unit tests
2016-08-04 07:24:46 +02:00
Niels
a05df038cd
prepared release
2016-07-31 13:37:04 +02:00
Niels
148fed1e63
minor change
2016-07-25 18:06:59 +02:00
Niels
a01ec918ac
minor changes
2016-07-25 16:21:15 +02:00
Niels
369671f028
added more Unicode tests
2016-07-25 16:05:58 +02:00
Niels
84673b7de3
added test case from issue #283
2016-07-24 11:08:39 +02:00
Niels
e2aa2d2189
improved test coverage
2016-07-24 11:01:47 +02:00
Niels
75dbbc55cf
started to implement #283
2016-07-23 09:59:09 +02:00
Niels
ddfe86cc49
fixed a bug that was found in the discussion of #274
2016-07-22 21:40:58 +02:00
Niels
4e7501e59a
minor changes
...
- fixed a bug that did not discard strings with control characters
between 0x10 and 0x1f
- added termination proofs for two important loops
- made get_ref() constexpr
2016-07-22 15:34:45 +02:00
Niels
1286d35767
make sure precision is reset on output streams during serialization
2016-07-20 20:07:45 +02:00
Niels
28644bada0
removed std::out output from test cases
2016-07-01 17:25:56 +02:00
Niels
d2475f9010
bumped version number
2016-06-28 21:44:03 +02:00
Niels
7214243d89
reset locale (for #272 )
2016-06-28 19:18:23 +02:00
Niels
420659f187
addressing #272
2016-06-28 10:42:17 +02:00
Niels
0767290c26
off-by-one error in the documentation
2016-06-24 08:06:41 +02:00
Niels
04a80a8f60
Merge branch 'develop' into feature/undo-number-roundtrip
2016-06-23 05:57:41 +02:00
Niels
7cff6c8771
Merge branch 'develop' into feature/issue269
...
# Conflicts:
# README.md
2016-06-23 00:04:55 +02:00
Niels
6f76c9237b
overworked ChangeLog and README
2016-06-22 22:20:55 +02:00
Niels
ecf84dddb1
test case for #269
2016-06-22 20:40:15 +02:00
Niels
90b46868b5
Merge branch 'develop' into feature/undo-number-roundtrip
2016-06-19 18:27:07 +02:00
Niels
8c48ef1f73
updated to Catch v1.5.6
2016-06-19 18:25:43 +02:00
Niels
b47fdf88ee
Merge branch 'develop' into feature/undo-number-roundtrip
2016-06-19 17:59:53 +02:00
Niels
4ff27b207e
fixed two typos
2016-06-19 17:56:58 +02:00
Niels
ad7a419a03
removed roundtripping of floats ( #230 )
2016-06-19 17:13:13 +02:00
Robert Marki
639d63217e
Define CMake/CTest tests
...
Instead of copying the test executable and the JSON files used by
the tests at install time, define CMake/CTest tests for running
the json_unit executable from any build directory with the project's
source directory as its working directory.
- call enable_testing in the main lists file to allow the definition
of tests
- remove install commands from the test directory's lists file
- define two tests
- json_unit_default for running the default tests by executing
json_unit without any arguments
- json_unit_all for running all the tests by executing json_unit
with the "*" argument
- update the AppVeyor configuration file to use the new testing method
2016-05-18 11:53:49 +02:00
Chris Kitching
527a69bb64
Install the test binary and test data. Fixes #241
...
The resulting install tree, when tests are enabled, looks like this:
```
.
├── cmake
│ ├── nlohmann_jsonConfig.cmake
│ ├── nlohmann_jsonConfigVersion.cmake
│ └── nlohmann_jsonTargets.cmake
├── include
│ └── nlohmann
│ └── json.hpp
└── test
├── bin
│ └── json_unit
└── data
├── json_nlohmann_tests
│ ├── all_unicode.json
│ └── bom.json
├── json.org
│ ├── 1.json
│ ├── ...
├── json_roundtrip
│ ├── roundtrip01.json
│ ├── roundtrip02.json
│ └── ...
├── json_tests
│ ├── fail10.json
│ └── ...
└── json_testsuite
└── sample.json
```
It has the property that you can invoke the test binary from the
root of the install tree and the tests work correctly (you no
longer depend on the test binary being run inside the source
tree).
If tests are disabled, the entire `test/` subtree is omitted.
Notice how that yields exactly what you want for using this
library in other projects.
I do not believe I need to update travis due to this change, as the
evil Makefile continues to do in-tree builds. I expect I'll find
out soon enough.
2016-05-11 01:43:42 +01:00
Chris Kitching
af76508fe7
Introduce structure to the test/ directory
...
This introduces a clear separation between test data and test
binaries. Test data is moved into test/data, and the test binaries
move into test/src. A new CMake script specific to building the
tests is introduced in /test to slightly clean up the toplevel
one.
As well as tidying things up, this makes the next step trivial...
2016-05-11 01:30:08 +01:00
Chris Kitching
bf7b6d15c7
Unset execute bit on sample.json
2016-05-11 01:10:29 +01:00
Niels
9ecf83f630
working on #235
2016-05-08 20:28:20 +02:00
Niels
fadf286653
added test case for std::bad_alloc
2016-05-08 14:35:32 +02:00
Niels
85a30813c8
removed unnecessary code (numbers must not begin with "+")
2016-05-07 20:22:58 +02:00
Niels
c04275966f
improved test coverage
2016-05-07 18:33:43 +02:00
Niels
f4ecceab19
cleanup
2016-04-30 00:12:19 +02:00
Niels
1d3b4dd158
added test cases
2016-04-30 00:03:47 +02:00
Niels
5e0bf75d60
cleanup, test, and diff
2016-04-25 23:17:04 +02:00
Niels
fb54e212b6
clean up and added tests
2016-04-24 19:03:33 +02:00
Niels
09e9f6dcd4
implemented "move"
2016-04-24 17:43:27 +02:00
Niels
855cf2307b
extended "add" to cope with arrays
2016-04-24 16:51:06 +02:00
Niels
397ada22d3
implemented remove
2016-04-20 16:52:00 +02:00
Niels
fa03cf0c63
replace and copy
2016-04-20 15:41:33 +02:00
Niels
70fc5835cb
started implementing JSON Patch (RFC 6902)
2016-04-18 22:41:36 +02:00
Niels
1dee40a969
fixed test case
2016-04-17 22:34:39 +02:00
Niels
6268287940
improved documentation and test coverage
2016-04-17 22:08:21 +02:00
Niels
7034ae2486
improved test coverage
2016-04-17 19:12:12 +02:00
Niels
0835eb293f
improved RFC compliance and code coverage
2016-04-17 18:54:54 +02:00
Niels
40e899a819
cleanup and documentation
2016-04-17 17:39:35 +02:00
Niels
f834965b44
implemented deflatten function
2016-04-16 20:45:40 +02:00
Niels
007359675b
added a flatten function
2016-04-16 16:39:20 +02:00
Niels
3401954f5b
cleaned up API
2016-04-16 14:02:14 +02:00
Niels
3a3e064287
Merge branch 'develop' into feature/json-pointer
2016-04-16 12:19:31 +02:00
Niels
76a5a776eb
cleanup after #234
2016-04-16 12:19:10 +02:00
Niels
94af8abdff
overworked reference token parsing
2016-04-13 23:23:54 +02:00
Niels
2cb925c186
adding support for escaped reference tokens
2016-04-13 17:41:19 +02:00
Robert Marki
2197f5f0a6
Make the indirection and dereference operators of iterator const
...
fixes #233
2016-04-13 13:49:53 +02:00
Niels
726051e9b7
very first draft of a JSON pointer API
2016-04-11 23:17:03 +02:00
Niels
a744c62696
made tests independent of "C" locale
2016-04-05 22:28:27 +02:00
Niels
31bccc83b9
fixed locale problems
2016-04-05 21:55:51 +02:00
Niels
9c233be567
merged #201
2016-04-03 14:08:38 +02:00
Niels
2f63e5fb45
added copyright information to files to make release more self-contained
2016-03-25 17:41:36 +01:00
Niels
f965c4c35b
improved code coverage
2016-02-14 22:56:51 +01:00
Niels
3a92559fa9
cleanup
2016-02-14 22:24:45 +01:00
Niels
7f4736b546
added serialization to fuzz testing
2016-02-14 21:36:56 +01:00
Niels
a3eecdc383
updated Catch to v1.3.4
2016-02-14 21:36:43 +01:00
Niels
153e105164
cleanup after #207
2016-02-14 18:38:29 +01:00
Michael Macnair
9e500b49ac
Add support for afl-fuzz testing
...
"make fuzz" creates a simple executable that de-serialises stdin
and re-serialises to stdout.
"make fuzz_testcases" extracts the smaller json test cases into
a testcases directory.
The library can then be fuzzed as follows:
CC=afl-clang-fast make fuzz
make fuzz_testcases
mkdir out
afl-fuzz -i testcases -o out ./fuzz
2016-02-12 09:35:08 +00:00
Niels
8b1a777d36
reverted change wrt. Erasable concept
2016-02-05 22:37:28 +01:00
Niels
2ff2e10660
checking Erasable concept
2016-02-05 22:30:37 +01:00
Niels
2c720b26ab
added a constructor from an input stream
2016-02-05 19:24:42 +01:00
Niels
104c4b5286
improve code coverage
2016-01-31 15:04:38 +01:00
Niels
22127a4b85
moved documentation to index markdown file
2016-01-30 22:05:01 +01:00
Trevor Welsby
561accb068
Fixed issue #199
2016-01-30 12:41:12 +10:00
Niels
707732a53e
clean up after #193
2016-01-26 19:50:49 +01:00
Niels
e46cc6327f
Merge pull request #193 from twelsby/issue178
...
Issue #178 - Extending support to full uint64_t/int64_t range and unsigned type (updated)
2016-01-26 19:40:16 +01:00
Trevor Welsby
a4a88b1b7d
Issue #195 - update Travis to Trusty due to gcc/clang strtod() bug
2016-01-26 08:36:18 +10:00
Trevor Welsby
281492c581
Merge upstream commits and resolve conflicts
2016-01-25 02:42:20 +10:00
Niels
54a4139157
cleanup after #191
2016-01-24 17:33:46 +01:00
Trevor Welsby
4620960b72
Disable problematic test for GCC/clang, remove debug dump from unit.cpp
2016-01-25 02:22:46 +10:00