Add Value::MemberCount(), MemberEmpty(), RemoveAllMembers()

This commit is contained in:
Milo Yip
2014-08-27 23:14:17 +08:00
parent b5928618d4
commit dc834c9c03
2 changed files with 31 additions and 2 deletions

View File

@@ -763,14 +763,21 @@ TEST(Value, Object) {
EXPECT_EQ(kObjectType, x.GetType());
EXPECT_TRUE(x.IsObject());
EXPECT_TRUE(x.MemberEmpty());
EXPECT_EQ(0u, x.MemberCount());
EXPECT_EQ(kObjectType, y.GetType());
EXPECT_TRUE(y.IsObject());
EXPECT_TRUE(y.MemberEmpty());
EXPECT_EQ(0u, y.MemberCount());
// AddMember()
x.AddMember("A", "Apple", allocator);
EXPECT_FALSE(x.MemberEmpty());
EXPECT_EQ(1u, x.MemberCount());
Value value("Banana", 6);
x.AddMember("B", "Banana", allocator);
EXPECT_EQ(2u, x.MemberCount());
// AddMember<T>(StringRefType, T, Allocator)
{
@@ -791,6 +798,7 @@ TEST(Value, Object) {
EXPECT_EQ(INT64_C(-4294967296), o["int64"].GetInt64());
EXPECT_EQ(UINT64_C(4294967296), o["uint64"].GetUint64());
EXPECT_STREQ("Jelly",o["string"].GetString());
EXPECT_EQ(8u, o.MemberCount());
}
// Tests a member with null character
@@ -955,6 +963,11 @@ TEST(Value, Object) {
}
}
// RemoveAllMembers()
x.RemoveAllMembers();
EXPECT_TRUE(x.MemberEmpty());
EXPECT_EQ(0u, x.MemberCount());
// SetObject()
Value z;
z.SetObject();