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: base/values_unittest.cc

Issue 2476493003: Remove FundamentalValue
Patch Set: Fix Created 4 years, 1 month 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 | « base/values.cc ('k') | chrome/browser/chromeos/arc/arc_policy_bridge_unittest.cc » ('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 (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 "base/values.h" 5 #include "base/values.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #include <limits> 9 #include <limits>
10 #include <memory> 10 #include <memory>
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
55 std::string bookmark_name = "Unnamed"; 55 std::string bookmark_name = "Unnamed";
56 ASSERT_TRUE(bookmark->GetString("name", &bookmark_name)); 56 ASSERT_TRUE(bookmark->GetString("name", &bookmark_name));
57 ASSERT_EQ(std::string("Froogle"), bookmark_name); 57 ASSERT_EQ(std::string("Froogle"), bookmark_name);
58 std::string bookmark_url; 58 std::string bookmark_url;
59 ASSERT_TRUE(bookmark->GetString("url", &bookmark_url)); 59 ASSERT_TRUE(bookmark->GetString("url", &bookmark_url));
60 ASSERT_EQ(std::string("http://froogle.com"), bookmark_url); 60 ASSERT_EQ(std::string("http://froogle.com"), bookmark_url);
61 } 61 }
62 62
63 TEST(ValuesTest, List) { 63 TEST(ValuesTest, List) {
64 std::unique_ptr<ListValue> mixed_list(new ListValue()); 64 std::unique_ptr<ListValue> mixed_list(new ListValue());
65 mixed_list->Set(0, MakeUnique<FundamentalValue>(true)); 65 mixed_list->Set(0, MakeUnique<Value>(true));
66 mixed_list->Set(1, MakeUnique<FundamentalValue>(42)); 66 mixed_list->Set(1, MakeUnique<Value>(42));
67 mixed_list->Set(2, MakeUnique<FundamentalValue>(88.8)); 67 mixed_list->Set(2, MakeUnique<Value>(88.8));
68 mixed_list->Set(3, MakeUnique<StringValue>("foo")); 68 mixed_list->Set(3, MakeUnique<StringValue>("foo"));
69 ASSERT_EQ(4u, mixed_list->GetSize()); 69 ASSERT_EQ(4u, mixed_list->GetSize());
70 70
71 Value *value = NULL; 71 Value *value = NULL;
72 bool bool_value = false; 72 bool bool_value = false;
73 int int_value = 0; 73 int int_value = 0;
74 double double_value = 0.0; 74 double double_value = 0.0;
75 std::string string_value; 75 std::string string_value;
76 76
77 ASSERT_FALSE(mixed_list->Get(4, &value)); 77 ASSERT_FALSE(mixed_list->Get(4, &value));
(...skipping 15 matching lines...) Expand all
93 ASSERT_EQ(42, int_value); 93 ASSERT_EQ(42, int_value);
94 // implicit conversion from Integer to Double should be possible. 94 // implicit conversion from Integer to Double should be possible.
95 ASSERT_TRUE(mixed_list->GetDouble(1, &double_value)); 95 ASSERT_TRUE(mixed_list->GetDouble(1, &double_value));
96 ASSERT_EQ(42, double_value); 96 ASSERT_EQ(42, double_value);
97 ASSERT_TRUE(mixed_list->GetDouble(2, &double_value)); 97 ASSERT_TRUE(mixed_list->GetDouble(2, &double_value));
98 ASSERT_EQ(88.8, double_value); 98 ASSERT_EQ(88.8, double_value);
99 ASSERT_TRUE(mixed_list->GetString(3, &string_value)); 99 ASSERT_TRUE(mixed_list->GetString(3, &string_value));
100 ASSERT_EQ("foo", string_value); 100 ASSERT_EQ("foo", string_value);
101 101
102 // Try searching in the mixed list. 102 // Try searching in the mixed list.
103 base::FundamentalValue sought_value(42); 103 base::Value sought_value(42);
104 base::FundamentalValue not_found_value(false); 104 base::Value not_found_value(false);
105 105
106 ASSERT_NE(mixed_list->end(), mixed_list->Find(sought_value)); 106 ASSERT_NE(mixed_list->end(), mixed_list->Find(sought_value));
107 ASSERT_TRUE((*mixed_list->Find(sought_value))->GetAsInteger(&int_value)); 107 ASSERT_TRUE((*mixed_list->Find(sought_value))->GetAsInteger(&int_value));
108 ASSERT_EQ(42, int_value); 108 ASSERT_EQ(42, int_value);
109 ASSERT_EQ(mixed_list->end(), mixed_list->Find(not_found_value)); 109 ASSERT_EQ(mixed_list->end(), mixed_list->Find(not_found_value));
110 } 110 }
111 111
112 TEST(ValuesTest, BinaryValue) { 112 TEST(ValuesTest, BinaryValue) {
113 // Default constructor creates a BinaryValue with a null buffer and size 0. 113 // Default constructor creates a BinaryValue with a null buffer and size 0.
114 std::unique_ptr<BinaryValue> binary(new BinaryValue()); 114 std::unique_ptr<BinaryValue> binary(new BinaryValue());
(...skipping 278 matching lines...) Expand 10 before | Expand all | Expand 10 after
393 ASSERT_TRUE(removed_item); 393 ASSERT_TRUE(removed_item);
394 EXPECT_TRUE(removed_item->IsType(base::Value::TYPE_BOOLEAN)); 394 EXPECT_TRUE(removed_item->IsType(base::Value::TYPE_BOOLEAN));
395 EXPECT_TRUE(dict.empty()); 395 EXPECT_TRUE(dict.empty());
396 } 396 }
397 397
398 TEST(ValuesTest, DeepCopy) { 398 TEST(ValuesTest, DeepCopy) {
399 DictionaryValue original_dict; 399 DictionaryValue original_dict;
400 std::unique_ptr<Value> scoped_null = Value::CreateNullValue(); 400 std::unique_ptr<Value> scoped_null = Value::CreateNullValue();
401 Value* original_null = scoped_null.get(); 401 Value* original_null = scoped_null.get();
402 original_dict.Set("null", std::move(scoped_null)); 402 original_dict.Set("null", std::move(scoped_null));
403 std::unique_ptr<FundamentalValue> scoped_bool(new FundamentalValue(true)); 403 std::unique_ptr<Value> scoped_bool(new Value(true));
404 FundamentalValue* original_bool = scoped_bool.get(); 404 Value* original_bool = scoped_bool.get();
405 original_dict.Set("bool", std::move(scoped_bool)); 405 original_dict.Set("bool", std::move(scoped_bool));
406 std::unique_ptr<FundamentalValue> scoped_int(new FundamentalValue(42)); 406 std::unique_ptr<Value> scoped_int(new Value(42));
407 FundamentalValue* original_int = scoped_int.get(); 407 Value* original_int = scoped_int.get();
408 original_dict.Set("int", std::move(scoped_int)); 408 original_dict.Set("int", std::move(scoped_int));
409 std::unique_ptr<FundamentalValue> scoped_double(new FundamentalValue(3.14)); 409 std::unique_ptr<Value> scoped_double(new Value(3.14));
410 FundamentalValue* original_double = scoped_double.get(); 410 Value* original_double = scoped_double.get();
411 original_dict.Set("double", std::move(scoped_double)); 411 original_dict.Set("double", std::move(scoped_double));
412 std::unique_ptr<StringValue> scoped_string(new StringValue("hello")); 412 std::unique_ptr<StringValue> scoped_string(new StringValue("hello"));
413 StringValue* original_string = scoped_string.get(); 413 StringValue* original_string = scoped_string.get();
414 original_dict.Set("string", std::move(scoped_string)); 414 original_dict.Set("string", std::move(scoped_string));
415 std::unique_ptr<StringValue> scoped_string16( 415 std::unique_ptr<StringValue> scoped_string16(
416 new StringValue(ASCIIToUTF16("hello16"))); 416 new StringValue(ASCIIToUTF16("hello16")));
417 StringValue* original_string16 = scoped_string16.get(); 417 StringValue* original_string16 = scoped_string16.get();
418 original_dict.Set("string16", std::move(scoped_string16)); 418 original_dict.Set("string16", std::move(scoped_string16));
419 419
420 std::unique_ptr<char[]> original_buffer(new char[42]); 420 std::unique_ptr<char[]> original_buffer(new char[42]);
421 memset(original_buffer.get(), '!', 42); 421 memset(original_buffer.get(), '!', 42);
422 std::unique_ptr<BinaryValue> scoped_binary( 422 std::unique_ptr<BinaryValue> scoped_binary(
423 new BinaryValue(std::move(original_buffer), 42)); 423 new BinaryValue(std::move(original_buffer), 42));
424 BinaryValue* original_binary = scoped_binary.get(); 424 BinaryValue* original_binary = scoped_binary.get();
425 original_dict.Set("binary", std::move(scoped_binary)); 425 original_dict.Set("binary", std::move(scoped_binary));
426 426
427 std::unique_ptr<ListValue> scoped_list(new ListValue()); 427 std::unique_ptr<ListValue> scoped_list(new ListValue());
428 Value* original_list = scoped_list.get(); 428 Value* original_list = scoped_list.get();
429 std::unique_ptr<FundamentalValue> scoped_list_element_0( 429 std::unique_ptr<Value> scoped_list_element_0(
430 new FundamentalValue(0)); 430 new Value(0));
431 Value* original_list_element_0 = scoped_list_element_0.get(); 431 Value* original_list_element_0 = scoped_list_element_0.get();
432 scoped_list->Append(std::move(scoped_list_element_0)); 432 scoped_list->Append(std::move(scoped_list_element_0));
433 std::unique_ptr<FundamentalValue> scoped_list_element_1( 433 std::unique_ptr<Value> scoped_list_element_1(
434 new FundamentalValue(1)); 434 new Value(1));
435 Value* original_list_element_1 = scoped_list_element_1.get(); 435 Value* original_list_element_1 = scoped_list_element_1.get();
436 scoped_list->Append(std::move(scoped_list_element_1)); 436 scoped_list->Append(std::move(scoped_list_element_1));
437 original_dict.Set("list", std::move(scoped_list)); 437 original_dict.Set("list", std::move(scoped_list));
438 438
439 std::unique_ptr<DictionaryValue> scoped_nested_dictionary( 439 std::unique_ptr<DictionaryValue> scoped_nested_dictionary(
440 new DictionaryValue()); 440 new DictionaryValue());
441 Value* original_nested_dictionary = scoped_nested_dictionary.get(); 441 Value* original_nested_dictionary = scoped_nested_dictionary.get();
442 scoped_nested_dictionary->SetString("key", "value"); 442 scoped_nested_dictionary->SetString("key", "value");
443 original_dict.Set("dictionary", std::move(scoped_nested_dictionary)); 443 original_dict.Set("dictionary", std::move(scoped_nested_dictionary));
444 444
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
550 ASSERT_TRUE(copy_nested_dictionary); 550 ASSERT_TRUE(copy_nested_dictionary);
551 EXPECT_TRUE(copy_nested_dictionary->HasKey("key")); 551 EXPECT_TRUE(copy_nested_dictionary->HasKey("key"));
552 } 552 }
553 553
554 TEST(ValuesTest, Equals) { 554 TEST(ValuesTest, Equals) {
555 std::unique_ptr<Value> null1(Value::CreateNullValue()); 555 std::unique_ptr<Value> null1(Value::CreateNullValue());
556 std::unique_ptr<Value> null2(Value::CreateNullValue()); 556 std::unique_ptr<Value> null2(Value::CreateNullValue());
557 EXPECT_NE(null1.get(), null2.get()); 557 EXPECT_NE(null1.get(), null2.get());
558 EXPECT_TRUE(null1->Equals(null2.get())); 558 EXPECT_TRUE(null1->Equals(null2.get()));
559 559
560 FundamentalValue boolean(false); 560 Value boolean(false);
561 EXPECT_FALSE(null1->Equals(&boolean)); 561 EXPECT_FALSE(null1->Equals(&boolean));
562 562
563 DictionaryValue dv; 563 DictionaryValue dv;
564 dv.SetBoolean("a", false); 564 dv.SetBoolean("a", false);
565 dv.SetInteger("b", 2); 565 dv.SetInteger("b", 2);
566 dv.SetDouble("c", 2.5); 566 dv.SetDouble("c", 2.5);
567 dv.SetString("d1", "string"); 567 dv.SetString("d1", "string");
568 dv.SetString("d2", ASCIIToUTF16("http://google.com")); 568 dv.SetString("d2", ASCIIToUTF16("http://google.com"));
569 dv.Set("e", Value::CreateNullValue()); 569 dv.Set("e", Value::CreateNullValue());
570 570
571 std::unique_ptr<DictionaryValue> copy = dv.CreateDeepCopy(); 571 std::unique_ptr<DictionaryValue> copy = dv.CreateDeepCopy();
572 EXPECT_TRUE(dv.Equals(copy.get())); 572 EXPECT_TRUE(dv.Equals(copy.get()));
573 573
574 std::unique_ptr<ListValue> list(new ListValue); 574 std::unique_ptr<ListValue> list(new ListValue);
575 ListValue* original_list = list.get(); 575 ListValue* original_list = list.get();
576 list->Append(Value::CreateNullValue()); 576 list->Append(Value::CreateNullValue());
577 list->Append(WrapUnique(new DictionaryValue)); 577 list->Append(WrapUnique(new DictionaryValue));
578 std::unique_ptr<Value> list_copy(list->CreateDeepCopy()); 578 std::unique_ptr<Value> list_copy(list->CreateDeepCopy());
579 579
580 dv.Set("f", std::move(list)); 580 dv.Set("f", std::move(list));
581 EXPECT_FALSE(dv.Equals(copy.get())); 581 EXPECT_FALSE(dv.Equals(copy.get()));
582 copy->Set("f", std::move(list_copy)); 582 copy->Set("f", std::move(list_copy));
583 EXPECT_TRUE(dv.Equals(copy.get())); 583 EXPECT_TRUE(dv.Equals(copy.get()));
584 584
585 original_list->Append(MakeUnique<FundamentalValue>(true)); 585 original_list->Append(MakeUnique<Value>(true));
586 EXPECT_FALSE(dv.Equals(copy.get())); 586 EXPECT_FALSE(dv.Equals(copy.get()));
587 587
588 // Check if Equals detects differences in only the keys. 588 // Check if Equals detects differences in only the keys.
589 copy = dv.CreateDeepCopy(); 589 copy = dv.CreateDeepCopy();
590 EXPECT_TRUE(dv.Equals(copy.get())); 590 EXPECT_TRUE(dv.Equals(copy.get()));
591 copy->Remove("a", NULL); 591 copy->Remove("a", NULL);
592 copy->SetBoolean("aa", false); 592 copy->SetBoolean("aa", false);
593 EXPECT_FALSE(dv.Equals(copy.get())); 593 EXPECT_FALSE(dv.Equals(copy.get()));
594 } 594 }
595 595
596 TEST(ValuesTest, StaticEquals) { 596 TEST(ValuesTest, StaticEquals) {
597 std::unique_ptr<Value> null1(Value::CreateNullValue()); 597 std::unique_ptr<Value> null1(Value::CreateNullValue());
598 std::unique_ptr<Value> null2(Value::CreateNullValue()); 598 std::unique_ptr<Value> null2(Value::CreateNullValue());
599 EXPECT_TRUE(Value::Equals(null1.get(), null2.get())); 599 EXPECT_TRUE(Value::Equals(null1.get(), null2.get()));
600 EXPECT_TRUE(Value::Equals(NULL, NULL)); 600 EXPECT_TRUE(Value::Equals(NULL, NULL));
601 601
602 std::unique_ptr<Value> i42(new FundamentalValue(42)); 602 std::unique_ptr<Value> i42(new Value(42));
603 std::unique_ptr<Value> j42(new FundamentalValue(42)); 603 std::unique_ptr<Value> j42(new Value(42));
604 std::unique_ptr<Value> i17(new FundamentalValue(17)); 604 std::unique_ptr<Value> i17(new Value(17));
605 EXPECT_TRUE(Value::Equals(i42.get(), i42.get())); 605 EXPECT_TRUE(Value::Equals(i42.get(), i42.get()));
606 EXPECT_TRUE(Value::Equals(j42.get(), i42.get())); 606 EXPECT_TRUE(Value::Equals(j42.get(), i42.get()));
607 EXPECT_TRUE(Value::Equals(i42.get(), j42.get())); 607 EXPECT_TRUE(Value::Equals(i42.get(), j42.get()));
608 EXPECT_FALSE(Value::Equals(i42.get(), i17.get())); 608 EXPECT_FALSE(Value::Equals(i42.get(), i17.get()));
609 EXPECT_FALSE(Value::Equals(i42.get(), NULL)); 609 EXPECT_FALSE(Value::Equals(i42.get(), NULL));
610 EXPECT_FALSE(Value::Equals(NULL, i42.get())); 610 EXPECT_FALSE(Value::Equals(NULL, i42.get()));
611 611
612 // NULL and Value::CreateNullValue() are intentionally different: We need 612 // NULL and Value::CreateNullValue() are intentionally different: We need
613 // support for NULL as a return value for "undefined" without caring for 613 // support for NULL as a return value for "undefined" without caring for
614 // ownership of the pointer. 614 // ownership of the pointer.
615 EXPECT_FALSE(Value::Equals(null1.get(), NULL)); 615 EXPECT_FALSE(Value::Equals(null1.get(), NULL));
616 EXPECT_FALSE(Value::Equals(NULL, null1.get())); 616 EXPECT_FALSE(Value::Equals(NULL, null1.get()));
617 } 617 }
618 618
619 TEST(ValuesTest, DeepCopyCovariantReturnTypes) { 619 TEST(ValuesTest, DeepCopyCovariantReturnTypes) {
620 DictionaryValue original_dict; 620 DictionaryValue original_dict;
621 std::unique_ptr<Value> scoped_null(Value::CreateNullValue()); 621 std::unique_ptr<Value> scoped_null(Value::CreateNullValue());
622 Value* original_null = scoped_null.get(); 622 Value* original_null = scoped_null.get();
623 original_dict.Set("null", std::move(scoped_null)); 623 original_dict.Set("null", std::move(scoped_null));
624 std::unique_ptr<FundamentalValue> scoped_bool(new FundamentalValue(true)); 624 std::unique_ptr<Value> scoped_bool(new Value(true));
625 Value* original_bool = scoped_bool.get(); 625 Value* original_bool = scoped_bool.get();
626 original_dict.Set("bool", std::move(scoped_bool)); 626 original_dict.Set("bool", std::move(scoped_bool));
627 std::unique_ptr<FundamentalValue> scoped_int(new FundamentalValue(42)); 627 std::unique_ptr<Value> scoped_int(new Value(42));
628 Value* original_int = scoped_int.get(); 628 Value* original_int = scoped_int.get();
629 original_dict.Set("int", std::move(scoped_int)); 629 original_dict.Set("int", std::move(scoped_int));
630 std::unique_ptr<FundamentalValue> scoped_double(new FundamentalValue(3.14)); 630 std::unique_ptr<Value> scoped_double(new Value(3.14));
631 Value* original_double = scoped_double.get(); 631 Value* original_double = scoped_double.get();
632 original_dict.Set("double", std::move(scoped_double)); 632 original_dict.Set("double", std::move(scoped_double));
633 std::unique_ptr<StringValue> scoped_string(new StringValue("hello")); 633 std::unique_ptr<StringValue> scoped_string(new StringValue("hello"));
634 Value* original_string = scoped_string.get(); 634 Value* original_string = scoped_string.get();
635 original_dict.Set("string", std::move(scoped_string)); 635 original_dict.Set("string", std::move(scoped_string));
636 std::unique_ptr<StringValue> scoped_string16( 636 std::unique_ptr<StringValue> scoped_string16(
637 new StringValue(ASCIIToUTF16("hello16"))); 637 new StringValue(ASCIIToUTF16("hello16")));
638 Value* original_string16 = scoped_string16.get(); 638 Value* original_string16 = scoped_string16.get();
639 original_dict.Set("string16", std::move(scoped_string16)); 639 original_dict.Set("string16", std::move(scoped_string16));
640 640
641 std::unique_ptr<char[]> original_buffer(new char[42]); 641 std::unique_ptr<char[]> original_buffer(new char[42]);
642 memset(original_buffer.get(), '!', 42); 642 memset(original_buffer.get(), '!', 42);
643 std::unique_ptr<BinaryValue> scoped_binary( 643 std::unique_ptr<BinaryValue> scoped_binary(
644 new BinaryValue(std::move(original_buffer), 42)); 644 new BinaryValue(std::move(original_buffer), 42));
645 Value* original_binary = scoped_binary.get(); 645 Value* original_binary = scoped_binary.get();
646 original_dict.Set("binary", std::move(scoped_binary)); 646 original_dict.Set("binary", std::move(scoped_binary));
647 647
648 std::unique_ptr<ListValue> scoped_list(new ListValue()); 648 std::unique_ptr<ListValue> scoped_list(new ListValue());
649 Value* original_list = scoped_list.get(); 649 Value* original_list = scoped_list.get();
650 std::unique_ptr<FundamentalValue> scoped_list_element_0( 650 std::unique_ptr<Value> scoped_list_element_0(
651 new FundamentalValue(0)); 651 new Value(0));
652 scoped_list->Append(std::move(scoped_list_element_0)); 652 scoped_list->Append(std::move(scoped_list_element_0));
653 std::unique_ptr<FundamentalValue> scoped_list_element_1( 653 std::unique_ptr<Value> scoped_list_element_1(
654 new FundamentalValue(1)); 654 new Value(1));
655 scoped_list->Append(std::move(scoped_list_element_1)); 655 scoped_list->Append(std::move(scoped_list_element_1));
656 original_dict.Set("list", std::move(scoped_list)); 656 original_dict.Set("list", std::move(scoped_list));
657 657
658 std::unique_ptr<Value> copy_dict = original_dict.CreateDeepCopy(); 658 std::unique_ptr<Value> copy_dict = original_dict.CreateDeepCopy();
659 std::unique_ptr<Value> copy_null = original_null->CreateDeepCopy(); 659 std::unique_ptr<Value> copy_null = original_null->CreateDeepCopy();
660 std::unique_ptr<Value> copy_bool = original_bool->CreateDeepCopy(); 660 std::unique_ptr<Value> copy_bool = original_bool->CreateDeepCopy();
661 std::unique_ptr<Value> copy_int = original_int->CreateDeepCopy(); 661 std::unique_ptr<Value> copy_int = original_int->CreateDeepCopy();
662 std::unique_ptr<Value> copy_double = original_double->CreateDeepCopy(); 662 std::unique_ptr<Value> copy_double = original_double->CreateDeepCopy();
663 std::unique_ptr<Value> copy_string = original_string->CreateDeepCopy(); 663 std::unique_ptr<Value> copy_string = original_string->CreateDeepCopy();
664 std::unique_ptr<Value> copy_string16 = original_string16->CreateDeepCopy(); 664 std::unique_ptr<Value> copy_string16 = original_string16->CreateDeepCopy();
(...skipping 202 matching lines...) Expand 10 before | Expand all | Expand 10 after
867 EXPECT_TRUE(seen1); 867 EXPECT_TRUE(seen1);
868 EXPECT_TRUE(seen2); 868 EXPECT_TRUE(seen2);
869 } 869 }
870 870
871 // DictionaryValue/ListValue's Get*() methods should accept NULL as an out-value 871 // DictionaryValue/ListValue's Get*() methods should accept NULL as an out-value
872 // and still return true/false based on success. 872 // and still return true/false based on success.
873 TEST(ValuesTest, GetWithNullOutValue) { 873 TEST(ValuesTest, GetWithNullOutValue) {
874 DictionaryValue main_dict; 874 DictionaryValue main_dict;
875 ListValue main_list; 875 ListValue main_list;
876 876
877 FundamentalValue bool_value(false); 877 Value bool_value(false);
878 FundamentalValue int_value(1234); 878 Value int_value(1234);
879 FundamentalValue double_value(12.34567); 879 Value double_value(12.34567);
880 StringValue string_value("foo"); 880 StringValue string_value("foo");
881 BinaryValue binary_value; 881 BinaryValue binary_value;
882 DictionaryValue dict_value; 882 DictionaryValue dict_value;
883 ListValue list_value; 883 ListValue list_value;
884 884
885 main_dict.Set("bool", bool_value.CreateDeepCopy()); 885 main_dict.Set("bool", bool_value.CreateDeepCopy());
886 main_dict.Set("int", int_value.CreateDeepCopy()); 886 main_dict.Set("int", int_value.CreateDeepCopy());
887 main_dict.Set("double", double_value.CreateDeepCopy()); 887 main_dict.Set("double", double_value.CreateDeepCopy());
888 main_dict.Set("string", string_value.CreateDeepCopy()); 888 main_dict.Set("string", string_value.CreateDeepCopy());
889 main_dict.Set("binary", binary_value.CreateDeepCopy()); 889 main_dict.Set("binary", binary_value.CreateDeepCopy());
(...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after
1147 EXPECT_FALSE(main_list.GetList(1, NULL)); 1147 EXPECT_FALSE(main_list.GetList(1, NULL));
1148 EXPECT_FALSE(main_list.GetList(2, NULL)); 1148 EXPECT_FALSE(main_list.GetList(2, NULL));
1149 EXPECT_FALSE(main_list.GetList(3, NULL)); 1149 EXPECT_FALSE(main_list.GetList(3, NULL));
1150 EXPECT_FALSE(main_list.GetList(4, NULL)); 1150 EXPECT_FALSE(main_list.GetList(4, NULL));
1151 EXPECT_FALSE(main_list.GetList(5, NULL)); 1151 EXPECT_FALSE(main_list.GetList(5, NULL));
1152 EXPECT_TRUE(main_list.GetList(6, NULL)); 1152 EXPECT_TRUE(main_list.GetList(6, NULL));
1153 EXPECT_FALSE(main_list.GetList(7, NULL)); 1153 EXPECT_FALSE(main_list.GetList(7, NULL));
1154 } 1154 }
1155 1155
1156 } // namespace base 1156 } // namespace base
OLDNEW
« no previous file with comments | « base/values.cc ('k') | chrome/browser/chromeos/arc/arc_policy_bridge_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698