Théo DELRIEU
be6b417c87
tweak SFINAE checks for internal types (see commit body)
...
only check for public types (iterators, json_pointer)
for private ones (m_array.iterator, primitive_iterator) simply double
parentheses on relevant Catch checks
2017-01-21 16:14:22 +01:00
Théo DELRIEU
c847e0eea2
replace constructor by from/to_json: array_t
...
- tweaked a bit how `get<container<json>>` is handled
- added a from_json overload for forward list
2017-01-21 16:14:22 +01:00
Théo DELRIEU
6d427acdde
replace constructor by from/to_json: unscoped enum types
...
this also means that one can do: j.get<unscoped_enum>();
2017-01-21 16:14:22 +01:00
Théo DELRIEU
a32de3b528
replace constructor by from/to_json: number_unsigned_t
...
This commit forces a design change in custom JSONSerializer, which might
be temporary
2017-01-21 16:14:21 +01:00
Niels Lohmann
be1d3de49b
💄 moved changes to re2c file and ran make pretty
2017-01-21 16:14:21 +01:00
Théo DELRIEU
aa2679a8ce
fix tests, avoid instantiating JSONSerializer when it will not be used
2017-01-21 16:14:21 +01:00
Théo DELRIEU
d5ee5830ed
add more tests
2017-01-21 16:14:21 +01:00
Théo DELRIEU
1c21c87e6f
use u8 prefix in unit-udt.cpp
2017-01-21 16:14:21 +01:00
Théo DELRIEU
7e750ec1fa
fix msvc, by doubling parenthesis on catch assertions
2017-01-21 16:14:21 +01:00
Théo DELRIEU
3d405c6883
add support for enum classes
2017-01-21 16:14:21 +01:00
Théo DELRIEU
8e43d476d3
add more tests to unit-udt.cpp
2017-01-21 16:14:21 +01:00
Théo DELRIEU
1eafac7220
remove explicit keyword on udt-constructor
2017-01-21 16:14:21 +01:00
Théo Delrieu
c0c72b5b62
rewrite unit-udt: basic usage
2017-01-21 16:14:21 +01:00
Théo DELRIEU
60e6f822fa
add support for non-default-constructible udt
2017-01-21 16:14:21 +01:00
Théo DELRIEU
e5999c6c82
add a few tests
2017-01-21 16:14:21 +01:00
Théo DELRIEU
88819449c2
remove constraints on JSONSerializer instances, constrain correctly new methods
2017-01-21 16:14:21 +01:00
Théo DELRIEU
23bd2bce35
add is_compatible_* traits
2017-01-21 16:14:21 +01:00
Théo DELRIEU
178441cdfd
add basic test for custom serializer
2017-01-21 16:14:21 +01:00
Théo DELRIEU
2bc685f6b4
to_json and from_json takes both two arguments now
...
the first is the basic_json type, the second the user-defined type
2017-01-21 16:14:21 +01:00
Théo DELRIEU
837b81d672
renamed unit-constructor3.cpp to unit-udt.cpp
2017-01-21 16:14:21 +01:00
Théo DELRIEU
7dc268ef42
add first version for alternate implementation
2017-01-21 16:14:21 +01:00
Théo DELRIEU
4cdc61e493
move most SFINAE trickery in to/from_json_fn
2017-01-21 16:14:21 +01:00
Théo DELRIEU
fe628b585b
anonymous namespace renamed to detail
2017-01-21 16:14:21 +01:00
Théo Delrieu
b443edf49e
add first version support for user-defined types
2017-01-21 16:14:20 +01:00
Niels Lohmann
1ab26ab367
✨ option to switch off exceptions
2017-01-16 22:11:07 +01:00
Niels Lohmann
a7f3938391
✅ added Big List of Naughty Strings
2017-01-16 20:03:50 +01:00
Niels Lohmann
3a9ccfac22
🚧 cleanup
2017-01-12 21:35:27 +01:00
Niels Lohmann
98ad3c3ac1
Merge branch 'develop' into feature/release_information
2017-01-12 21:30:08 +01:00
Niels Lohmann
0f03543861
⬆️ upgraded to Catch 1.6.0
2017-01-11 22:23:02 +01:00
Niels Lohmann
e9bbf5aaba
🐛 forgot to remove a test case
2017-01-08 09:31:40 +01:00
Niels Lohmann
dd45ba6f89
🚧 renamed version()
to meta()
2017-01-08 09:19:44 +01:00
Alex Astashyn
c236b596c9
Merge upstream/develop into feature/locale_independent_str_to_num
2017-01-04 19:20:16 -05:00
Alex Astashyn
949061079a
Merge upstream/develop into feature/locale_independent_num_to_str
2017-01-04 18:55:19 -05:00
Niels Lohmann
e1b89dd1d6
Merge branch 'develop' into feature/release_information
2017-01-04 20:06:23 +01:00
Niels Lohmann
cdd3b5a68c
🚑 fix for #416
2017-01-03 23:52:01 +01:00
Niels Lohmann
f8d640b185
👷 better support for OSS-Fuzz
2017-01-03 22:35:31 +01:00
Niels Lohmann
245a69d554
💄 ran clang-tidy
2017-01-03 21:33:23 +01:00
Niels Lohmann
ea4d71ee21
Merge branch 'develop' into feature/release_information
2017-01-02 17:26:00 +01:00
Niels Lohmann
8b46eb8ec0
📄 it's 2017 already
2017-01-02 09:40:00 +01:00
Niels Lohmann
60b3703c62
🔖 version bump to 2.0.10
2017-01-02 09:35:57 +01:00
Niels Lohmann
d173517212
💄 clean up
2017-01-02 09:21:26 +01:00
Niels Lohmann
a3063c2419
🚧 added target to build all fuzzers
2017-01-01 21:51:36 +01:00
Niels Lohmann
09b91406c6
🔀 merge pull request #410 from Daniel599/feature/clang_sanitize
...
Feature/clang sanitize
2017-01-01 19:45:11 +01:00
Niels Lohmann
cf9bf2d913
🚑 fix for #411 and #412
2017-01-01 15:28:01 +01:00
Daniel Cohen
ff3221a375
#394 fixed memory leak in unit-allocator, found by clang's fsanitize
2016-12-30 15:21:25 +02:00
Niels Lohmann
328eb55dc4
🚧 started working on #397
2016-12-30 14:02:51 +01:00
Niels Lohmann
d7029c37aa
✅ improved test coverage
2016-12-30 13:04:33 +01:00
Niels Lohmann
f0edab2363
🚑 fix for #408
2016-12-29 17:00:02 +01:00
Niels Lohmann
383a29a924
🚑 fix for #407
2016-12-29 16:14:15 +01:00
Niels Lohmann
871cebaf84
🚑 fix for #405
2016-12-29 15:39:16 +01:00
Niels Lohmann
1dd99d04b6
Merge branch 'develop' into feature/fuzzer
2016-12-28 12:19:12 +01:00
Niels Lohmann
888f5b9f60
🚚 renamed test files to allow windows build
2016-12-28 12:18:48 +01:00
Niels Lohmann
55be721615
Merge branch 'develop' into feature/fuzzer
2016-12-28 12:11:51 +01:00
Niels Lohmann
acb7e0558d
🚑 fixed bugs detected by AFL-Fuzz
2016-12-28 12:09:15 +01:00
Niels Lohmann
1399abc583
🚧 added MessagePack fuzz target
2016-12-25 16:18:56 +01:00
Niels Lohmann
6de9d4035a
🐛 fixed AFL driver to also read binary data
2016-12-25 16:06:56 +01:00
Niels Lohmann
33be4e7f1f
🚧 cleanup
2016-12-22 12:08:36 +01:00
Niels Lohmann
a084e90f39
🔨 split AFL test in driver and test file
2016-12-22 11:09:26 +01:00
Niels Lohmann
048330b14b
⬆️ Catch v1.5.9
2016-12-22 09:37:15 +01:00
Niels Lohmann
22a6b956e8
📄 added license for Catch
2016-12-22 09:36:34 +01:00
Niels Lohmann
ad241a2260
🔨 moved third-party code into separate folder
2016-12-22 09:35:53 +01:00
Niels Lohmann
6e8791912f
🚧 added fuzzer from OSS-Fuzz
2016-12-22 09:09:40 +01:00
Niels Lohmann
69ed19e483
➕ added libFuzzer
2016-12-22 09:08:50 +01:00
Niels Lohmann
303e873ae8
🔖 bumped version to 2.0.9
2016-12-16 20:45:46 +01:00
Niels Lohmann
2f94c30bad
✅ added a regression test for #380 / #390
2016-12-13 21:46:07 +01:00
Alex Astashyn
6fba52b6da
Merged upstream/develop into feature/locale_independent_str_to_num
2016-12-12 20:27:15 -05:00
Alex Astashyn
65b9b0c429
Disabling snprintf pre-check, since can't get locale-specific behavior to manifest in AppVeyor
2016-12-12 19:50:21 -05:00
Alex Astashyn
0f8de48ddb
Disabling strtod pre-check, since can't get locale-specific behavior to manifest in AppVeyor
2016-12-12 19:48:14 -05:00
Niels Lohmann
79fa8b2f41
🚑 fix to address #389
2016-12-12 23:19:43 +01:00
Niels Lohmann
447e01427d
🚨 fixed some warnings
2016-12-12 18:21:17 +01:00
Niels Lohmann
dc6fc3e079
📝 clean up and added documentation for #358
2016-12-11 13:36:08 +01:00
Niels Lohmann
fdce38fa79
✅ fixed a test case
2016-12-11 00:39:26 +01:00
Niels Lohmann
e8c903294f
✅ more test cases for CBOR and msgpack
2016-12-11 00:05:29 +01:00
Niels Lohmann
41673e8fed
🐛 fixed CBOR code and added test cases
2016-12-10 23:12:57 +01:00
Niels Lohmann
d99c230f51
✨ implemented indefinite-length CBOR types ( #387 )
2016-12-10 18:32:56 +01:00
Alex Astashyn
01930357f7
Tweaking unit test, as digits grouping is failing to be invoked in CI
2016-12-08 22:39:38 -05:00
Alex Astashyn
1c029b97c0
Still trying to invoke locale-specific behavior in CI
2016-12-08 22:13:05 -05:00
Alex Astashyn
50f0484ad5
Added unit test for issue #378
2016-12-07 20:23:25 -05:00
Alex Astashyn
27d9740ad6
Tweaks to unit-test for issue #379
2016-12-07 19:55:07 -05:00
Niels Lohmann
81a4272444
✅ more test cases for CBOR
2016-12-07 23:14:37 +01:00
Niels Lohmann
3a0f5398a2
✅ more CBOR test cases
2016-12-07 22:50:10 +01:00
Niels Lohmann
b7e0c12966
✨ CBOR support for half-precision floats
2016-12-07 21:43:59 +01:00
Niels Lohmann
17c9b17a7e
✅ test cases from RFC 7049 #384
2016-12-07 21:25:22 +01:00
Niels Lohmann
de289ea336
💚 another approach to the AppVeyor error
2016-12-07 19:15:05 +01:00
Niels Lohmann
81c43dca6a
💚 more AppVeyor fixes
2016-12-07 16:51:15 +01:00
Niels Lohmann
3f14a09e73
💚 another try to fix the AppVeyor build
2016-12-07 16:43:55 +01:00
Niels Lohmann
74571d531c
💚 still fixing the AppVeyor error
2016-12-07 16:34:02 +01:00
Niels Lohmann
2c7946f2bc
💚 hopefully fixed an error on AppVeyor
2016-12-07 16:21:22 +01:00
Niels Lohmann
474da6b28f
✅  more msgpack test cases
2016-12-07 13:47:08 +01:00
Niels Lohmann
be973e52bb
✅ more msgpack test cases
2016-12-07 09:19:46 +01:00
Niels Lohmann
a1693bfe48
Merge branch 'develop' into feature/messagepack
2016-12-07 08:39:57 +01:00
Alex Astashyn
6774457733
Trying to coerce setlocale to make snprintf use commas as delimiter some more
2016-12-06 22:59:12 -05:00
Alex Astashyn
d2e9ce270a
Trying to coerce setlocale to make snprintf use commas as delimiter; the behavior appears to be compiler/platform-specific
2016-12-06 22:18:20 -05:00
Alex Astashyn
6e8da7d8c4
Added unit-test for issue #379 (locale-independent str-to-num)
2016-12-06 19:45:48 -05:00
Alex Astashyn
2197856395
Fixed suffixing .0 and modified the unit tests accordingly
2016-12-04 01:38:23 -05:00
Alex Astashyn
6b78b5c2be
Added strtonum for locale-independent number parsing
2016-12-03 19:05:09 -05:00
Niels Lohmann
4adb8a81bf
📝 version bump
2016-12-02 18:39:35 +01:00
Niels Lohmann
ba3c5e1a25
✅ more test cases
2016-11-29 09:49:05 +01:00
Niels Lohmann
c46b4ea990
✅ more test cases
2016-11-29 08:37:27 +01:00
Niels Lohmann
ee0f23fdc6
🚧 bug fixes and more tests
2016-11-28 23:20:03 +01:00
Niels Lohmann
aeb4f87a27
✨ added return value for emplace ( #349 )
2016-11-28 18:33:46 +01:00
Niels Lohmann
6ecff31b7f
Merge branch 'develop' into feature/emplace
2016-11-28 18:00:10 +01:00
Niels Lohmann
bc238124ee
🚧 further simplifications
2016-11-27 21:42:21 +01:00
Niels Lohmann
4c232fe12b
👷 added precondition for individual tests
2016-11-27 19:11:58 +01:00
Niels Lohmann
56843eb7ba
Merge branch 'feature/individual_tests' into feature/messagepack
2016-11-27 18:28:23 +01:00
Niels Lohmann
93589e630c
✅ CBOR roundtrip tests
2016-11-27 17:47:56 +01:00
Niels Lohmann
e1f98fbfc0
🚧 splitting tests into several binaries
2016-11-27 16:19:26 +01:00
Niels Lohmann
eef408e5fb
✅ tests for CBOR
2016-11-27 00:09:24 +01:00
Niels Lohmann
87e088990b
Merge branch 'develop' into feature/messagepack
2016-11-26 18:17:18 +01:00
Niels Lohmann
1ed510c232
Merge branch 'develop' into feature/filenotfound
2016-11-25 17:39:24 +01:00
Niels Lohmann
c39c36e6ad
💄 fixed indentation
2016-11-24 22:05:29 +01:00
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