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

Side by Side Diff: content/common/android/gin_java_bridge_value_unittest.cc

Issue 2799093006: Remove base::BinaryValue (Closed)
Patch Set: Rebase Created 3 years, 8 months 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
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 #include "content/common/android/gin_java_bridge_value.h" 5 #include "content/common/android/gin_java_bridge_value.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <cmath> 9 #include <cmath>
10 #include <memory> 10 #include <memory>
11 11
12 #include "testing/gtest/include/gtest/gtest.h" 12 #include "testing/gtest/include/gtest/gtest.h"
13 13
14 namespace content { 14 namespace content {
15 15
16 class GinJavaBridgeValueTest : public testing::Test { 16 class GinJavaBridgeValueTest : public testing::Test {
17 }; 17 };
18 18
19 TEST_F(GinJavaBridgeValueTest, BasicValues) { 19 TEST_F(GinJavaBridgeValueTest, BasicValues) {
20 float native_float; 20 float native_float;
21 int32_t native_object_id; 21 int32_t native_object_id;
22 22
23 std::unique_ptr<base::BinaryValue> undefined( 23 std::unique_ptr<base::Value> undefined(
24 GinJavaBridgeValue::CreateUndefinedValue()); 24 GinJavaBridgeValue::CreateUndefinedValue());
25 ASSERT_TRUE(undefined.get()); 25 ASSERT_TRUE(undefined.get());
26 EXPECT_TRUE(GinJavaBridgeValue::ContainsGinJavaBridgeValue(undefined.get())); 26 EXPECT_TRUE(GinJavaBridgeValue::ContainsGinJavaBridgeValue(undefined.get()));
27 std::unique_ptr<const GinJavaBridgeValue> undefined_value( 27 std::unique_ptr<const GinJavaBridgeValue> undefined_value(
28 GinJavaBridgeValue::FromValue(undefined.get())); 28 GinJavaBridgeValue::FromValue(undefined.get()));
29 ASSERT_TRUE(undefined_value.get()); 29 ASSERT_TRUE(undefined_value.get());
30 EXPECT_TRUE(undefined_value->IsType(GinJavaBridgeValue::TYPE_UNDEFINED)); 30 EXPECT_TRUE(undefined_value->IsType(GinJavaBridgeValue::TYPE_UNDEFINED));
31 31
32 EXPECT_FALSE(undefined_value->GetAsNonFinite(&native_float)); 32 EXPECT_FALSE(undefined_value->GetAsNonFinite(&native_float));
33 EXPECT_FALSE(undefined_value->GetAsObjectID(&native_object_id)); 33 EXPECT_FALSE(undefined_value->GetAsObjectID(&native_object_id));
34 34
35 std::unique_ptr<base::BinaryValue> float_infinity( 35 std::unique_ptr<base::Value> float_infinity(
36 GinJavaBridgeValue::CreateNonFiniteValue( 36 GinJavaBridgeValue::CreateNonFiniteValue(
37 std::numeric_limits<float>::infinity())); 37 std::numeric_limits<float>::infinity()));
38 ASSERT_TRUE(float_infinity.get()); 38 ASSERT_TRUE(float_infinity.get());
39 EXPECT_TRUE( 39 EXPECT_TRUE(
40 GinJavaBridgeValue::ContainsGinJavaBridgeValue(float_infinity.get())); 40 GinJavaBridgeValue::ContainsGinJavaBridgeValue(float_infinity.get()));
41 std::unique_ptr<const GinJavaBridgeValue> float_infinity_value( 41 std::unique_ptr<const GinJavaBridgeValue> float_infinity_value(
42 GinJavaBridgeValue::FromValue(float_infinity.get())); 42 GinJavaBridgeValue::FromValue(float_infinity.get()));
43 ASSERT_TRUE(float_infinity_value.get()); 43 ASSERT_TRUE(float_infinity_value.get());
44 EXPECT_TRUE(float_infinity_value->IsType(GinJavaBridgeValue::TYPE_NONFINITE)); 44 EXPECT_TRUE(float_infinity_value->IsType(GinJavaBridgeValue::TYPE_NONFINITE));
45 EXPECT_TRUE(float_infinity_value->GetAsNonFinite(&native_float)); 45 EXPECT_TRUE(float_infinity_value->GetAsNonFinite(&native_float));
46 EXPECT_TRUE(std::isinf(native_float)); 46 EXPECT_TRUE(std::isinf(native_float));
47 47
48 EXPECT_FALSE(undefined_value->GetAsObjectID(&native_object_id)); 48 EXPECT_FALSE(undefined_value->GetAsObjectID(&native_object_id));
49 49
50 std::unique_ptr<base::BinaryValue> double_infinity( 50 std::unique_ptr<base::Value> double_infinity(
51 GinJavaBridgeValue::CreateNonFiniteValue( 51 GinJavaBridgeValue::CreateNonFiniteValue(
52 std::numeric_limits<double>::infinity())); 52 std::numeric_limits<double>::infinity()));
53 ASSERT_TRUE(double_infinity.get()); 53 ASSERT_TRUE(double_infinity.get());
54 EXPECT_TRUE( 54 EXPECT_TRUE(
55 GinJavaBridgeValue::ContainsGinJavaBridgeValue(double_infinity.get())); 55 GinJavaBridgeValue::ContainsGinJavaBridgeValue(double_infinity.get()));
56 std::unique_ptr<const GinJavaBridgeValue> double_infinity_value( 56 std::unique_ptr<const GinJavaBridgeValue> double_infinity_value(
57 GinJavaBridgeValue::FromValue(double_infinity.get())); 57 GinJavaBridgeValue::FromValue(double_infinity.get()));
58 ASSERT_TRUE(double_infinity_value.get()); 58 ASSERT_TRUE(double_infinity_value.get());
59 EXPECT_TRUE( 59 EXPECT_TRUE(
60 double_infinity_value->IsType(GinJavaBridgeValue::TYPE_NONFINITE)); 60 double_infinity_value->IsType(GinJavaBridgeValue::TYPE_NONFINITE));
61 EXPECT_TRUE(double_infinity_value->GetAsNonFinite(&native_float)); 61 EXPECT_TRUE(double_infinity_value->GetAsNonFinite(&native_float));
62 EXPECT_TRUE(std::isinf(native_float)); 62 EXPECT_TRUE(std::isinf(native_float));
63 63
64 EXPECT_FALSE(undefined_value->GetAsObjectID(&native_object_id)); 64 EXPECT_FALSE(undefined_value->GetAsObjectID(&native_object_id));
65 65
66 std::unique_ptr<base::BinaryValue> object_id( 66 std::unique_ptr<base::Value> object_id(
67 GinJavaBridgeValue::CreateObjectIDValue(42)); 67 GinJavaBridgeValue::CreateObjectIDValue(42));
68 ASSERT_TRUE(object_id.get()); 68 ASSERT_TRUE(object_id.get());
69 EXPECT_TRUE(GinJavaBridgeValue::ContainsGinJavaBridgeValue(object_id.get())); 69 EXPECT_TRUE(GinJavaBridgeValue::ContainsGinJavaBridgeValue(object_id.get()));
70 std::unique_ptr<const GinJavaBridgeValue> object_id_value( 70 std::unique_ptr<const GinJavaBridgeValue> object_id_value(
71 GinJavaBridgeValue::FromValue(object_id.get())); 71 GinJavaBridgeValue::FromValue(object_id.get()));
72 ASSERT_TRUE(object_id_value.get()); 72 ASSERT_TRUE(object_id_value.get());
73 EXPECT_TRUE(object_id_value->IsType(GinJavaBridgeValue::TYPE_OBJECT_ID)); 73 EXPECT_TRUE(object_id_value->IsType(GinJavaBridgeValue::TYPE_OBJECT_ID));
74 EXPECT_TRUE(object_id_value->GetAsObjectID(&native_object_id)); 74 EXPECT_TRUE(object_id_value->GetAsObjectID(&native_object_id));
75 EXPECT_EQ(42, native_object_id); 75 EXPECT_EQ(42, native_object_id);
76 76
77 EXPECT_FALSE(undefined_value->GetAsNonFinite(&native_float)); 77 EXPECT_FALSE(undefined_value->GetAsNonFinite(&native_float));
78 } 78 }
79 79
80 TEST_F(GinJavaBridgeValueTest, BrokenValues) { 80 TEST_F(GinJavaBridgeValueTest, BrokenValues) {
81 std::unique_ptr<base::Value> non_binary(new base::Value(42)); 81 std::unique_ptr<base::Value> non_binary(new base::Value(42));
82 EXPECT_FALSE( 82 EXPECT_FALSE(
83 GinJavaBridgeValue::ContainsGinJavaBridgeValue(non_binary.get())); 83 GinJavaBridgeValue::ContainsGinJavaBridgeValue(non_binary.get()));
84 84
85 const char dummy_data[] = "\000\001\002\003\004\005\006\007\010\011\012\013"; 85 const char dummy_data[] = "\000\001\002\003\004\005\006\007\010\011\012\013";
86 std::unique_ptr<base::BinaryValue> broken_binary( 86 std::unique_ptr<base::Value> broken_binary(
87 base::BinaryValue::CreateWithCopiedBuffer(dummy_data, 87 base::Value::CreateWithCopiedBuffer(dummy_data, sizeof(dummy_data)));
88 sizeof(dummy_data)));
89 EXPECT_FALSE( 88 EXPECT_FALSE(
90 GinJavaBridgeValue::ContainsGinJavaBridgeValue(broken_binary.get())); 89 GinJavaBridgeValue::ContainsGinJavaBridgeValue(broken_binary.get()));
91 } 90 }
92 91
93 } // namespace 92 } // namespace
OLDNEW
« no previous file with comments | « content/common/android/gin_java_bridge_value.cc ('k') | extensions/browser/api/cast_channel/cast_message_util.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698