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 "dbus/values_util.h" | 5 #include "dbus/values_util.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <cmath> | 10 #include <cmath> |
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
45 writer.AppendString(kStringValue); | 45 writer.AppendString(kStringValue); |
46 const std::string kEmptyStringValue; | 46 const std::string kEmptyStringValue; |
47 writer.AppendString(kEmptyStringValue); | 47 writer.AppendString(kEmptyStringValue); |
48 const ObjectPath kObjectPathValue("/ObjectPath"); | 48 const ObjectPath kObjectPathValue("/ObjectPath"); |
49 writer.AppendObjectPath(kObjectPathValue); | 49 writer.AppendObjectPath(kObjectPathValue); |
50 | 50 |
51 MessageReader reader(response.get()); | 51 MessageReader reader(response.get()); |
52 std::unique_ptr<base::Value> value; | 52 std::unique_ptr<base::Value> value; |
53 std::unique_ptr<base::Value> expected_value; | 53 std::unique_ptr<base::Value> expected_value; |
54 // Pop a byte. | 54 // Pop a byte. |
55 value.reset(PopDataAsValue(&reader)); | 55 value = PopDataAsValue(&reader); |
56 ASSERT_TRUE(value.get() != NULL); | 56 ASSERT_TRUE(value.get() != NULL); |
57 expected_value.reset(new base::FundamentalValue(kByteValue)); | 57 expected_value.reset(new base::FundamentalValue(kByteValue)); |
58 EXPECT_TRUE(value->Equals(expected_value.get())); | 58 EXPECT_TRUE(value->Equals(expected_value.get())); |
59 // Pop a bool. | 59 // Pop a bool. |
60 value.reset(PopDataAsValue(&reader)); | 60 value = PopDataAsValue(&reader); |
61 ASSERT_TRUE(value.get() != NULL); | 61 ASSERT_TRUE(value.get() != NULL); |
62 expected_value.reset(new base::FundamentalValue(kBoolValue)); | 62 expected_value.reset(new base::FundamentalValue(kBoolValue)); |
63 EXPECT_TRUE(value->Equals(expected_value.get())); | 63 EXPECT_TRUE(value->Equals(expected_value.get())); |
64 // Pop an int16_t. | 64 // Pop an int16_t. |
65 value.reset(PopDataAsValue(&reader)); | 65 value = PopDataAsValue(&reader); |
66 ASSERT_TRUE(value.get() != NULL); | 66 ASSERT_TRUE(value.get() != NULL); |
67 expected_value.reset(new base::FundamentalValue(kInt16Value)); | 67 expected_value.reset(new base::FundamentalValue(kInt16Value)); |
68 EXPECT_TRUE(value->Equals(expected_value.get())); | 68 EXPECT_TRUE(value->Equals(expected_value.get())); |
69 // Pop a uint16_t. | 69 // Pop a uint16_t. |
70 value.reset(PopDataAsValue(&reader)); | 70 value = PopDataAsValue(&reader); |
71 ASSERT_TRUE(value.get() != NULL); | 71 ASSERT_TRUE(value.get() != NULL); |
72 expected_value.reset(new base::FundamentalValue(kUint16Value)); | 72 expected_value.reset(new base::FundamentalValue(kUint16Value)); |
73 EXPECT_TRUE(value->Equals(expected_value.get())); | 73 EXPECT_TRUE(value->Equals(expected_value.get())); |
74 // Pop an int32_t. | 74 // Pop an int32_t. |
75 value.reset(PopDataAsValue(&reader)); | 75 value = PopDataAsValue(&reader); |
76 ASSERT_TRUE(value.get() != NULL); | 76 ASSERT_TRUE(value.get() != NULL); |
77 expected_value.reset(new base::FundamentalValue(kInt32Value)); | 77 expected_value.reset(new base::FundamentalValue(kInt32Value)); |
78 EXPECT_TRUE(value->Equals(expected_value.get())); | 78 EXPECT_TRUE(value->Equals(expected_value.get())); |
79 // Pop a uint32_t. | 79 // Pop a uint32_t. |
80 value.reset(PopDataAsValue(&reader)); | 80 value = PopDataAsValue(&reader); |
81 ASSERT_TRUE(value.get() != NULL); | 81 ASSERT_TRUE(value.get() != NULL); |
82 expected_value.reset( | 82 expected_value.reset( |
83 new base::FundamentalValue(static_cast<double>(kUint32Value))); | 83 new base::FundamentalValue(static_cast<double>(kUint32Value))); |
84 EXPECT_TRUE(value->Equals(expected_value.get())); | 84 EXPECT_TRUE(value->Equals(expected_value.get())); |
85 // Pop an int64_t. | 85 // Pop an int64_t. |
86 value.reset(PopDataAsValue(&reader)); | 86 value = PopDataAsValue(&reader); |
87 ASSERT_TRUE(value.get() != NULL); | 87 ASSERT_TRUE(value.get() != NULL); |
88 expected_value.reset( | 88 expected_value.reset( |
89 new base::FundamentalValue(static_cast<double>(kInt64Value))); | 89 new base::FundamentalValue(static_cast<double>(kInt64Value))); |
90 EXPECT_TRUE(value->Equals(expected_value.get())); | 90 EXPECT_TRUE(value->Equals(expected_value.get())); |
91 // Pop a uint64_t. | 91 // Pop a uint64_t. |
92 value.reset(PopDataAsValue(&reader)); | 92 value = PopDataAsValue(&reader); |
93 ASSERT_TRUE(value.get() != NULL); | 93 ASSERT_TRUE(value.get() != NULL); |
94 expected_value.reset( | 94 expected_value.reset( |
95 new base::FundamentalValue(static_cast<double>(kUint64Value))); | 95 new base::FundamentalValue(static_cast<double>(kUint64Value))); |
96 EXPECT_TRUE(value->Equals(expected_value.get())); | 96 EXPECT_TRUE(value->Equals(expected_value.get())); |
97 // Pop a double. | 97 // Pop a double. |
98 value.reset(PopDataAsValue(&reader)); | 98 value = PopDataAsValue(&reader); |
99 ASSERT_TRUE(value.get() != NULL); | 99 ASSERT_TRUE(value.get() != NULL); |
100 expected_value.reset(new base::FundamentalValue(kDoubleValue)); | 100 expected_value.reset(new base::FundamentalValue(kDoubleValue)); |
101 EXPECT_TRUE(value->Equals(expected_value.get())); | 101 EXPECT_TRUE(value->Equals(expected_value.get())); |
102 // Pop a string. | 102 // Pop a string. |
103 value.reset(PopDataAsValue(&reader)); | 103 value = PopDataAsValue(&reader); |
104 ASSERT_TRUE(value.get() != NULL); | 104 ASSERT_TRUE(value.get() != NULL); |
105 expected_value.reset(new base::StringValue(kStringValue)); | 105 expected_value.reset(new base::StringValue(kStringValue)); |
106 EXPECT_TRUE(value->Equals(expected_value.get())); | 106 EXPECT_TRUE(value->Equals(expected_value.get())); |
107 // Pop an empty string. | 107 // Pop an empty string. |
108 value.reset(PopDataAsValue(&reader)); | 108 value = PopDataAsValue(&reader); |
109 ASSERT_TRUE(value.get() != NULL); | 109 ASSERT_TRUE(value.get() != NULL); |
110 expected_value.reset(new base::StringValue(kEmptyStringValue)); | 110 expected_value.reset(new base::StringValue(kEmptyStringValue)); |
111 EXPECT_TRUE(value->Equals(expected_value.get())); | 111 EXPECT_TRUE(value->Equals(expected_value.get())); |
112 // Pop an object path. | 112 // Pop an object path. |
113 value.reset(PopDataAsValue(&reader)); | 113 value = PopDataAsValue(&reader); |
114 ASSERT_TRUE(value.get() != NULL); | 114 ASSERT_TRUE(value.get() != NULL); |
115 expected_value.reset(new base::StringValue(kObjectPathValue.value())); | 115 expected_value.reset(new base::StringValue(kObjectPathValue.value())); |
116 EXPECT_TRUE(value->Equals(expected_value.get())); | 116 EXPECT_TRUE(value->Equals(expected_value.get())); |
117 } | 117 } |
118 | 118 |
119 TEST(ValuesUtilTest, PopVariant) { | 119 TEST(ValuesUtilTest, PopVariant) { |
120 std::unique_ptr<Response> response(Response::CreateEmpty()); | 120 std::unique_ptr<Response> response(Response::CreateEmpty()); |
121 // Append variant values. | 121 // Append variant values. |
122 MessageWriter writer(response.get()); | 122 MessageWriter writer(response.get()); |
123 const bool kBoolValue = true; | 123 const bool kBoolValue = true; |
124 writer.AppendVariantOfBool(kBoolValue); | 124 writer.AppendVariantOfBool(kBoolValue); |
125 const int32_t kInt32Value = -45; | 125 const int32_t kInt32Value = -45; |
126 writer.AppendVariantOfInt32(kInt32Value); | 126 writer.AppendVariantOfInt32(kInt32Value); |
127 const double kDoubleValue = 4.9; | 127 const double kDoubleValue = 4.9; |
128 writer.AppendVariantOfDouble(kDoubleValue); | 128 writer.AppendVariantOfDouble(kDoubleValue); |
129 const std::string kStringValue = "fifty"; | 129 const std::string kStringValue = "fifty"; |
130 writer.AppendVariantOfString(kStringValue); | 130 writer.AppendVariantOfString(kStringValue); |
131 | 131 |
132 MessageReader reader(response.get()); | 132 MessageReader reader(response.get()); |
133 std::unique_ptr<base::Value> value; | 133 std::unique_ptr<base::Value> value; |
134 std::unique_ptr<base::Value> expected_value; | 134 std::unique_ptr<base::Value> expected_value; |
135 // Pop a bool. | 135 // Pop a bool. |
136 value.reset(PopDataAsValue(&reader)); | 136 value = PopDataAsValue(&reader); |
137 ASSERT_TRUE(value.get() != NULL); | 137 ASSERT_TRUE(value.get() != NULL); |
138 expected_value.reset(new base::FundamentalValue(kBoolValue)); | 138 expected_value.reset(new base::FundamentalValue(kBoolValue)); |
139 EXPECT_TRUE(value->Equals(expected_value.get())); | 139 EXPECT_TRUE(value->Equals(expected_value.get())); |
140 // Pop an int32_t. | 140 // Pop an int32_t. |
141 value.reset(PopDataAsValue(&reader)); | 141 value = PopDataAsValue(&reader); |
142 ASSERT_TRUE(value.get() != NULL); | 142 ASSERT_TRUE(value.get() != NULL); |
143 expected_value.reset(new base::FundamentalValue(kInt32Value)); | 143 expected_value.reset(new base::FundamentalValue(kInt32Value)); |
144 EXPECT_TRUE(value->Equals(expected_value.get())); | 144 EXPECT_TRUE(value->Equals(expected_value.get())); |
145 // Pop a double. | 145 // Pop a double. |
146 value.reset(PopDataAsValue(&reader)); | 146 value = PopDataAsValue(&reader); |
147 ASSERT_TRUE(value.get() != NULL); | 147 ASSERT_TRUE(value.get() != NULL); |
148 expected_value.reset(new base::FundamentalValue(kDoubleValue)); | 148 expected_value.reset(new base::FundamentalValue(kDoubleValue)); |
149 EXPECT_TRUE(value->Equals(expected_value.get())); | 149 EXPECT_TRUE(value->Equals(expected_value.get())); |
150 // Pop a string. | 150 // Pop a string. |
151 value.reset(PopDataAsValue(&reader)); | 151 value = PopDataAsValue(&reader); |
152 ASSERT_TRUE(value.get() != NULL); | 152 ASSERT_TRUE(value.get() != NULL); |
153 expected_value.reset(new base::StringValue(kStringValue)); | 153 expected_value.reset(new base::StringValue(kStringValue)); |
154 EXPECT_TRUE(value->Equals(expected_value.get())); | 154 EXPECT_TRUE(value->Equals(expected_value.get())); |
155 } | 155 } |
156 | 156 |
157 // Pop extremely large integers which cannot be precisely represented in | 157 // Pop extremely large integers which cannot be precisely represented in |
158 // double. | 158 // double. |
159 TEST(ValuesUtilTest, PopExtremelyLargeIntegers) { | 159 TEST(ValuesUtilTest, PopExtremelyLargeIntegers) { |
160 std::unique_ptr<Response> response(Response::CreateEmpty()); | 160 std::unique_ptr<Response> response(Response::CreateEmpty()); |
161 // Append large integers. | 161 // Append large integers. |
162 MessageWriter writer(response.get()); | 162 MessageWriter writer(response.get()); |
163 const int64_t kInt64Value = -123456789012345689LL; | 163 const int64_t kInt64Value = -123456789012345689LL; |
164 writer.AppendInt64(kInt64Value); | 164 writer.AppendInt64(kInt64Value); |
165 const uint64_t kUint64Value = 9876543210987654321ULL; | 165 const uint64_t kUint64Value = 9876543210987654321ULL; |
166 writer.AppendUint64(kUint64Value); | 166 writer.AppendUint64(kUint64Value); |
167 | 167 |
168 MessageReader reader(response.get()); | 168 MessageReader reader(response.get()); |
169 std::unique_ptr<base::Value> value; | 169 std::unique_ptr<base::Value> value; |
170 std::unique_ptr<base::Value> expected_value; | 170 std::unique_ptr<base::Value> expected_value; |
171 double double_value = 0; | 171 double double_value = 0; |
172 // Pop an int64_t. | 172 // Pop an int64_t. |
173 value.reset(PopDataAsValue(&reader)); | 173 value = PopDataAsValue(&reader); |
174 ASSERT_TRUE(value.get() != NULL); | 174 ASSERT_TRUE(value.get() != NULL); |
175 expected_value.reset( | 175 expected_value.reset( |
176 new base::FundamentalValue(static_cast<double>(kInt64Value))); | 176 new base::FundamentalValue(static_cast<double>(kInt64Value))); |
177 EXPECT_TRUE(value->Equals(expected_value.get())); | 177 EXPECT_TRUE(value->Equals(expected_value.get())); |
178 ASSERT_TRUE(value->GetAsDouble(&double_value)); | 178 ASSERT_TRUE(value->GetAsDouble(&double_value)); |
179 EXPECT_NE(kInt64Value, static_cast<int64_t>(double_value)); | 179 EXPECT_NE(kInt64Value, static_cast<int64_t>(double_value)); |
180 // Pop a uint64_t. | 180 // Pop a uint64_t. |
181 value.reset(PopDataAsValue(&reader)); | 181 value = PopDataAsValue(&reader); |
182 ASSERT_TRUE(value.get() != NULL); | 182 ASSERT_TRUE(value.get() != NULL); |
183 expected_value.reset( | 183 expected_value.reset( |
184 new base::FundamentalValue(static_cast<double>(kUint64Value))); | 184 new base::FundamentalValue(static_cast<double>(kUint64Value))); |
185 EXPECT_TRUE(value->Equals(expected_value.get())); | 185 EXPECT_TRUE(value->Equals(expected_value.get())); |
186 ASSERT_TRUE(value->GetAsDouble(&double_value)); | 186 ASSERT_TRUE(value->GetAsDouble(&double_value)); |
187 EXPECT_NE(kUint64Value, static_cast<uint64_t>(double_value)); | 187 EXPECT_NE(kUint64Value, static_cast<uint64_t>(double_value)); |
188 } | 188 } |
189 | 189 |
190 TEST(ValuesUtilTest, PopIntArray) { | 190 TEST(ValuesUtilTest, PopIntArray) { |
191 std::unique_ptr<Response> response(Response::CreateEmpty()); | 191 std::unique_ptr<Response> response(Response::CreateEmpty()); |
(...skipping 209 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
401 | 401 |
402 std::unique_ptr<Response> response(Response::CreateEmpty()); | 402 std::unique_ptr<Response> response(Response::CreateEmpty()); |
403 MessageWriter writer(response.get()); | 403 MessageWriter writer(response.get()); |
404 AppendBasicTypeValueData(&writer, kBoolValue); | 404 AppendBasicTypeValueData(&writer, kBoolValue); |
405 AppendBasicTypeValueData(&writer, kIntegerValue); | 405 AppendBasicTypeValueData(&writer, kIntegerValue); |
406 AppendBasicTypeValueData(&writer, kDoubleValue); | 406 AppendBasicTypeValueData(&writer, kDoubleValue); |
407 AppendBasicTypeValueData(&writer, kStringValue); | 407 AppendBasicTypeValueData(&writer, kStringValue); |
408 | 408 |
409 MessageReader reader(response.get()); | 409 MessageReader reader(response.get()); |
410 std::unique_ptr<base::Value> value; | 410 std::unique_ptr<base::Value> value; |
411 value.reset(PopDataAsValue(&reader)); | 411 value = PopDataAsValue(&reader); |
412 ASSERT_TRUE(value.get() != NULL); | 412 ASSERT_TRUE(value.get() != NULL); |
413 EXPECT_TRUE(value->Equals(&kBoolValue)); | 413 EXPECT_TRUE(value->Equals(&kBoolValue)); |
414 value.reset(PopDataAsValue(&reader)); | 414 value = PopDataAsValue(&reader); |
415 ASSERT_TRUE(value.get() != NULL); | 415 ASSERT_TRUE(value.get() != NULL); |
416 EXPECT_TRUE(value->Equals(&kIntegerValue)); | 416 EXPECT_TRUE(value->Equals(&kIntegerValue)); |
417 value.reset(PopDataAsValue(&reader)); | 417 value = PopDataAsValue(&reader); |
418 ASSERT_TRUE(value.get() != NULL); | 418 ASSERT_TRUE(value.get() != NULL); |
419 EXPECT_TRUE(value->Equals(&kDoubleValue)); | 419 EXPECT_TRUE(value->Equals(&kDoubleValue)); |
420 value.reset(PopDataAsValue(&reader)); | 420 value = PopDataAsValue(&reader); |
421 ASSERT_TRUE(value.get() != NULL); | 421 ASSERT_TRUE(value.get() != NULL); |
422 EXPECT_TRUE(value->Equals(&kStringValue)); | 422 EXPECT_TRUE(value->Equals(&kStringValue)); |
423 } | 423 } |
424 | 424 |
425 TEST(ValuesUtilTest, AppendBasicTypesAsVariant) { | 425 TEST(ValuesUtilTest, AppendBasicTypesAsVariant) { |
426 const base::FundamentalValue kBoolValue(false); | 426 const base::FundamentalValue kBoolValue(false); |
427 const base::FundamentalValue kIntegerValue(42); | 427 const base::FundamentalValue kIntegerValue(42); |
428 const base::FundamentalValue kDoubleValue(4.2); | 428 const base::FundamentalValue kDoubleValue(4.2); |
429 const base::StringValue kStringValue("string"); | 429 const base::StringValue kStringValue("string"); |
430 | 430 |
431 std::unique_ptr<Response> response(Response::CreateEmpty()); | 431 std::unique_ptr<Response> response(Response::CreateEmpty()); |
432 MessageWriter writer(response.get()); | 432 MessageWriter writer(response.get()); |
433 AppendBasicTypeValueDataAsVariant(&writer, kBoolValue); | 433 AppendBasicTypeValueDataAsVariant(&writer, kBoolValue); |
434 AppendBasicTypeValueDataAsVariant(&writer, kIntegerValue); | 434 AppendBasicTypeValueDataAsVariant(&writer, kIntegerValue); |
435 AppendBasicTypeValueDataAsVariant(&writer, kDoubleValue); | 435 AppendBasicTypeValueDataAsVariant(&writer, kDoubleValue); |
436 AppendBasicTypeValueDataAsVariant(&writer, kStringValue); | 436 AppendBasicTypeValueDataAsVariant(&writer, kStringValue); |
437 | 437 |
438 MessageReader reader(response.get()); | 438 MessageReader reader(response.get()); |
439 std::unique_ptr<base::Value> value; | 439 std::unique_ptr<base::Value> value; |
440 value.reset(PopDataAsValue(&reader)); | 440 value = PopDataAsValue(&reader); |
441 ASSERT_TRUE(value.get() != NULL); | 441 ASSERT_TRUE(value.get() != NULL); |
442 EXPECT_TRUE(value->Equals(&kBoolValue)); | 442 EXPECT_TRUE(value->Equals(&kBoolValue)); |
443 value.reset(PopDataAsValue(&reader)); | 443 value = PopDataAsValue(&reader); |
444 ASSERT_TRUE(value.get() != NULL); | 444 ASSERT_TRUE(value.get() != NULL); |
445 EXPECT_TRUE(value->Equals(&kIntegerValue)); | 445 EXPECT_TRUE(value->Equals(&kIntegerValue)); |
446 value.reset(PopDataAsValue(&reader)); | 446 value = PopDataAsValue(&reader); |
447 ASSERT_TRUE(value.get() != NULL); | 447 ASSERT_TRUE(value.get() != NULL); |
448 EXPECT_TRUE(value->Equals(&kDoubleValue)); | 448 EXPECT_TRUE(value->Equals(&kDoubleValue)); |
449 value.reset(PopDataAsValue(&reader)); | 449 value = PopDataAsValue(&reader); |
450 ASSERT_TRUE(value.get() != NULL); | 450 ASSERT_TRUE(value.get() != NULL); |
451 EXPECT_TRUE(value->Equals(&kStringValue)); | 451 EXPECT_TRUE(value->Equals(&kStringValue)); |
452 } | 452 } |
453 | 453 |
454 TEST(ValuesUtilTest, AppendValueDataBasicTypes) { | 454 TEST(ValuesUtilTest, AppendValueDataBasicTypes) { |
455 const base::FundamentalValue kBoolValue(false); | 455 const base::FundamentalValue kBoolValue(false); |
456 const base::FundamentalValue kIntegerValue(42); | 456 const base::FundamentalValue kIntegerValue(42); |
457 const base::FundamentalValue kDoubleValue(4.2); | 457 const base::FundamentalValue kDoubleValue(4.2); |
458 const base::StringValue kStringValue("string"); | 458 const base::StringValue kStringValue("string"); |
459 | 459 |
460 std::unique_ptr<Response> response(Response::CreateEmpty()); | 460 std::unique_ptr<Response> response(Response::CreateEmpty()); |
461 MessageWriter writer(response.get()); | 461 MessageWriter writer(response.get()); |
462 AppendValueData(&writer, kBoolValue); | 462 AppendValueData(&writer, kBoolValue); |
463 AppendValueData(&writer, kIntegerValue); | 463 AppendValueData(&writer, kIntegerValue); |
464 AppendValueData(&writer, kDoubleValue); | 464 AppendValueData(&writer, kDoubleValue); |
465 AppendValueData(&writer, kStringValue); | 465 AppendValueData(&writer, kStringValue); |
466 | 466 |
467 MessageReader reader(response.get()); | 467 MessageReader reader(response.get()); |
468 std::unique_ptr<base::Value> value; | 468 std::unique_ptr<base::Value> value; |
469 value.reset(PopDataAsValue(&reader)); | 469 value = PopDataAsValue(&reader); |
470 ASSERT_TRUE(value.get() != NULL); | 470 ASSERT_TRUE(value.get() != NULL); |
471 EXPECT_TRUE(value->Equals(&kBoolValue)); | 471 EXPECT_TRUE(value->Equals(&kBoolValue)); |
472 value.reset(PopDataAsValue(&reader)); | 472 value = PopDataAsValue(&reader); |
473 ASSERT_TRUE(value.get() != NULL); | 473 ASSERT_TRUE(value.get() != NULL); |
474 EXPECT_TRUE(value->Equals(&kIntegerValue)); | 474 EXPECT_TRUE(value->Equals(&kIntegerValue)); |
475 value.reset(PopDataAsValue(&reader)); | 475 value = PopDataAsValue(&reader); |
476 ASSERT_TRUE(value.get() != NULL); | 476 ASSERT_TRUE(value.get() != NULL); |
477 EXPECT_TRUE(value->Equals(&kDoubleValue)); | 477 EXPECT_TRUE(value->Equals(&kDoubleValue)); |
478 value.reset(PopDataAsValue(&reader)); | 478 value = PopDataAsValue(&reader); |
479 ASSERT_TRUE(value.get() != NULL); | 479 ASSERT_TRUE(value.get() != NULL); |
480 EXPECT_TRUE(value->Equals(&kStringValue)); | 480 EXPECT_TRUE(value->Equals(&kStringValue)); |
481 } | 481 } |
482 | 482 |
483 TEST(ValuesUtilTest, AppendValueDataAsVariantBasicTypes) { | 483 TEST(ValuesUtilTest, AppendValueDataAsVariantBasicTypes) { |
484 const base::FundamentalValue kBoolValue(false); | 484 const base::FundamentalValue kBoolValue(false); |
485 const base::FundamentalValue kIntegerValue(42); | 485 const base::FundamentalValue kIntegerValue(42); |
486 const base::FundamentalValue kDoubleValue(4.2); | 486 const base::FundamentalValue kDoubleValue(4.2); |
487 const base::StringValue kStringValue("string"); | 487 const base::StringValue kStringValue("string"); |
488 | 488 |
489 std::unique_ptr<Response> response(Response::CreateEmpty()); | 489 std::unique_ptr<Response> response(Response::CreateEmpty()); |
490 MessageWriter writer(response.get()); | 490 MessageWriter writer(response.get()); |
491 AppendValueDataAsVariant(&writer, kBoolValue); | 491 AppendValueDataAsVariant(&writer, kBoolValue); |
492 AppendValueDataAsVariant(&writer, kIntegerValue); | 492 AppendValueDataAsVariant(&writer, kIntegerValue); |
493 AppendValueDataAsVariant(&writer, kDoubleValue); | 493 AppendValueDataAsVariant(&writer, kDoubleValue); |
494 AppendValueDataAsVariant(&writer, kStringValue); | 494 AppendValueDataAsVariant(&writer, kStringValue); |
495 | 495 |
496 MessageReader reader(response.get()); | 496 MessageReader reader(response.get()); |
497 std::unique_ptr<base::Value> value; | 497 std::unique_ptr<base::Value> value; |
498 value.reset(PopDataAsValue(&reader)); | 498 value = PopDataAsValue(&reader); |
499 ASSERT_TRUE(value.get() != NULL); | 499 ASSERT_TRUE(value.get() != NULL); |
500 EXPECT_TRUE(value->Equals(&kBoolValue)); | 500 EXPECT_TRUE(value->Equals(&kBoolValue)); |
501 value.reset(PopDataAsValue(&reader)); | 501 value = PopDataAsValue(&reader); |
502 ASSERT_TRUE(value.get() != NULL); | 502 ASSERT_TRUE(value.get() != NULL); |
503 EXPECT_TRUE(value->Equals(&kIntegerValue)); | 503 EXPECT_TRUE(value->Equals(&kIntegerValue)); |
504 value.reset(PopDataAsValue(&reader)); | 504 value = PopDataAsValue(&reader); |
505 ASSERT_TRUE(value.get() != NULL); | 505 ASSERT_TRUE(value.get() != NULL); |
506 EXPECT_TRUE(value->Equals(&kDoubleValue)); | 506 EXPECT_TRUE(value->Equals(&kDoubleValue)); |
507 value.reset(PopDataAsValue(&reader)); | 507 value = PopDataAsValue(&reader); |
508 ASSERT_TRUE(value.get() != NULL); | 508 ASSERT_TRUE(value.get() != NULL); |
509 EXPECT_TRUE(value->Equals(&kStringValue)); | 509 EXPECT_TRUE(value->Equals(&kStringValue)); |
510 } | 510 } |
511 | 511 |
512 TEST(ValuesUtilTest, AppendDictionary) { | 512 TEST(ValuesUtilTest, AppendDictionary) { |
513 // Set up the input dictionary. | 513 // Set up the input dictionary. |
514 const std::string kKey1 = "one"; | 514 const std::string kKey1 = "one"; |
515 const std::string kKey2 = "two"; | 515 const std::string kKey2 = "two"; |
516 const std::string kKey3 = "three"; | 516 const std::string kKey3 = "three"; |
517 const std::string kKey4 = "four"; | 517 const std::string kKey4 = "four"; |
(...skipping 23 matching lines...) Expand all Loading... |
541 | 541 |
542 std::unique_ptr<Response> response(Response::CreateEmpty()); | 542 std::unique_ptr<Response> response(Response::CreateEmpty()); |
543 MessageWriter writer(response.get()); | 543 MessageWriter writer(response.get()); |
544 AppendValueData(&writer, test_dictionary); | 544 AppendValueData(&writer, test_dictionary); |
545 base::FundamentalValue int_value(kInt32Value); | 545 base::FundamentalValue int_value(kInt32Value); |
546 AppendValueData(&writer, int_value); | 546 AppendValueData(&writer, int_value); |
547 | 547 |
548 // Read the data. | 548 // Read the data. |
549 MessageReader reader(response.get()); | 549 MessageReader reader(response.get()); |
550 std::unique_ptr<base::Value> value; | 550 std::unique_ptr<base::Value> value; |
551 value.reset(PopDataAsValue(&reader)); | 551 value = PopDataAsValue(&reader); |
552 ASSERT_TRUE(value.get() != NULL); | 552 ASSERT_TRUE(value.get() != NULL); |
553 EXPECT_TRUE(value->Equals(&test_dictionary)); | 553 EXPECT_TRUE(value->Equals(&test_dictionary)); |
554 value.reset(PopDataAsValue(&reader)); | 554 value = PopDataAsValue(&reader); |
555 ASSERT_TRUE(value.get() != NULL); | 555 ASSERT_TRUE(value.get() != NULL); |
556 EXPECT_TRUE(value->Equals(&int_value)); | 556 EXPECT_TRUE(value->Equals(&int_value)); |
557 } | 557 } |
558 | 558 |
559 TEST(ValuesUtilTest, AppendDictionaryAsVariant) { | 559 TEST(ValuesUtilTest, AppendDictionaryAsVariant) { |
560 // Set up the input dictionary. | 560 // Set up the input dictionary. |
561 const std::string kKey1 = "one"; | 561 const std::string kKey1 = "one"; |
562 const std::string kKey2 = "two"; | 562 const std::string kKey2 = "two"; |
563 const std::string kKey3 = "three"; | 563 const std::string kKey3 = "three"; |
564 const std::string kKey4 = "four"; | 564 const std::string kKey4 = "four"; |
(...skipping 23 matching lines...) Expand all Loading... |
588 | 588 |
589 std::unique_ptr<Response> response(Response::CreateEmpty()); | 589 std::unique_ptr<Response> response(Response::CreateEmpty()); |
590 MessageWriter writer(response.get()); | 590 MessageWriter writer(response.get()); |
591 AppendValueDataAsVariant(&writer, test_dictionary); | 591 AppendValueDataAsVariant(&writer, test_dictionary); |
592 base::FundamentalValue int_value(kInt32Value); | 592 base::FundamentalValue int_value(kInt32Value); |
593 AppendValueData(&writer, int_value); | 593 AppendValueData(&writer, int_value); |
594 | 594 |
595 // Read the data. | 595 // Read the data. |
596 MessageReader reader(response.get()); | 596 MessageReader reader(response.get()); |
597 std::unique_ptr<base::Value> value; | 597 std::unique_ptr<base::Value> value; |
598 value.reset(PopDataAsValue(&reader)); | 598 value = PopDataAsValue(&reader); |
599 ASSERT_TRUE(value.get() != NULL); | 599 ASSERT_TRUE(value.get() != NULL); |
600 EXPECT_TRUE(value->Equals(&test_dictionary)); | 600 EXPECT_TRUE(value->Equals(&test_dictionary)); |
601 value.reset(PopDataAsValue(&reader)); | 601 value = PopDataAsValue(&reader); |
602 ASSERT_TRUE(value.get() != NULL); | 602 ASSERT_TRUE(value.get() != NULL); |
603 EXPECT_TRUE(value->Equals(&int_value)); | 603 EXPECT_TRUE(value->Equals(&int_value)); |
604 } | 604 } |
605 | 605 |
606 TEST(ValuesUtilTest, AppendList) { | 606 TEST(ValuesUtilTest, AppendList) { |
607 // Set up the input list. | 607 // Set up the input list. |
608 const std::string kKey1 = "one"; | 608 const std::string kKey1 = "one"; |
609 const std::string kKey2 = "two"; | 609 const std::string kKey2 = "two"; |
610 | 610 |
611 const bool kBoolValue = true; | 611 const bool kBoolValue = true; |
(...skipping 19 matching lines...) Expand all Loading... |
631 | 631 |
632 std::unique_ptr<Response> response(Response::CreateEmpty()); | 632 std::unique_ptr<Response> response(Response::CreateEmpty()); |
633 MessageWriter writer(response.get()); | 633 MessageWriter writer(response.get()); |
634 AppendValueData(&writer, test_list); | 634 AppendValueData(&writer, test_list); |
635 base::FundamentalValue int_value(kInt32Value); | 635 base::FundamentalValue int_value(kInt32Value); |
636 AppendValueData(&writer, int_value); | 636 AppendValueData(&writer, int_value); |
637 | 637 |
638 // Read the data. | 638 // Read the data. |
639 MessageReader reader(response.get()); | 639 MessageReader reader(response.get()); |
640 std::unique_ptr<base::Value> value; | 640 std::unique_ptr<base::Value> value; |
641 value.reset(PopDataAsValue(&reader)); | 641 value = PopDataAsValue(&reader); |
642 ASSERT_TRUE(value.get() != NULL); | 642 ASSERT_TRUE(value.get() != NULL); |
643 EXPECT_TRUE(value->Equals(&test_list)); | 643 EXPECT_TRUE(value->Equals(&test_list)); |
644 value.reset(PopDataAsValue(&reader)); | 644 value = PopDataAsValue(&reader); |
645 ASSERT_TRUE(value.get() != NULL); | 645 ASSERT_TRUE(value.get() != NULL); |
646 EXPECT_TRUE(value->Equals(&int_value)); | 646 EXPECT_TRUE(value->Equals(&int_value)); |
647 } | 647 } |
648 | 648 |
649 TEST(ValuesUtilTest, AppendListAsVariant) { | 649 TEST(ValuesUtilTest, AppendListAsVariant) { |
650 // Set up the input list. | 650 // Set up the input list. |
651 const std::string kKey1 = "one"; | 651 const std::string kKey1 = "one"; |
652 const std::string kKey2 = "two"; | 652 const std::string kKey2 = "two"; |
653 | 653 |
654 const bool kBoolValue = true; | 654 const bool kBoolValue = true; |
(...skipping 19 matching lines...) Expand all Loading... |
674 | 674 |
675 std::unique_ptr<Response> response(Response::CreateEmpty()); | 675 std::unique_ptr<Response> response(Response::CreateEmpty()); |
676 MessageWriter writer(response.get()); | 676 MessageWriter writer(response.get()); |
677 AppendValueDataAsVariant(&writer, test_list); | 677 AppendValueDataAsVariant(&writer, test_list); |
678 base::FundamentalValue int_value(kInt32Value); | 678 base::FundamentalValue int_value(kInt32Value); |
679 AppendValueData(&writer, int_value); | 679 AppendValueData(&writer, int_value); |
680 | 680 |
681 // Read the data. | 681 // Read the data. |
682 MessageReader reader(response.get()); | 682 MessageReader reader(response.get()); |
683 std::unique_ptr<base::Value> value; | 683 std::unique_ptr<base::Value> value; |
684 value.reset(PopDataAsValue(&reader)); | 684 value = PopDataAsValue(&reader); |
685 ASSERT_TRUE(value.get() != NULL); | 685 ASSERT_TRUE(value.get() != NULL); |
686 EXPECT_TRUE(value->Equals(&test_list)); | 686 EXPECT_TRUE(value->Equals(&test_list)); |
687 value.reset(PopDataAsValue(&reader)); | 687 value = PopDataAsValue(&reader); |
688 ASSERT_TRUE(value.get() != NULL); | 688 ASSERT_TRUE(value.get() != NULL); |
689 EXPECT_TRUE(value->Equals(&int_value)); | 689 EXPECT_TRUE(value->Equals(&int_value)); |
690 } | 690 } |
691 | 691 |
692 } // namespace dbus | 692 } // namespace dbus |
OLD | NEW |