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 <utility> |
| 6 |
5 #include "base/values.h" | 7 #include "base/values.h" |
| 8 #include "testing/gtest/include/gtest/gtest.h" |
6 #include "tools/json_schema_compiler/test/idl_basics.h" | 9 #include "tools/json_schema_compiler/test/idl_basics.h" |
7 #include "tools/json_schema_compiler/test/idl_object_types.h" | 10 #include "tools/json_schema_compiler/test/idl_object_types.h" |
8 | 11 |
9 #include "testing/gtest/include/gtest/gtest.h" | |
10 | |
11 using test::api::idl_basics::MyType1; | 12 using test::api::idl_basics::MyType1; |
12 using test::api::idl_object_types::BarType; | 13 using test::api::idl_object_types::BarType; |
13 using test::api::idl_object_types::FooType; | 14 using test::api::idl_object_types::FooType; |
14 | 15 |
15 namespace Function2 = test::api::idl_basics::Function2; | 16 namespace Function2 = test::api::idl_basics::Function2; |
16 namespace Function3 = test::api::idl_basics::Function3; | 17 namespace Function3 = test::api::idl_basics::Function3; |
17 namespace Function4 = test::api::idl_basics::Function4; | 18 namespace Function4 = test::api::idl_basics::Function4; |
18 namespace Function5 = test::api::idl_basics::Function5; | 19 namespace Function5 = test::api::idl_basics::Function5; |
19 namespace Function6 = test::api::idl_basics::Function6; | 20 namespace Function6 = test::api::idl_basics::Function6; |
20 namespace Function7 = test::api::idl_basics::Function7; | 21 namespace Function7 = test::api::idl_basics::Function7; |
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
150 | 151 |
151 // Now test a function which takes an array of a defined type. | 152 // Now test a function which takes an array of a defined type. |
152 list.Clear(); | 153 list.Clear(); |
153 MyType1 a; | 154 MyType1 a; |
154 MyType1 b; | 155 MyType1 b; |
155 a.x = 5; | 156 a.x = 5; |
156 b.x = 6; | 157 b.x = 6; |
157 a.y = std::string("foo"); | 158 a.y = std::string("foo"); |
158 b.y = std::string("bar"); | 159 b.y = std::string("bar"); |
159 base::ListValue* sublist2 = new base::ListValue; | 160 base::ListValue* sublist2 = new base::ListValue; |
160 sublist2->Append(a.ToValue().release()); | 161 sublist2->Append(a.ToValue()); |
161 sublist2->Append(b.ToValue().release()); | 162 sublist2->Append(b.ToValue()); |
162 list.Append(sublist2); | 163 list.Append(sublist2); |
163 std::unique_ptr<Function11::Params> f11_params = | 164 std::unique_ptr<Function11::Params> f11_params = |
164 Function11::Params::Create(list); | 165 Function11::Params::Create(list); |
165 ASSERT_TRUE(f11_params != NULL); | 166 ASSERT_TRUE(f11_params != NULL); |
166 ASSERT_EQ(2u, f11_params->arg.size()); | 167 ASSERT_EQ(2u, f11_params->arg.size()); |
167 EXPECT_EQ(5, f11_params->arg[0].x); | 168 EXPECT_EQ(5, f11_params->arg[0].x); |
168 EXPECT_EQ("foo", f11_params->arg[0].y); | 169 EXPECT_EQ("foo", f11_params->arg[0].y); |
169 EXPECT_EQ(6, f11_params->arg[1].x); | 170 EXPECT_EQ(6, f11_params->arg[1].x); |
170 EXPECT_EQ("bar", f11_params->arg[1].y); | 171 EXPECT_EQ("bar", f11_params->arg[1].y); |
171 } | 172 } |
(...skipping 18 matching lines...) Expand all Loading... |
190 EXPECT_EQ(7, tmp_int); | 191 EXPECT_EQ(7, tmp_int); |
191 | 192 |
192 // Test the params to the ObjectFunction1 function. | 193 // Test the params to the ObjectFunction1 function. |
193 std::unique_ptr<base::DictionaryValue> icon_props( | 194 std::unique_ptr<base::DictionaryValue> icon_props( |
194 new base::DictionaryValue()); | 195 new base::DictionaryValue()); |
195 icon_props->SetString("hello", "world"); | 196 icon_props->SetString("hello", "world"); |
196 ObjectFunction1::Params::Icon icon; | 197 ObjectFunction1::Params::Icon icon; |
197 EXPECT_TRUE(ObjectFunction1::Params::Icon::Populate(*(icon_props.get()), | 198 EXPECT_TRUE(ObjectFunction1::Params::Icon::Populate(*(icon_props.get()), |
198 &icon)); | 199 &icon)); |
199 base::ListValue list; | 200 base::ListValue list; |
200 list.Append(icon_props.release()); | 201 list.Append(std::move(icon_props)); |
201 std::unique_ptr<ObjectFunction1::Params> params = | 202 std::unique_ptr<ObjectFunction1::Params> params = |
202 ObjectFunction1::Params::Create(list); | 203 ObjectFunction1::Params::Create(list); |
203 ASSERT_TRUE(params.get() != NULL); | 204 ASSERT_TRUE(params.get() != NULL); |
204 std::string tmp; | 205 std::string tmp; |
205 EXPECT_TRUE(params->icon.additional_properties.GetString("hello", &tmp)); | 206 EXPECT_TRUE(params->icon.additional_properties.GetString("hello", &tmp)); |
206 EXPECT_EQ("world", tmp); | 207 EXPECT_EQ("world", tmp); |
207 } | 208 } |
OLD | NEW |