Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(588)

Side by Side Diff: ios/web/web_state/ui/web_view_js_utils_unittest.mm

Issue 2539363004: Make base::Value::TYPE a scoped enum. (Closed)
Patch Set: Rebase Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « ios/web/web_state/ui/web_view_js_utils.mm ('k') | ios/web/webui/mojo_facade.mm » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 #import "ios/web/web_state/ui/web_view_js_utils.h" 5 #import "ios/web/web_state/ui/web_view_js_utils.h"
6 6
7 #include "base/callback_helpers.h" 7 #include "base/callback_helpers.h"
8 #include "base/logging.h" 8 #include "base/logging.h"
9 #include "base/mac/bind_objc_block.h" 9 #include "base/mac/bind_objc_block.h"
10 #include "base/values.h" 10 #include "base/values.h"
11 #include "testing/gtest/include/gtest/gtest.h" 11 #include "testing/gtest/include/gtest/gtest.h"
12 12
13 namespace web { 13 namespace web {
14 14
15 // Tests that ValueResultFromWKResult converts nil value to nullptr. 15 // Tests that ValueResultFromWKResult converts nil value to nullptr.
16 TEST(WebViewJsUtilsTest, ValueResultFromUndefinedWKResult) { 16 TEST(WebViewJsUtilsTest, ValueResultFromUndefinedWKResult) {
17 EXPECT_FALSE(ValueResultFromWKResult(nil)); 17 EXPECT_FALSE(ValueResultFromWKResult(nil));
18 } 18 }
19 19
20 // Tests that ValueResultFromWKResult converts string to Value::TYPE_STRING. 20 // Tests that ValueResultFromWKResult converts string to Value::Type::STRING.
21 TEST(WebViewJsUtilsTest, ValueResultFromStringWKResult) { 21 TEST(WebViewJsUtilsTest, ValueResultFromStringWKResult) {
22 std::unique_ptr<base::Value> value(web::ValueResultFromWKResult(@"test")); 22 std::unique_ptr<base::Value> value(web::ValueResultFromWKResult(@"test"));
23 EXPECT_TRUE(value); 23 EXPECT_TRUE(value);
24 EXPECT_EQ(base::Value::TYPE_STRING, value->GetType()); 24 EXPECT_EQ(base::Value::Type::STRING, value->GetType());
25 std::string converted_result; 25 std::string converted_result;
26 value->GetAsString(&converted_result); 26 value->GetAsString(&converted_result);
27 EXPECT_EQ("test", converted_result); 27 EXPECT_EQ("test", converted_result);
28 } 28 }
29 29
30 // Tests that ValueResultFromWKResult converts inetger to Value::TYPE_DOUBLE. 30 // Tests that ValueResultFromWKResult converts inetger to Value::Type::DOUBLE.
31 // NOTE: WKWebView API returns all numbers as kCFNumberFloat64Type, so there is 31 // NOTE: WKWebView API returns all numbers as kCFNumberFloat64Type, so there is
32 // no way to tell if the result is integer or double. 32 // no way to tell if the result is integer or double.
33 TEST(WebViewJsUtilsTest, ValueResultFromIntegerWKResult) { 33 TEST(WebViewJsUtilsTest, ValueResultFromIntegerWKResult) {
34 std::unique_ptr<base::Value> value(web::ValueResultFromWKResult(@1)); 34 std::unique_ptr<base::Value> value(web::ValueResultFromWKResult(@1));
35 EXPECT_TRUE(value); 35 EXPECT_TRUE(value);
36 EXPECT_EQ(base::Value::TYPE_DOUBLE, value->GetType()); 36 EXPECT_EQ(base::Value::Type::DOUBLE, value->GetType());
37 double converted_result = 0; 37 double converted_result = 0;
38 value->GetAsDouble(&converted_result); 38 value->GetAsDouble(&converted_result);
39 EXPECT_EQ(1, converted_result); 39 EXPECT_EQ(1, converted_result);
40 } 40 }
41 41
42 // Tests that ValueResultFromWKResult converts double to Value::TYPE_DOUBLE. 42 // Tests that ValueResultFromWKResult converts double to Value::Type::DOUBLE.
43 TEST(WebViewJsUtilsTest, ValueResultFromDoubleWKResult) { 43 TEST(WebViewJsUtilsTest, ValueResultFromDoubleWKResult) {
44 std::unique_ptr<base::Value> value(web::ValueResultFromWKResult(@3.14)); 44 std::unique_ptr<base::Value> value(web::ValueResultFromWKResult(@3.14));
45 EXPECT_TRUE(value); 45 EXPECT_TRUE(value);
46 EXPECT_EQ(base::Value::TYPE_DOUBLE, value->GetType()); 46 EXPECT_EQ(base::Value::Type::DOUBLE, value->GetType());
47 double converted_result = 0; 47 double converted_result = 0;
48 value->GetAsDouble(&converted_result); 48 value->GetAsDouble(&converted_result);
49 EXPECT_EQ(3.14, converted_result); 49 EXPECT_EQ(3.14, converted_result);
50 } 50 }
51 51
52 // Tests that ValueResultFromWKResult converts bool to Value::TYPE_BOOLEAN. 52 // Tests that ValueResultFromWKResult converts bool to Value::Type::BOOLEAN.
53 TEST(WebViewJsUtilsTest, ValueResultFromBoolWKResult) { 53 TEST(WebViewJsUtilsTest, ValueResultFromBoolWKResult) {
54 std::unique_ptr<base::Value> value(web::ValueResultFromWKResult(@YES)); 54 std::unique_ptr<base::Value> value(web::ValueResultFromWKResult(@YES));
55 EXPECT_TRUE(value); 55 EXPECT_TRUE(value);
56 EXPECT_EQ(base::Value::TYPE_BOOLEAN, value->GetType()); 56 EXPECT_EQ(base::Value::Type::BOOLEAN, value->GetType());
57 bool converted_result = false; 57 bool converted_result = false;
58 value->GetAsBoolean(&converted_result); 58 value->GetAsBoolean(&converted_result);
59 EXPECT_TRUE(converted_result); 59 EXPECT_TRUE(converted_result);
60 } 60 }
61 61
62 // Tests that ValueResultFromWKResult converts null to Value::TYPE_NULL. 62 // Tests that ValueResultFromWKResult converts null to Value::Type::NONE.
63 TEST(WebViewJsUtilsTest, ValueResultFromNullWKResult) { 63 TEST(WebViewJsUtilsTest, ValueResultFromNullWKResult) {
64 std::unique_ptr<base::Value> value( 64 std::unique_ptr<base::Value> value(
65 web::ValueResultFromWKResult([NSNull null])); 65 web::ValueResultFromWKResult([NSNull null]));
66 EXPECT_TRUE(value); 66 EXPECT_TRUE(value);
67 EXPECT_EQ(base::Value::TYPE_NULL, value->GetType()); 67 EXPECT_EQ(base::Value::Type::NONE, value->GetType());
68 } 68 }
69 69
70 // Tests that ValueResultFromWKResult converts NSDictionaries to properly 70 // Tests that ValueResultFromWKResult converts NSDictionaries to properly
71 // initialized base::DictionaryValue. 71 // initialized base::DictionaryValue.
72 TEST(WebViewJsUtilsTest, ValueResultFromDictionaryWKResult) { 72 TEST(WebViewJsUtilsTest, ValueResultFromDictionaryWKResult) {
73 NSDictionary* test_dictionary = 73 NSDictionary* test_dictionary =
74 @{ @"Key1" : @"Value1", 74 @{ @"Key1" : @"Value1",
75 @"Key2" : @{@"Key3" : @42} }; 75 @"Key2" : @{@"Key3" : @42} };
76 76
77 std::unique_ptr<base::Value> value( 77 std::unique_ptr<base::Value> value(
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
183 current_depth++) { 183 current_depth++) {
184 EXPECT_NE(nullptr, current_list); 184 EXPECT_NE(nullptr, current_list);
185 inner_list = nullptr; 185 inner_list = nullptr;
186 current_list->GetList(0, &inner_list); 186 current_list->GetList(0, &inner_list);
187 current_list = inner_list; 187 current_list = inner_list;
188 } 188 }
189 EXPECT_EQ(nullptr, current_list); 189 EXPECT_EQ(nullptr, current_list);
190 } 190 }
191 191
192 } // namespace web 192 } // namespace web
OLDNEW
« no previous file with comments | « ios/web/web_state/ui/web_view_js_utils.mm ('k') | ios/web/webui/mojo_facade.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698