| Index: components/policy/core/common/registry_dict_win_unittest.cc
|
| diff --git a/components/policy/core/common/registry_dict_win_unittest.cc b/components/policy/core/common/registry_dict_win_unittest.cc
|
| index e413b5458906665cd255f407957358d8464f0ae8..45df76eacacf519504084441f6e6a3d1ccf94a9e 100644
|
| --- a/components/policy/core/common/registry_dict_win_unittest.cc
|
| +++ b/components/policy/core/common/registry_dict_win_unittest.cc
|
| @@ -4,12 +4,12 @@
|
|
|
| #include "components/policy/core/common/registry_dict_win.h"
|
|
|
| +#include <string>
|
| +
|
| #include "base/values.h"
|
| -#include "components/json_schema/json_schema_constants.h"
|
| +#include "components/policy/core/common/schema.h"
|
| #include "testing/gtest/include/gtest/gtest.h"
|
|
|
| -namespace schema = json_schema_constants;
|
| -
|
| namespace policy {
|
| namespace {
|
|
|
| @@ -187,6 +187,8 @@ TEST(RegistryDictTest, ConvertToJSON) {
|
|
|
| base::FundamentalValue int_value(42);
|
| base::StringValue string_value("fortytwo");
|
| + base::StringValue string_zero("0");
|
| + base::StringValue string_dict("{ \"key\": [ \"value\" ] }");
|
|
|
| test_dict.SetValue("one", make_scoped_ptr(int_value.DeepCopy()));
|
| scoped_ptr<RegistryDict> subdict(new RegistryDict());
|
| @@ -194,17 +196,35 @@ TEST(RegistryDictTest, ConvertToJSON) {
|
| test_dict.SetKey("three", subdict.Pass());
|
| scoped_ptr<RegistryDict> list(new RegistryDict());
|
| list->SetValue("1", make_scoped_ptr(string_value.DeepCopy()));
|
| - test_dict.SetKey("four", list.Pass());
|
| -
|
| - base::DictionaryValue schema;
|
| - scoped_ptr<base::DictionaryValue> list_schema(new base::DictionaryValue());
|
| - list_schema->SetString(schema::kType, schema::kArray);
|
| - scoped_ptr<base::DictionaryValue> properties(new base::DictionaryValue());
|
| - properties->Set("four", list_schema.release());
|
| - schema.SetString(schema::kType, schema::kObject);
|
| - schema.Set(schema::kProperties, properties.release());
|
| -
|
| - scoped_ptr<base::Value> actual(test_dict.ConvertToJSON(&schema));
|
| + test_dict.SetKey("dict-to-list", list.Pass());
|
| + test_dict.SetValue("int-to-bool", make_scoped_ptr(int_value.DeepCopy()));
|
| + test_dict.SetValue("int-to-double", make_scoped_ptr(int_value.DeepCopy()));
|
| + test_dict.SetValue("string-to-bool", make_scoped_ptr(string_zero.DeepCopy()));
|
| + test_dict.SetValue("string-to-double",
|
| + make_scoped_ptr(string_zero.DeepCopy()));
|
| + test_dict.SetValue("string-to-int", make_scoped_ptr(string_zero.DeepCopy()));
|
| + test_dict.SetValue("string-to-dict", make_scoped_ptr(string_dict.DeepCopy()));
|
| +
|
| + std::string error;
|
| + Schema schema = Schema::Parse(
|
| + "{"
|
| + " \"type\": \"object\","
|
| + " \"properties\": {"
|
| + " \"dict-to-list\": {"
|
| + " \"type\": \"array\","
|
| + " \"items\": { \"type\": \"string\" }"
|
| + " },"
|
| + " \"int-to-bool\": { \"type\": \"boolean\" },"
|
| + " \"int-to-double\": { \"type\": \"number\" },"
|
| + " \"string-to-bool\": { \"type\": \"boolean\" },"
|
| + " \"string-to-double\": { \"type\": \"number\" },"
|
| + " \"string-to-int\": { \"type\": \"integer\" },"
|
| + " \"string-to-dict\": { \"type\": \"object\" }"
|
| + " }"
|
| + "}", &error);
|
| + ASSERT_TRUE(schema.valid()) << error;
|
| +
|
| + scoped_ptr<base::Value> actual(test_dict.ConvertToJSON(schema));
|
|
|
| base::DictionaryValue expected;
|
| expected.Set("one", int_value.DeepCopy());
|
| @@ -214,7 +234,17 @@ TEST(RegistryDictTest, ConvertToJSON) {
|
| expected.Set("three", expected_subdict.release());
|
| scoped_ptr<base::ListValue> expected_list(new base::ListValue());
|
| expected_list->Append(string_value.DeepCopy());
|
| - expected.Set("four", expected_list.release());
|
| + expected.Set("dict-to-list", expected_list.release());
|
| + expected.Set("int-to-bool", new base::FundamentalValue(true));
|
| + expected.Set("int-to-double", new base::FundamentalValue(42.0));
|
| + expected.Set("string-to-bool", new base::FundamentalValue(false));
|
| + expected.Set("string-to-double", new base::FundamentalValue(0.0));
|
| + expected.Set("string-to-int", new base::FundamentalValue((int) 0));
|
| + expected_list.reset(new base::ListValue());
|
| + expected_list->Append(new base::StringValue("value"));
|
| + expected_subdict.reset(new base::DictionaryValue());
|
| + expected_subdict->Set("key", expected_list.release());
|
| + expected.Set("string-to-dict", expected_subdict.release());
|
|
|
| EXPECT_TRUE(base::Value::Equals(actual.get(), &expected));
|
| }
|
|
|