| Index: base/pickle_unittest.cc
|
| diff --git a/base/pickle_unittest.cc b/base/pickle_unittest.cc
|
| index 1fa1f32d49c736548ec36bbb8ac0aeb32c46b28c..a2c405ce9181b51c59d627e730d417901138dadd 100644
|
| --- a/base/pickle_unittest.cc
|
| +++ b/base/pickle_unittest.cc
|
| @@ -30,10 +30,13 @@ const double testdouble = 2.71828182845904523;
|
| const std::string teststring("Hello world"); // note non-aligned string length
|
| const std::wstring testwstring(L"Hello, world");
|
| const base::string16 teststring16(base::ASCIIToUTF16("Hello, world"));
|
| +const char testrawstring[] = "Hello new world"; // Test raw string writing
|
| +// Test raw char16 writing, assumes UTF16 encoding is ANSI for alpha chars.
|
| +const base::char16 testrawstring16[] = {'A', 'l', 'o', 'h', 'a', 0};
|
| const char testdata[] = "AAA\0BBB\0";
|
| const int testdatalen = arraysize(testdata) - 1;
|
|
|
| -// checks that the result
|
| +// checks that the results can be read correctly from the Pickle
|
| void VerifyResult(const Pickle& pickle) {
|
| PickleIterator iter(pickle);
|
|
|
| @@ -83,14 +86,18 @@ void VerifyResult(const Pickle& pickle) {
|
| EXPECT_TRUE(iter.ReadString(&outstring));
|
| EXPECT_EQ(teststring, outstring);
|
|
|
| - std::wstring outwstring;
|
| - EXPECT_TRUE(iter.ReadWString(&outwstring));
|
| - EXPECT_EQ(testwstring, outwstring);
|
| -
|
| base::string16 outstring16;
|
| EXPECT_TRUE(iter.ReadString16(&outstring16));
|
| EXPECT_EQ(teststring16, outstring16);
|
|
|
| + base::StringPiece outstringpiece;
|
| + EXPECT_TRUE(iter.ReadStringPiece(&outstringpiece));
|
| + EXPECT_EQ(testrawstring, outstringpiece);
|
| +
|
| + base::StringPiece16 outstringpiece16;
|
| + EXPECT_TRUE(iter.ReadStringPiece16(&outstringpiece16));
|
| + EXPECT_EQ(testrawstring16, outstringpiece16);
|
| +
|
| const char* outdata;
|
| int outdatalen;
|
| EXPECT_TRUE(iter.ReadData(&outdata, &outdatalen));
|
| @@ -119,8 +126,9 @@ TEST(PickleTest, EncodeDecode) {
|
| EXPECT_TRUE(pickle.WriteFloat(testfloat));
|
| EXPECT_TRUE(pickle.WriteDouble(testdouble));
|
| EXPECT_TRUE(pickle.WriteString(teststring));
|
| - EXPECT_TRUE(pickle.WriteWString(testwstring));
|
| EXPECT_TRUE(pickle.WriteString16(teststring16));
|
| + EXPECT_TRUE(pickle.WriteString(testrawstring));
|
| + EXPECT_TRUE(pickle.WriteString16(testrawstring16));
|
| EXPECT_TRUE(pickle.WriteData(testdata, testdatalen));
|
| VerifyResult(pickle);
|
|
|
| @@ -198,9 +206,9 @@ TEST(PickleTest, ZeroLenStr) {
|
| EXPECT_EQ("", outstr);
|
| }
|
|
|
| -TEST(PickleTest, ZeroLenWStr) {
|
| +TEST(PickleTest, ZeroLenStr16) {
|
| Pickle pickle;
|
| - EXPECT_TRUE(pickle.WriteWString(std::wstring()));
|
| + EXPECT_TRUE(pickle.WriteString16(base::string16()));
|
|
|
| PickleIterator iter(pickle);
|
| std::string outstr;
|
| @@ -217,13 +225,13 @@ TEST(PickleTest, BadLenStr) {
|
| EXPECT_FALSE(iter.ReadString(&outstr));
|
| }
|
|
|
| -TEST(PickleTest, BadLenWStr) {
|
| +TEST(PickleTest, BadLenStr16) {
|
| Pickle pickle;
|
| EXPECT_TRUE(pickle.WriteInt(-1));
|
|
|
| PickleIterator iter(pickle);
|
| - std::wstring woutstr;
|
| - EXPECT_FALSE(iter.ReadWString(&woutstr));
|
| + base::string16 outstr;
|
| + EXPECT_FALSE(iter.ReadString16(&outstr));
|
| }
|
|
|
| TEST(PickleTest, FindNext) {
|
| @@ -391,13 +399,6 @@ TEST(PickleTest, EvilLengths) {
|
| EXPECT_TRUE(bad_len.WriteInt(1 << 31));
|
| iter = PickleIterator(bad_len);
|
| EXPECT_FALSE(iter.ReadString16(&str16));
|
| -
|
| - // Check we don't fail in a length check with large WStrings.
|
| - Pickle big_len;
|
| - EXPECT_TRUE(big_len.WriteInt(1 << 30));
|
| - iter = PickleIterator(big_len);
|
| - std::wstring wstr;
|
| - EXPECT_FALSE(iter.ReadWString(&wstr));
|
| }
|
|
|
| // Check we can write zero bytes of data and 'data' can be NULL.
|
|
|