aboutsummaryrefslogtreecommitdiff
path: root/cpp/test/util
diff options
context:
space:
mode:
authorrouslan@chromium.org <rouslan@chromium.org@38ededc0-08b8-5190-f2ac-b31f878777ad>2014-05-21 12:45:07 +0000
committerrouslan@chromium.org <rouslan@chromium.org@38ededc0-08b8-5190-f2ac-b31f878777ad>2014-05-21 12:45:07 +0000
commit7825966d9566c8ced01471f1e6e6bf1e715f6572 (patch)
tree92b64a9260a8cfb396896622559210d06d86810b /cpp/test/util
parentbf030e4c78d86bd72699e6d06d645ebb130bf8e4 (diff)
downloadsrc-7825966d9566c8ced01471f1e6e6bf1e715f6572.tar.gz
Enable retrieving a list of keys from JSON.
TBR=roubert@google.com Review URL: https://codereview.appspot.com/92520046 git-svn-id: http://libaddressinput.googlecode.com/svn/trunk@229 38ededc0-08b8-5190-f2ac-b31f878777ad
Diffstat (limited to 'cpp/test/util')
-rw-r--r--cpp/test/util/json_test.cc17
1 files changed, 15 insertions, 2 deletions
diff --git a/cpp/test/util/json_test.cc b/cpp/test/util/json_test.cc
index c159d96..f6eb389 100644
--- a/cpp/test/util/json_test.cc
+++ b/cpp/test/util/json_test.cc
@@ -15,6 +15,7 @@
#include "util/json.h"
#include <string>
+#include <vector>
#include <gtest/gtest.h>
@@ -112,17 +113,29 @@ TEST(JsonTest, NumberIsNotValid) {
TEST(JsonTest, NoDictionaryFound) {
Json json;
- EXPECT_TRUE(json.ParseObject("{\"key\":\"value\"}"));
+ ASSERT_TRUE(json.ParseObject("{\"key\":\"value\"}"));
EXPECT_FALSE(json.HasDictionaryValueForKey("key"));
}
TEST(JsonTest, DictionaryFound) {
Json json;
- EXPECT_TRUE(json.ParseObject("{\"key\":{\"inner_key\":\"value\"}}"));
+ ASSERT_TRUE(json.ParseObject("{\"key\":{\"inner_key\":\"value\"}}"));
ASSERT_TRUE(json.HasDictionaryValueForKey("key"));
const Json& sub_json = json.GetDictionaryValueForKey("key");
ASSERT_TRUE(sub_json.HasStringValueForKey("inner_key"));
EXPECT_EQ("value", sub_json.GetStringValueForKey("inner_key"));
}
+TEST(JsonTest, DictionariesHaveKeys) {
+ Json json;
+ ASSERT_TRUE(json.ParseObject("{\"key\":{\"inner_key\":\"value\"}}"));
+ std::vector<std::string> expected_keys(1, "key");
+ EXPECT_EQ(expected_keys, json.GetKeys());
+
+ ASSERT_TRUE(json.HasDictionaryValueForKey("key"));
+ const Json& sub_json = json.GetDictionaryValueForKey("key");
+ std::vector<std::string> expected_sub_keys(1, "inner_key");
+ EXPECT_EQ(expected_sub_keys, sub_json.GetKeys());
+}
+
} // namespace