OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "content/browser/webui/web_ui.h" | 5 #include "content/public/browser/web_ui_message_handler.h" |
6 | 6 |
7 #include "base/string16.h" | 7 #include "base/string16.h" |
| 8 #include "base/utf_string_conversions.h" |
8 #include "base/values.h" | 9 #include "base/values.h" |
9 #include "testing/gtest/include/gtest/gtest.h" | 10 #include "testing/gtest/include/gtest/gtest.h" |
10 | 11 |
11 class TestWebUIMessageHandler : public WebUIMessageHandler { | 12 namespace content { |
12 public: | |
13 TestWebUIMessageHandler() {} | |
14 virtual ~TestWebUIMessageHandler() {} | |
15 | |
16 protected: | |
17 virtual void RegisterMessages() {} | |
18 | |
19 private: | |
20 DISALLOW_COPY_AND_ASSIGN(TestWebUIMessageHandler); | |
21 }; | |
22 | 13 |
23 TEST(WebUIMessageHandlerTest, ExtractIntegerValue) { | 14 TEST(WebUIMessageHandlerTest, ExtractIntegerValue) { |
24 TestWebUIMessageHandler handler; | |
25 | |
26 ListValue list; | 15 ListValue list; |
27 int value, zero_value = 0, neg_value = -1234, pos_value = 1234; | 16 int value, zero_value = 0, neg_value = -1234, pos_value = 1234; |
28 | 17 |
29 list.Append(Value::CreateIntegerValue(zero_value)); | 18 list.Append(Value::CreateIntegerValue(zero_value)); |
30 EXPECT_TRUE(handler.ExtractIntegerValue(&list, &value)); | 19 EXPECT_TRUE(WebUIMessageHandler::ExtractIntegerValue(&list, &value)); |
31 EXPECT_EQ(value, zero_value); | 20 EXPECT_EQ(value, zero_value); |
32 list.Clear(); | 21 list.Clear(); |
33 | 22 |
34 list.Append(Value::CreateIntegerValue(neg_value)); | 23 list.Append(Value::CreateIntegerValue(neg_value)); |
35 EXPECT_TRUE(handler.ExtractIntegerValue(&list, &value)); | 24 EXPECT_TRUE(WebUIMessageHandler::ExtractIntegerValue(&list, &value)); |
36 EXPECT_EQ(value, neg_value); | 25 EXPECT_EQ(value, neg_value); |
37 list.Clear(); | 26 list.Clear(); |
38 | 27 |
39 list.Append(Value::CreateIntegerValue(pos_value)); | 28 list.Append(Value::CreateIntegerValue(pos_value)); |
40 EXPECT_TRUE(handler.ExtractIntegerValue(&list, &value)); | 29 EXPECT_TRUE(WebUIMessageHandler::ExtractIntegerValue(&list, &value)); |
41 EXPECT_EQ(value, pos_value); | 30 EXPECT_EQ(value, pos_value); |
42 } | 31 } |
43 | 32 |
44 TEST(WebUIMessageHandlerTest, ExtractDoubleValue) { | 33 TEST(WebUIMessageHandlerTest, ExtractDoubleValue) { |
45 TestWebUIMessageHandler handler; | |
46 | |
47 ListValue list; | 34 ListValue list; |
48 double value, zero_value = 0.0, neg_value = -1234.5, pos_value = 1234.5; | 35 double value, zero_value = 0.0, neg_value = -1234.5, pos_value = 1234.5; |
49 | 36 |
50 list.Append(Value::CreateDoubleValue(zero_value)); | 37 list.Append(Value::CreateDoubleValue(zero_value)); |
51 EXPECT_TRUE(handler.ExtractDoubleValue(&list, &value)); | 38 EXPECT_TRUE(WebUIMessageHandler::ExtractDoubleValue(&list, &value)); |
52 EXPECT_EQ(value, zero_value); | 39 EXPECT_EQ(value, zero_value); |
53 list.Clear(); | 40 list.Clear(); |
54 | 41 |
55 list.Append(Value::CreateDoubleValue(neg_value)); | 42 list.Append(Value::CreateDoubleValue(neg_value)); |
56 EXPECT_TRUE(handler.ExtractDoubleValue(&list, &value)); | 43 EXPECT_TRUE(WebUIMessageHandler::ExtractDoubleValue(&list, &value)); |
57 EXPECT_EQ(value, neg_value); | 44 EXPECT_EQ(value, neg_value); |
58 list.Clear(); | 45 list.Clear(); |
59 | 46 |
60 list.Append(Value::CreateDoubleValue(pos_value)); | 47 list.Append(Value::CreateDoubleValue(pos_value)); |
61 EXPECT_TRUE(handler.ExtractDoubleValue(&list, &value)); | 48 EXPECT_TRUE(WebUIMessageHandler::ExtractDoubleValue(&list, &value)); |
62 EXPECT_EQ(value, pos_value); | 49 EXPECT_EQ(value, pos_value); |
63 } | 50 } |
64 | 51 |
65 TEST(WebUIMessageHandlerTest, ExtractStringValue) { | 52 TEST(WebUIMessageHandlerTest, ExtractStringValue) { |
66 TestWebUIMessageHandler handler; | |
67 | |
68 ListValue list; | 53 ListValue list; |
69 string16 in_string = "The facts, though interesting, are irrelevant." | 54 string16 in_string(UTF8ToUTF16( |
70 list.Append(Value::CreateStringValue(string)); | 55 "The facts, though interesting, are irrelevant.")); |
71 string16 out_string = handler.ExtractStringValue(&list); | 56 list.Append(Value::CreateStringValue(in_string)); |
| 57 string16 out_string = WebUIMessageHandler::ExtractStringValue(&list); |
72 EXPECT_STREQ(in_string.c_str(), out_string.c_str()); | 58 EXPECT_STREQ(in_string.c_str(), out_string.c_str()); |
73 } | 59 } |
74 | 60 |
| 61 } // namespace content |
OLD | NEW |