Philipp A. Hartmann
06c3ddbac5
GenericValue::AddMember<T>: add missing overload ( closes #254 )
...
As discovered by @felipegb94, there are missing overloads to the
`GenericValue::AddMember<T>` template function, taking an explicit
`GenericValue&` as a name and accepting arbitrary primitive values.
This patch adds the missing overloads. The `StringRefType` overload
is needed to disambiguate the addition of a string literal as
value.
Some tests are added to `TEST(Value, Object)` in `valuetest.cpp`.
2015-03-10 19:11:27 +01:00
unknown
63ad11c367
add support for AppVeyor
CI for checking Windows builds
2015-02-17 10:42:43 +01:00
Milo Yip
24563b28fb
Correct Value(kStringType) and more assertions
2015-01-13 23:49:53 +08:00
Milo Yip
c8bed6b8cc
Fix compilation errors in unit tests for VC
2014-11-23 08:38:48 +08:00
Drew Noakes
6aa664eeef
Document traits of types using <type_traits> and static_assert in tests.
...
The tests state the current traits of types Document, Value and
StringBuffer. There are slight differences between them. It seems like a
good idea to extend this approach across more types, and to review the
expected traits across the board.
2014-10-31 11:00:57 +00:00
Zhihao Yuan
7303d92990
Disambiguate GenericValue's [0] and ["string"]
2014-10-23 21:50:39 -04: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
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
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
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
Philipp A. Hartmann
fc1e956a0c
fix sign-comparison warning/error
2014-08-11 16:57:23 +02:00
Milo Yip
0dbcc1cf2e
Add license and change indents from tab to space.
2014-08-11 22:26:45 +08:00
Milo Yip
b52e07822e
Try to add erase-remove idiom in unit test but fail to compile on VC2013.
2014-08-01 00:04:31 +08:00
Philipp A. Hartmann
fc6d7a59dc
GenericValue: rename Erase(ConstMemberIterator) to EraseMember
2014-07-31 13:16:56 +02:00
Philipp A. Hartmann
82b32a93d2
fix missing bracket
2014-07-31 13:06:28 +02:00
Philipp A. Hartmann
b98852e165
GenericValue: add tests for Erase(ConstMemberIterator[, ConstMemberIterator])
2014-07-31 13:03:51 +02:00
miloyip
71ae5660ed
Revert "Add Erase(ConstValueIterator) and Erase(ConstValueIterator,ConstValueIterator)"
...
This reverts commit 9ab2621e855a9abb8377520b42d6dfddcd49a8e1.
2014-07-31 18:56:57 +08:00
miloyip
9ab2621e85
Add Erase(ConstValueIterator) and Erase(ConstValueIterator,ConstValueIterator)
...
As std::vector::erase() overloads added in C++11
2014-07-31 18:53:17 +08:00
miloyip
71c8402549
Add equal-to and non-equal-to operators
2014-07-31 18:43:59 +08:00
miloyip
0f7d2dad51
Add 2 overloads of Erase() for removing elements of array.
2014-07-31 14:22:59 +08:00
Philipp A. Hartmann
9a89eed11a
adopt AddMember tests from #47 (726f986,b7bf73c)
2014-07-09 09:24:34 +02:00
Philipp A. Hartmann
8bbf41f7c7
update string API tests
2014-07-08 20:23:34 +02:00
Philipp A. Hartmann
3254a784bb
add missing 'typename'
2014-07-03 17:13:17 +02:00
Milo Yip
80a5b9093c
In Value.CopyFrom unit test, run both allocators.
...
@pah
2014-07-03 22:57:09 +08:00
Milo Yip
1aa84342ba
Added GenericValue::Swap()
2014-07-03 22:38:34 +08:00
Philipp A. Hartmann
65b4316da9
valuetest: add deep copy unit test
...
This commit adds some simple tests for the deep-copying
of values, either based on the explicit constructor, or
the CopyFrom function.
It uses the CrtAllocator to test for possible double-free
errors due to insufficient copying.
2014-06-25 18:09:26 +02:00
Milo Yip
02673bec74
Fixed out of bound read in FindMember() and added related new APIs
...
The original FindMember() may access out-of-bound of the 'const char*
name' parameter.
This commit firstly follows
f86af8c232
However, this must incur an StrLen() for name. A better API is by using
Value as the name, which provides the length of string internally. So a
set of new API are added:
operator[](const GenericValue& name)
FindMember(const GenericValue& name)
RemoveMember(const GenericValue& name)
During refactoring, it also adds an API:
RemoveMember(MemberIterator m)
which can be used for other purpose, such as removing a member while
iterating an object.
Fixes #7
2014-06-20 19:14:45 +08:00
miloyip@gmail.com
47d60859d0
Additional fixes for Issue 48: incorrect return type of GetUint64()
...
git-svn-id: https://rapidjson.googlecode.com/svn/trunk@89 c5894555-1306-4e8d-425f-1f6f381ee07c
2012-11-15 07:16:26 +00:00
miloyip@gmail.com
d419c0ae5a
Test warning fix for Issue 48: incorrect return type of GetUint64()
...
git-svn-id: https://rapidjson.googlecode.com/svn/trunk@87 c5894555-1306-4e8d-425f-1f6f381ee07c
2012-11-15 03:32:30 +00:00
miloyip@gmail.com
4ee17e67b1
Fixed Issue 38: Segmentation fault with CrtAllocator
...
git-svn-id: https://rapidjson.googlecode.com/svn/trunk@80 c5894555-1306-4e8d-425f-1f6f381ee07c
2012-11-14 03:33:10 +00:00
miloyip@gmail.com
152c2eff6c
Fixed Issue 41 Incorrect parsing of unsigned int number types
...
git-svn-id: https://rapidjson.googlecode.com/svn/trunk@72 c5894555-1306-4e8d-425f-1f6f381ee07c
2012-11-14 02:36:23 +00:00
miloyip@gmail.com
9c68ce986e
Fixed a lots of vc2008/vs2010 and gcc3/4 warnings with the maximum warning level.
...
git-svn-id: https://rapidjson.googlecode.com/svn/trunk@67 c5894555-1306-4e8d-425f-1f6f381ee07c
2012-11-13 08:02:22 +00:00
miloyip@gmail.com
4fdd805c7d
Fixed issue 18 from 0.1x branch
...
git-svn-id: https://rapidjson.googlecode.com/svn/trunk@64 c5894555-1306-4e8d-425f-1f6f381ee07c
2012-03-06 05:36:42 +00:00
miloyip@gmail.com
78492f9962
Fixed compilation errors in Ubuntu 64-bit
...
git-svn-id: https://rapidjson.googlecode.com/svn/trunk@29 c5894555-1306-4e8d-425f-1f6f381ee07c
2011-11-22 15:47:11 +00:00