diff options
author | jhawkins@chromium.org <jhawkins@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-05-20 02:34:57 +0000 |
---|---|---|
committer | jhawkins@chromium.org <jhawkins@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-05-20 02:34:57 +0000 |
commit | 0d0ed0c73c9710e8ab6ff80dd3750b70f0f751bf (patch) | |
tree | a9f66bd0f7c2df003a6f9066eee37dee067ce5dd /base/values_unittest.cc | |
parent | 0a7be8d8aed47cc460e1e848092377c2c426b89c (diff) | |
download | chromium_src-0d0ed0c73c9710e8ab6ff80dd3750b70f0f751bf.zip chromium_src-0d0ed0c73c9710e8ab6ff80dd3750b70f0f751bf.tar.gz chromium_src-0d0ed0c73c9710e8ab6ff80dd3750b70f0f751bf.tar.bz2 |
Reverting due to memory waterfall failures.
Revert 138044 - Allowed BinaryValue to take a NULL buffer.
BUG=127630
Review URL: https://chromiumcodereview.appspot.com/10389088
TBR=mitchellwrosen@chromium.org
Review URL: https://chromiumcodereview.appspot.com/10388207
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@138050 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/values_unittest.cc')
-rw-r--r-- | base/values_unittest.cc | 30 |
1 files changed, 19 insertions, 11 deletions
diff --git a/base/values_unittest.cc b/base/values_unittest.cc index b0dd22e..9b92949 100644 --- a/base/values_unittest.cc +++ b/base/values_unittest.cc @@ -105,15 +105,23 @@ TEST(ValuesTest, List) { } 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 @@ TEST(ValuesTest, DeepCopy) { 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 @@ TEST(ValuesTest, DeepCopyCovariantReturnTypes) { 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(); |