| Index: base/values_unittest.cc
|
| ===================================================================
|
| --- base/values_unittest.cc (revision 138049)
|
| +++ base/values_unittest.cc (working copy)
|
| @@ -105,15 +105,23 @@
|
| }
|
|
|
| TEST(ValuesTest, BinaryValue) {
|
| - // Default constructor creates a BinaryValue with a null buffer and size 0.
|
| - scoped_ptr<BinaryValue> binary(new BinaryValue());
|
| + char* buffer = NULL;
|
| + // Passing a null buffer pointer doesn't yield a BinaryValue
|
| + scoped_ptr<BinaryValue> binary(BinaryValue::Create(buffer, 0));
|
| + ASSERT_FALSE(binary.get());
|
| +
|
| + // If you want to represent an empty binary value, use a zero-length buffer.
|
| + buffer = new char[1];
|
| + ASSERT_TRUE(buffer);
|
| + binary.reset(BinaryValue::Create(buffer, 0));
|
| ASSERT_TRUE(binary.get());
|
| - ASSERT_EQ(NULL, binary->GetBuffer());
|
| + ASSERT_TRUE(binary->GetBuffer());
|
| + ASSERT_EQ(buffer, binary->GetBuffer());
|
| ASSERT_EQ(0U, binary->GetSize());
|
|
|
| // Test the common case of a non-empty buffer
|
| - char* buffer = new char[15];
|
| - binary.reset(new BinaryValue(scoped_ptr<char>(buffer), 15));
|
| + buffer = new char[15];
|
| + binary.reset(BinaryValue::Create(buffer, 15));
|
| ASSERT_TRUE(binary.get());
|
| ASSERT_TRUE(binary->GetBuffer());
|
| ASSERT_EQ(buffer, binary->GetBuffer());
|
| @@ -342,9 +350,9 @@
|
| Value::CreateStringValue(ASCIIToUTF16("hello16"));
|
| original_dict.Set("string16", original_string16);
|
|
|
| - scoped_ptr<char> original_buffer(new char[42]);
|
| - memset(original_buffer.get(), '!', 42);
|
| - BinaryValue* original_binary = new BinaryValue(original_buffer.Pass(), 42);
|
| + char* original_buffer = new char[42];
|
| + memset(original_buffer, '!', 42);
|
| + BinaryValue* original_binary = BinaryValue::Create(original_buffer, 42);
|
| original_dict.Set("binary", original_binary);
|
|
|
| ListValue* original_list = new ListValue();
|
| @@ -550,9 +558,9 @@
|
| Value::CreateStringValue(ASCIIToUTF16("hello16"));
|
| original_dict.Set("string16", original_string16);
|
|
|
| - scoped_ptr<char> original_buffer(new char[42]);
|
| - memset(original_buffer.get(), '!', 42);
|
| - BinaryValue* original_binary = new BinaryValue(original_buffer.Pass(), 42);
|
| + char* original_buffer = new char[42];
|
| + memset(original_buffer, '!', 42);
|
| + BinaryValue* original_binary = BinaryValue::Create(original_buffer, 42);
|
| original_dict.Set("binary", original_binary);
|
|
|
| ListValue* original_list = new ListValue();
|
|
|