OLD | NEW |
| (Empty) |
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 | |
3 // found in the LICENSE file. | |
4 | |
5 #include "content/browser/webui/web_ui.h" | |
6 | |
7 #include "base/string16.h" | |
8 #include "base/values.h" | |
9 #include "testing/gtest/include/gtest/gtest.h" | |
10 | |
11 class TestWebUIMessageHandler : public WebUIMessageHandler { | |
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 | |
23 TEST(WebUIMessageHandlerTest, ExtractIntegerValue) { | |
24 TestWebUIMessageHandler handler; | |
25 | |
26 ListValue list; | |
27 int value, zero_value = 0, neg_value = -1234, pos_value = 1234; | |
28 | |
29 list.Append(Value::CreateIntegerValue(zero_value)); | |
30 EXPECT_TRUE(handler.ExtractIntegerValue(&list, &value)); | |
31 EXPECT_EQ(value, zero_value); | |
32 list.Clear(); | |
33 | |
34 list.Append(Value::CreateIntegerValue(neg_value)); | |
35 EXPECT_TRUE(handler.ExtractIntegerValue(&list, &value)); | |
36 EXPECT_EQ(value, neg_value); | |
37 list.Clear(); | |
38 | |
39 list.Append(Value::CreateIntegerValue(pos_value)); | |
40 EXPECT_TRUE(handler.ExtractIntegerValue(&list, &value)); | |
41 EXPECT_EQ(value, pos_value); | |
42 } | |
43 | |
44 TEST(WebUIMessageHandlerTest, ExtractDoubleValue) { | |
45 TestWebUIMessageHandler handler; | |
46 | |
47 ListValue list; | |
48 double value, zero_value = 0.0, neg_value = -1234.5, pos_value = 1234.5; | |
49 | |
50 list.Append(Value::CreateDoubleValue(zero_value)); | |
51 EXPECT_TRUE(handler.ExtractDoubleValue(&list, &value)); | |
52 EXPECT_EQ(value, zero_value); | |
53 list.Clear(); | |
54 | |
55 list.Append(Value::CreateDoubleValue(neg_value)); | |
56 EXPECT_TRUE(handler.ExtractDoubleValue(&list, &value)); | |
57 EXPECT_EQ(value, neg_value); | |
58 list.Clear(); | |
59 | |
60 list.Append(Value::CreateDoubleValue(pos_value)); | |
61 EXPECT_TRUE(handler.ExtractDoubleValue(&list, &value)); | |
62 EXPECT_EQ(value, pos_value); | |
63 } | |
64 | |
65 TEST(WebUIMessageHandlerTest, ExtractStringValue) { | |
66 TestWebUIMessageHandler handler; | |
67 | |
68 ListValue list; | |
69 string16 in_string = "The facts, though interesting, are irrelevant." | |
70 list.Append(Value::CreateStringValue(string)); | |
71 string16 out_string = handler.ExtractStringValue(&list); | |
72 EXPECT_STREQ(in_string.c_str(), out_string.c_str()); | |
73 } | |
74 | |
OLD | NEW |