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/logging.h" | 5 #include "base/logging.h" |
6 #include "chrome/browser/chromeos/input_method/ibus_controller_impl.h" | 6 #include "chrome/browser/chromeos/input_method/ibus_controller_impl.h" |
7 #include "chrome/browser/chromeos/input_method/input_method_property.h" | 7 #include "chrome/browser/chromeos/input_method/input_method_property.h" |
8 #include "testing/gtest/include/gtest/gtest.h" | 8 #include "testing/gtest/include/gtest/gtest.h" |
9 | 9 |
10 namespace chromeos { | 10 namespace chromeos { |
11 namespace input_method { | 11 namespace input_method { |
12 | 12 |
13 namespace { | 13 namespace { |
14 | 14 |
15 bool FindAndUpdateProperty(const InputMethodProperty& new_prop, | 15 bool FindAndUpdateProperty(const InputMethodProperty& new_prop, |
16 InputMethodPropertyList* prop_list) { | 16 InputMethodPropertyList* prop_list) { |
17 return IBusControllerImpl::FindAndUpdatePropertyForTesting(new_prop, | 17 return IBusControllerImpl::FindAndUpdatePropertyForTesting(new_prop, |
18 prop_list); | 18 prop_list); |
19 } | 19 } |
20 | 20 |
21 } // namespace | 21 } // namespace |
22 | 22 |
23 TEST(IBusControllerImplTest, TestFindAndUpdateProperty) { | 23 TEST(IBusControllerImplTest, TestFindAndUpdateProperty) { |
24 InputMethodPropertyList properties; | 24 InputMethodPropertyList properties; |
25 EXPECT_FALSE(FindAndUpdateProperty(InputMethodProperty(), &properties)); | 25 EXPECT_FALSE(FindAndUpdateProperty(InputMethodProperty(), &properties)); |
26 | 26 |
27 properties.push_back( | 27 properties.push_back( |
28 InputMethodProperty("key1", "label1", false, false, 0)); | 28 InputMethodProperty("key1", "label1", false, false)); |
29 EXPECT_FALSE(FindAndUpdateProperty(InputMethodProperty(), &properties)); | 29 EXPECT_FALSE(FindAndUpdateProperty(InputMethodProperty(), &properties)); |
30 EXPECT_FALSE(FindAndUpdateProperty( | 30 EXPECT_FALSE(FindAndUpdateProperty( |
31 InputMethodProperty("keyX", "labelX", false, false, 0), &properties)); | 31 InputMethodProperty("keyX", "labelX", false, false), &properties)); |
32 EXPECT_EQ(InputMethodProperty("key1", "label1", false, false, 0), | 32 EXPECT_EQ(InputMethodProperty("key1", "label1", false, false), |
33 properties[0]); | 33 properties[0]); |
34 EXPECT_TRUE(FindAndUpdateProperty( | 34 EXPECT_TRUE(FindAndUpdateProperty( |
35 InputMethodProperty("key1", "labelY", false, false, 0), &properties)); | 35 InputMethodProperty("key1", "labelY", false, false), &properties)); |
36 EXPECT_EQ(InputMethodProperty("key1", "labelY", false, false, 0), | 36 EXPECT_EQ(InputMethodProperty("key1", "labelY", false, false), |
37 properties[0]); | 37 properties[0]); |
38 | 38 |
39 properties.push_back( | 39 properties.push_back( |
40 InputMethodProperty("key2", "label2", false, false, 0)); | 40 InputMethodProperty("key2", "label2", false, false)); |
41 EXPECT_FALSE(FindAndUpdateProperty(InputMethodProperty(), &properties)); | 41 EXPECT_FALSE(FindAndUpdateProperty(InputMethodProperty(), &properties)); |
42 EXPECT_FALSE(FindAndUpdateProperty( | 42 EXPECT_FALSE(FindAndUpdateProperty( |
43 InputMethodProperty("keyX", "labelX", false, false, 0), &properties)); | 43 InputMethodProperty("keyX", "labelX", false, false), &properties)); |
44 EXPECT_EQ(InputMethodProperty("key2", "label2", false, false, 0), | 44 EXPECT_EQ(InputMethodProperty("key2", "label2", false, false), |
45 properties[1]); | 45 properties[1]); |
46 EXPECT_TRUE(FindAndUpdateProperty( | 46 EXPECT_TRUE(FindAndUpdateProperty( |
47 InputMethodProperty("key2", "labelZ", false, false, 0), &properties)); | 47 InputMethodProperty("key2", "labelZ", false, false), &properties)); |
48 EXPECT_EQ(InputMethodProperty("key2", "labelZ", false, false, 0), | 48 EXPECT_EQ(InputMethodProperty("key2", "labelZ", false, false), |
49 properties[1]); | 49 properties[1]); |
50 } | 50 } |
51 | 51 |
52 } // namespace input_method | 52 } // namespace input_method |
53 } // namespace chromeos | 53 } // namespace chromeos |
OLD | NEW |