X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Ftools%2Fjson_schema_compiler%2Ftest%2Farrays_unittest.cc;h=9aca730db38835fc5596b49b56cfdfc36f7113b9;hb=004985e17e624662a4c85c76a7654039dc83f028;hp=f3fb058f499fe6d068f0ec0b965c6795298a9f81;hpb=2f108dbacb161091e42a3479f4e171339b7e7623;p=platform%2Fframework%2Fweb%2Fcrosswalk.git diff --git a/src/tools/json_schema_compiler/test/arrays_unittest.cc b/src/tools/json_schema_compiler/test/arrays_unittest.cc index f3fb058..9aca730 100644 --- a/src/tools/json_schema_compiler/test/arrays_unittest.cc +++ b/src/tools/json_schema_compiler/test/arrays_unittest.cc @@ -52,21 +52,32 @@ TEST(JsonSchemaCompilerArrayTest, BasicArrayType) { } TEST(JsonSchemaCompilerArrayTest, EnumArrayType) { - std::vector enums; - enums.push_back(EnumArrayType::TYPES_TYPE_ONE); - enums.push_back(EnumArrayType::TYPES_TYPE_TWO); - enums.push_back(EnumArrayType::TYPES_TYPE_THREE); - - scoped_ptr types(new base::ListValue()); - for (size_t i = 0; i < enums.size(); ++i) - types->Append(new base::StringValue(EnumArrayType::ToString(enums[i]))); - + // { "types": ["one", "two", "three"] } + base::ListValue* types = new base::ListValue(); + types->AppendString("one"); + types->AppendString("two"); + types->AppendString("three"); base::DictionaryValue value; - value.Set("types", types.release()); + value.Set("types", types); EnumArrayType enum_array_type; + + // Test Populate. ASSERT_TRUE(EnumArrayType::Populate(value, &enum_array_type)); - EXPECT_EQ(enums, enum_array_type.types); + { + EnumArrayType::TypesType enums[] = { + EnumArrayType::TYPES_TYPE_ONE, + EnumArrayType::TYPES_TYPE_TWO, + EnumArrayType::TYPES_TYPE_THREE, + }; + std::vector enums_vector( + enums, enums + arraysize(enums)); + EXPECT_EQ(enums_vector, enum_array_type.types); + } + + // Test ToValue. + scoped_ptr as_value(enum_array_type.ToValue()); + EXPECT_TRUE(value.Equals(as_value.get())) << value << " != " << *as_value; } TEST(JsonSchemaCompilerArrayTest, OptionalEnumArrayType) {