156 Commits

Author SHA1 Message Date
Milo Yip
4bd240abee Implementing custom strtod, fail on some cases [ci skip] 2014-09-12 23:03:20 +08:00
Milo Yip
359ebc78c0 Extract conversion code to strtod.h [ci skip] 2014-09-10 23:36:09 +08:00
miloyip
774a4aa2b2 Fix VC2010 which don't have std::isnan() et al. 2014-09-10 09:28:52 +08:00
miloyip
add0d9c8f9 Compute error statistics of normal precision 2014-09-05 22:18:40 +08:00
miloyip
c4a657d430 Fix ParseNumber_Integer test 2014-09-05 20:06:03 +08:00
miloyip
a71f2e60ff Optimize ParseNumber() 2014-09-05 19:51:20 +08:00
Milo Yip
881c91d696 Merge master and implement kParseFullPrecision 2014-09-05 13:22:56 +08:00
Kosta
25f4892aa1 removed unused argument names 2014-09-04 15:56:21 +02:00
Kosta
8b2faff981 enhance IterativeParsingReaderHandler to check for Key() events 2014-09-04 15:51:09 +02:00
Kosta
23b3d24355 add Key() to IterativeParsingReaderHandler in readertest.cpp` 2014-09-04 15:24:52 +02:00
miloyip
b0436911a8 Check "fast path cases in disguise" in strtod 2014-09-03 14:45:37 +08:00
miloyip
818f6f1f2e Add random tests for ParseNumber 2014-09-03 13:27:43 +08:00
Milo Yip
bc9d7866be Merge pull request #128 from pah/feature/cxx11-move
Initial C++11 move support
2014-09-03 09:37:35 +08:00
Milo Yip
15d70d6a7b Merge pull request #127 from pah/feature/value-different-allocators
GenericValue: accept values with different allocators for read-only access
2014-09-03 09:37:15 +08:00
miloyip
0580d42d11 Fallback strtod() when not able to do fast-path
This shall generate best possible precision (if strtod() is correctly
implemented). Need more unit tests and performance tests. May add an
option for accepting precision error. Otherwise LUT in Pow10() can be
reduced.
2014-09-03 01:02:38 +08:00
Kosta
08e81097eb final fix for the unit test case... 2014-09-01 12:54:50 +02:00
Kosta
ba05ea52cf use rapidjson::Value::SizeType as the type for storing and comparing the string length 2014-09-01 12:52:36 +02:00
Kosta
609997565c unit test simplification for short string optimization 2014-09-01 12:46:04 +02:00
Kosta
88debcf02e typo fixed for the unit test implementation 2014-09-01 12:40:28 +02:00
Kosta
056d0dafe4 add unit test for testing edge cases of the short string optimization 2014-09-01 12:34:43 +02:00
Philipp A. Hartmann
47c32eee6b valuetest: add test for Uint64 comparisons 2014-08-31 19:01:16 +02:00
Philipp A. Hartmann
36031b1b6f valuetest: add tests for rvalue references, reenable erase/remove pattern 2014-08-31 17:32:31 +02:00
Philipp A. Hartmann
a9d2b75179 valuetest: avoid underscores in GoogleTest tests
See https://code.google.com/p/googletest/wiki/FAQ#Why_should_not_test_case_names_and_test_names_contain_underscore
2014-08-31 17:32:31 +02:00
Philipp A. Hartmann
c1c9ba7c59 always define RAPIDJSON_HAS_STDSTRING (default: 0) 2014-08-31 17:32:31 +02:00
Philipp A. Hartmann
a2a0d16167 unittest.h: simplify AssertException
Some compilers warn about the missing initialisation of the std::exception
base class of the AssertException helper.  The simplest solution is to
inherit from std::logic_error instead, which provides all of the required
functionality already.
2014-08-31 11:08:33 +02:00
Philipp A. Hartmann
ffed1d67c1 valuetest: more testing of MemberCount 2014-08-31 11:01:05 +02:00
Philipp A. Hartmann
c597505761 valuetest: test member operations with different allocators 2014-08-31 11:01:05 +02:00
Philipp A. Hartmann
a40dcb9525 valuetest: always test comparisons with different allocators 2014-08-31 11:01:05 +02:00
Milo Yip
ab8416e1e6 Merge pull request #125 from pah/fixes/113
Fix comparison operator ambiguities between Value/Document
2014-08-31 07:31:45 +08:00
Philipp A. Hartmann
d63a40a05d valuetest: extended value comparison tests
Prepare equalto_operator tests to test comparisons between
 * GenericValue and GenericDocument
 * GenericValue with different SourceAllocator types

Both combinations currently fail due to ambiguities with the
templated operators on several compilers.
2014-08-30 12:39:39 +02:00
miloyip
a46d152218 Merge branch 'master' into issue120floatprecision 2014-08-28 23:05:27 +08:00
miloyip
d8a51bf2a1 Add test case 2014-08-28 23:03:06 +08:00
Milo Yip
1fafc38ee2 Merge pull request #122 from miloyip/issue114tmpnam
Replace tmpname() by mkstemp() on non-MSVC compilers
2014-08-29 00:01:12 +09:00
miloyip
6f4c83ad30 Replace tmpname() by mkstemp() on non-MSVC compilers 2014-08-28 22:19:56 +08:00
Milo Yip
284dcf3dc5 Change MemberEmpty() to ObjectEmpty() 2014-08-28 20:25:41 +08:00
Milo Yip
dc834c9c03 Add Value::MemberCount(), MemberEmpty(), RemoveAllMembers() 2014-08-27 23:14:17 +08:00
Philipp A. Hartmann
889f3fa9c0 valuetest: add tests for member iterator conversions/relations 2014-08-21 10:47:00 +02:00
Philipp A. Hartmann
2e0b8730a1 add tests for RAPIDJSON_HAS_STDSTRING 2014-08-20 07:07:55 +02:00
Milo Yip
d6513e251c Fix a gcc compilation error 2014-08-17 18:55:36 +08:00
Milo Yip
941aa93f45 Separate Document's value and stack allocator.
Use CrtAllocator for stack.
ShrinkToFit stack after parsing.
2014-08-17 18:33:47 +08:00
Milo Yip
3714019819 Add ShrinkToFit() to StringBuffer and MemoryBuffer 2014-08-17 18:32:08 +08:00
Milo Yip
143bb83e74 Merge pull request #101 from pah/feature/rfc7159
Move to RFC7159 (closes #90)
2014-08-12 00:10:53 +08:00
Philipp A. Hartmann
6863033652 readertest.cpp: remove remaining use of private functions 2014-08-11 17:27:38 +02:00
Philipp A. Hartmann
453eda5f94 tabs to 4 spaces (following 0dbcc1cf) 2014-08-11 17:22:11 +02:00
Philipp A. Hartmann
d84c051564 jsoncheckertest: add checks for iterative parser as well 2014-08-11 17:15:07 +02:00
Philipp A. Hartmann
834109557d readertest.cpp: use CRTP to activate "ADD_FAILURE()" calls in handlers 2014-08-11 17:15:07 +02:00
Philipp A. Hartmann
e29a4521b1 readertest.cpp: use top-level Parse functions, instead of internal ones
With the allowance of arbitrary root value types, the individual tests
can use the top-level Parse functions, instead of ParseFoo() variants.

Secondly, some unneeded array wrappers have been dropped and non-singular
tests starting with other values than objects or arrays have been added.
2014-08-11 17:14:31 +02:00
Philipp A. Hartmann
c256752668 readertest: drop object/array root restriction tests 2014-08-11 17:14:31 +02:00
Philipp A. Hartmann
e45557e28e writertest: add some roundtrip tests for non-compound root values 2014-08-11 17:14:31 +02:00
Philipp A. Hartmann
c0c0c398b6 jsoncheckertest: skip "fail1.json", as it is now accepted by RapidJSON 2014-08-11 17:14:31 +02:00