OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/values.h" | 5 #include "base/values.h" |
6 #include "tools/json_schema_compiler/test/idl_basics.h" | 6 #include "tools/json_schema_compiler/test/idl_basics.h" |
7 #include "tools/json_schema_compiler/test/idl_object_types.h" | 7 #include "tools/json_schema_compiler/test/idl_object_types.h" |
8 | 8 |
9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
10 | 10 |
(...skipping 28 matching lines...) Expand all Loading... |
39 ListValue list; | 39 ListValue list; |
40 list.Append(Value::CreateIntegerValue(5)); | 40 list.Append(Value::CreateIntegerValue(5)); |
41 scoped_ptr<Function2::Params> f2_params = Function2::Params::Create(list); | 41 scoped_ptr<Function2::Params> f2_params = Function2::Params::Create(list); |
42 EXPECT_EQ(5, f2_params->x); | 42 EXPECT_EQ(5, f2_params->x); |
43 | 43 |
44 // Test Function3, which takes a MyType1 parameter. | 44 // Test Function3, which takes a MyType1 parameter. |
45 list.Clear(); | 45 list.Clear(); |
46 DictionaryValue* tmp = new DictionaryValue(); | 46 DictionaryValue* tmp = new DictionaryValue(); |
47 tmp->SetInteger("x", 17); | 47 tmp->SetInteger("x", 17); |
48 tmp->SetString("y", "hello"); | 48 tmp->SetString("y", "hello"); |
| 49 tmp->SetString("z", "zstring"); |
| 50 tmp->SetString("a", "astring"); |
| 51 tmp->SetString("b", "bstring"); |
| 52 tmp->SetString("c", "cstring"); |
49 list.Append(tmp); | 53 list.Append(tmp); |
50 scoped_ptr<Function3::Params> f3_params = Function3::Params::Create(list); | 54 scoped_ptr<Function3::Params> f3_params = Function3::Params::Create(list); |
51 EXPECT_EQ(17, f3_params->arg.x); | 55 EXPECT_EQ(17, f3_params->arg.x); |
52 EXPECT_EQ("hello", f3_params->arg.y); | 56 EXPECT_EQ("hello", f3_params->arg.y); |
53 | 57 |
54 // Test functions that take a callback function as a parameter, with varying | 58 // Test functions that take a callback function as a parameter, with varying |
55 // callback signatures. | 59 // callback signatures. |
56 scoped_ptr<ListValue> f4_results = Function4::Results::Create(); | 60 scoped_ptr<ListValue> f4_results = Function4::Results::Create(); |
57 ListValue expected; | 61 ListValue expected; |
58 EXPECT_TRUE(f4_results->Equals(&expected)); | 62 EXPECT_TRUE(f4_results->Equals(&expected)); |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
94 EXPECT_EQ("foo", *(f8_params->arg2)); | 98 EXPECT_EQ("foo", *(f8_params->arg2)); |
95 | 99 |
96 // Test a function with an optional argument of custom type. | 100 // Test a function with an optional argument of custom type. |
97 list.Clear(); | 101 list.Clear(); |
98 scoped_ptr<Function9::Params> f9_params = Function9::Params::Create(list); | 102 scoped_ptr<Function9::Params> f9_params = Function9::Params::Create(list); |
99 EXPECT_EQ(NULL, f9_params->arg.get()); | 103 EXPECT_EQ(NULL, f9_params->arg.get()); |
100 list.Clear(); | 104 list.Clear(); |
101 DictionaryValue* tmp = new DictionaryValue(); | 105 DictionaryValue* tmp = new DictionaryValue(); |
102 tmp->SetInteger("x", 17); | 106 tmp->SetInteger("x", 17); |
103 tmp->SetString("y", "hello"); | 107 tmp->SetString("y", "hello"); |
| 108 tmp->SetString("z", "zstring"); |
| 109 tmp->SetString("a", "astring"); |
| 110 tmp->SetString("b", "bstring"); |
| 111 tmp->SetString("c", "cstring"); |
104 list.Append(tmp); | 112 list.Append(tmp); |
105 f9_params = Function9::Params::Create(list); | 113 f9_params = Function9::Params::Create(list); |
106 ASSERT_TRUE(f9_params->arg.get() != NULL); | 114 ASSERT_TRUE(f9_params->arg.get() != NULL); |
107 MyType1* t1 = f9_params->arg.get(); | 115 MyType1* t1 = f9_params->arg.get(); |
108 EXPECT_EQ(17, t1->x); | 116 EXPECT_EQ(17, t1->x); |
109 EXPECT_EQ("hello", t1->y); | 117 EXPECT_EQ("hello", t1->y); |
110 } | 118 } |
111 | 119 |
112 TEST(IdlCompiler, ArrayTypes) { | 120 TEST(IdlCompiler, ArrayTypes) { |
113 // Tests of a function that takes an integer and an array of integers. First | 121 // Tests of a function that takes an integer and an array of integers. First |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
182 &icon)); | 190 &icon)); |
183 ListValue list; | 191 ListValue list; |
184 list.Append(icon_props.release()); | 192 list.Append(icon_props.release()); |
185 scoped_ptr<ObjectFunction1::Params> params = | 193 scoped_ptr<ObjectFunction1::Params> params = |
186 ObjectFunction1::Params::Create(list); | 194 ObjectFunction1::Params::Create(list); |
187 ASSERT_TRUE(params.get() != NULL); | 195 ASSERT_TRUE(params.get() != NULL); |
188 std::string tmp; | 196 std::string tmp; |
189 EXPECT_TRUE(params->icon.additional_properties.GetString("hello", &tmp)); | 197 EXPECT_TRUE(params->icon.additional_properties.GetString("hello", &tmp)); |
190 EXPECT_EQ("world", tmp); | 198 EXPECT_EQ("world", tmp); |
191 } | 199 } |
OLD | NEW |