diff options
Diffstat (limited to 'deps/v8/test/unittests/value-serializer-unittest.cc')
-rw-r--r-- | deps/v8/test/unittests/value-serializer-unittest.cc | 521 |
1 files changed, 256 insertions, 265 deletions
diff --git a/deps/v8/test/unittests/value-serializer-unittest.cc b/deps/v8/test/unittests/value-serializer-unittest.cc index b3e656e917..c143b58090 100644 --- a/deps/v8/test/unittests/value-serializer-unittest.cc +++ b/deps/v8/test/unittests/value-serializer-unittest.cc @@ -289,11 +289,11 @@ class ValueSerializerTest : public TestWithIsolate { TEST_F(ValueSerializerTest, DecodeInvalid) { // Version tag but no content. - InvalidDecodeTest({0xff}); + InvalidDecodeTest({0xFF}); // Version too large. - InvalidDecodeTest({0xff, 0x7f, 0x5f}); + InvalidDecodeTest({0xFF, 0x7F, 0x5F}); // Nonsense tag. - InvalidDecodeTest({0xff, 0x09, 0xdd}); + InvalidDecodeTest({0xFF, 0x09, 0xDD}); } TEST_F(ValueSerializerTest, RoundTripOddball) { @@ -309,27 +309,27 @@ TEST_F(ValueSerializerTest, RoundTripOddball) { TEST_F(ValueSerializerTest, DecodeOddball) { // What this code is expected to generate. - DecodeTest({0xff, 0x09, 0x5f}, + DecodeTest({0xFF, 0x09, 0x5F}, [](Local<Value> value) { EXPECT_TRUE(value->IsUndefined()); }); - DecodeTest({0xff, 0x09, 0x54}, + DecodeTest({0xFF, 0x09, 0x54}, [](Local<Value> value) { EXPECT_TRUE(value->IsTrue()); }); - DecodeTest({0xff, 0x09, 0x46}, + DecodeTest({0xFF, 0x09, 0x46}, [](Local<Value> value) { EXPECT_TRUE(value->IsFalse()); }); - DecodeTest({0xff, 0x09, 0x30}, + DecodeTest({0xFF, 0x09, 0x30}, [](Local<Value> value) { EXPECT_TRUE(value->IsNull()); }); // What v9 of the Blink code generates. - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x5f, 0x00}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x5F, 0x00}, [](Local<Value> value) { EXPECT_TRUE(value->IsUndefined()); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x54, 0x00}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x54, 0x00}, [](Local<Value> value) { EXPECT_TRUE(value->IsTrue()); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x46, 0x00}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x46, 0x00}, [](Local<Value> value) { EXPECT_TRUE(value->IsFalse()); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x30, 0x00}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x30, 0x00}, [](Local<Value> value) { EXPECT_TRUE(value->IsNull()); }); // v0 (with no explicit version). - DecodeTest({0x5f, 0x00}, + DecodeTest({0x5F, 0x00}, [](Local<Value> value) { EXPECT_TRUE(value->IsUndefined()); }); DecodeTest({0x54, 0x00}, [](Local<Value> value) { EXPECT_TRUE(value->IsTrue()); }); @@ -376,44 +376,40 @@ TEST_F(ValueSerializerTest, RoundTripNumber) { TEST_F(ValueSerializerTest, DecodeNumber) { // 42 zig-zag encoded (signed) - DecodeTest({0xff, 0x09, 0x49, 0x54}, - [](Local<Value> value) { - ASSERT_TRUE(value->IsInt32()); - EXPECT_EQ(42, Int32::Cast(*value)->Value()); - }); + DecodeTest({0xFF, 0x09, 0x49, 0x54}, [](Local<Value> value) { + ASSERT_TRUE(value->IsInt32()); + EXPECT_EQ(42, Int32::Cast(*value)->Value()); + }); // 42 varint encoded (unsigned) - DecodeTest({0xff, 0x09, 0x55, 0x2a}, - [](Local<Value> value) { - ASSERT_TRUE(value->IsInt32()); - EXPECT_EQ(42, Int32::Cast(*value)->Value()); - }); + DecodeTest({0xFF, 0x09, 0x55, 0x2A}, [](Local<Value> value) { + ASSERT_TRUE(value->IsInt32()); + EXPECT_EQ(42, Int32::Cast(*value)->Value()); + }); // 160 zig-zag encoded (signed) - DecodeTest({0xff, 0x09, 0x49, 0xc0, 0x02}, - [](Local<Value> value) { - ASSERT_TRUE(value->IsInt32()); - ASSERT_EQ(160, Int32::Cast(*value)->Value()); - }); + DecodeTest({0xFF, 0x09, 0x49, 0xC0, 0x02}, [](Local<Value> value) { + ASSERT_TRUE(value->IsInt32()); + ASSERT_EQ(160, Int32::Cast(*value)->Value()); + }); // 160 varint encoded (unsigned) - DecodeTest({0xff, 0x09, 0x55, 0xa0, 0x01}, - [](Local<Value> value) { - ASSERT_TRUE(value->IsInt32()); - ASSERT_EQ(160, Int32::Cast(*value)->Value()); - }); + DecodeTest({0xFF, 0x09, 0x55, 0xA0, 0x01}, [](Local<Value> value) { + ASSERT_TRUE(value->IsInt32()); + ASSERT_EQ(160, Int32::Cast(*value)->Value()); + }); #if defined(V8_TARGET_LITTLE_ENDIAN) // IEEE 754 doubles, little-endian byte order - DecodeTest({0xff, 0x09, 0x4e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0xbf}, + DecodeTest({0xFF, 0x09, 0x4E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xD0, 0xBF}, [](Local<Value> value) { ASSERT_TRUE(value->IsNumber()); EXPECT_EQ(-0.25, Number::Cast(*value)->Value()); }); // quiet NaN - DecodeTest({0xff, 0x09, 0x4e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x7f}, + DecodeTest({0xFF, 0x09, 0x4E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x7F}, [](Local<Value> value) { ASSERT_TRUE(value->IsNumber()); EXPECT_TRUE(std::isnan(Number::Cast(*value)->Value())); }); // signaling NaN - DecodeTest({0xff, 0x09, 0x4e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf4, 0x7f}, + DecodeTest({0xFF, 0x09, 0x4E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF4, 0x7F}, [](Local<Value> value) { ASSERT_TRUE(value->IsNumber()); EXPECT_TRUE(std::isnan(Number::Cast(*value)->Value())); @@ -458,24 +454,23 @@ TEST_F(ValueSerializerTest, RoundTripString) { TEST_F(ValueSerializerTest, DecodeString) { // Decoding the strings above from UTF-8. - DecodeTest({0xff, 0x09, 0x53, 0x00}, - [](Local<Value> value) { - ASSERT_TRUE(value->IsString()); - EXPECT_EQ(0, String::Cast(*value)->Length()); - }); - DecodeTest({0xff, 0x09, 0x53, 0x05, 'H', 'e', 'l', 'l', 'o'}, + DecodeTest({0xFF, 0x09, 0x53, 0x00}, [](Local<Value> value) { + ASSERT_TRUE(value->IsString()); + EXPECT_EQ(0, String::Cast(*value)->Length()); + }); + DecodeTest({0xFF, 0x09, 0x53, 0x05, 'H', 'e', 'l', 'l', 'o'}, [this](Local<Value> value) { ASSERT_TRUE(value->IsString()); EXPECT_EQ(5, String::Cast(*value)->Length()); EXPECT_EQ(kHelloString, Utf8Value(value)); }); - DecodeTest({0xff, 0x09, 0x53, 0x07, 'Q', 'u', 0xc3, 0xa9, 'b', 'e', 'c'}, + DecodeTest({0xFF, 0x09, 0x53, 0x07, 'Q', 'u', 0xC3, 0xA9, 'b', 'e', 'c'}, [this](Local<Value> value) { ASSERT_TRUE(value->IsString()); EXPECT_EQ(6, String::Cast(*value)->Length()); EXPECT_EQ(kQuebecString, Utf8Value(value)); }); - DecodeTest({0xff, 0x09, 0x53, 0x04, 0xf0, 0x9f, 0x91, 0x8a}, + DecodeTest({0xFF, 0x09, 0x53, 0x04, 0xF0, 0x9F, 0x91, 0x8A}, [this](Local<Value> value) { ASSERT_TRUE(value->IsString()); EXPECT_EQ(2, String::Cast(*value)->Length()); @@ -483,17 +478,17 @@ TEST_F(ValueSerializerTest, DecodeString) { }); // And from Latin-1 (for the ones that fit). - DecodeTest({0xff, 0x0a, 0x22, 0x00}, [](Local<Value> value) { + DecodeTest({0xFF, 0x0A, 0x22, 0x00}, [](Local<Value> value) { ASSERT_TRUE(value->IsString()); EXPECT_EQ(0, String::Cast(*value)->Length()); }); - DecodeTest({0xff, 0x0a, 0x22, 0x05, 'H', 'e', 'l', 'l', 'o'}, + DecodeTest({0xFF, 0x0A, 0x22, 0x05, 'H', 'e', 'l', 'l', 'o'}, [this](Local<Value> value) { ASSERT_TRUE(value->IsString()); EXPECT_EQ(5, String::Cast(*value)->Length()); EXPECT_EQ(kHelloString, Utf8Value(value)); }); - DecodeTest({0xff, 0x0a, 0x22, 0x06, 'Q', 'u', 0xe9, 'b', 'e', 'c'}, + DecodeTest({0xFF, 0x0A, 0x22, 0x06, 'Q', 'u', 0xE9, 'b', 'e', 'c'}, [this](Local<Value> value) { ASSERT_TRUE(value->IsString()); EXPECT_EQ(6, String::Cast(*value)->Length()); @@ -502,26 +497,25 @@ TEST_F(ValueSerializerTest, DecodeString) { // And from two-byte strings (endianness dependent). #if defined(V8_TARGET_LITTLE_ENDIAN) - DecodeTest({0xff, 0x09, 0x63, 0x00}, - [](Local<Value> value) { - ASSERT_TRUE(value->IsString()); - EXPECT_EQ(0, String::Cast(*value)->Length()); - }); - DecodeTest({0xff, 0x09, 0x63, 0x0a, 'H', '\0', 'e', '\0', 'l', '\0', 'l', + DecodeTest({0xFF, 0x09, 0x63, 0x00}, [](Local<Value> value) { + ASSERT_TRUE(value->IsString()); + EXPECT_EQ(0, String::Cast(*value)->Length()); + }); + DecodeTest({0xFF, 0x09, 0x63, 0x0A, 'H', '\0', 'e', '\0', 'l', '\0', 'l', '\0', 'o', '\0'}, [this](Local<Value> value) { ASSERT_TRUE(value->IsString()); EXPECT_EQ(5, String::Cast(*value)->Length()); EXPECT_EQ(kHelloString, Utf8Value(value)); }); - DecodeTest({0xff, 0x09, 0x63, 0x0c, 'Q', '\0', 'u', '\0', 0xe9, '\0', 'b', + DecodeTest({0xFF, 0x09, 0x63, 0x0C, 'Q', '\0', 'u', '\0', 0xE9, '\0', 'b', '\0', 'e', '\0', 'c', '\0'}, [this](Local<Value> value) { ASSERT_TRUE(value->IsString()); EXPECT_EQ(6, String::Cast(*value)->Length()); EXPECT_EQ(kQuebecString, Utf8Value(value)); }); - DecodeTest({0xff, 0x09, 0x63, 0x04, 0x3d, 0xd8, 0x4a, 0xdc}, + DecodeTest({0xFF, 0x09, 0x63, 0x04, 0x3D, 0xD8, 0x4A, 0xDC}, [this](Local<Value> value) { ASSERT_TRUE(value->IsString()); EXPECT_EQ(2, String::Cast(*value)->Length()); @@ -533,14 +527,14 @@ TEST_F(ValueSerializerTest, DecodeString) { TEST_F(ValueSerializerTest, DecodeInvalidString) { // UTF-8 string with too few bytes available. - InvalidDecodeTest({0xff, 0x09, 0x53, 0x10, 'v', '8'}); + InvalidDecodeTest({0xFF, 0x09, 0x53, 0x10, 'v', '8'}); // One-byte string with too few bytes available. - InvalidDecodeTest({0xff, 0x0a, 0x22, 0x10, 'v', '8'}); + InvalidDecodeTest({0xFF, 0x0A, 0x22, 0x10, 'v', '8'}); #if defined(V8_TARGET_LITTLE_ENDIAN) // Two-byte string with too few bytes available. - InvalidDecodeTest({0xff, 0x09, 0x63, 0x10, 'v', '\0', '8', '\0'}); + InvalidDecodeTest({0xFF, 0x09, 0x63, 0x10, 'v', '\0', '8', '\0'}); // Two-byte string with an odd byte length. - InvalidDecodeTest({0xff, 0x09, 0x63, 0x03, 'v', '\0', '8'}); + InvalidDecodeTest({0xFF, 0x09, 0x63, 0x03, 'v', '\0', '8'}); #endif // TODO(jbroman): The same for big-endian systems. } @@ -565,9 +559,9 @@ TEST_F(ValueSerializerTest, EncodeTwoByteStringUsesPadding) { // what that value may be. const uint8_t expected_prefix[] = {0x00, 0x63, 0x94, 0x03}; ASSERT_GT(data.size(), sizeof(expected_prefix) + 2); - EXPECT_EQ(0xff, data[0]); + EXPECT_EQ(0xFF, data[0]); EXPECT_GE(data[1], 0x09); - EXPECT_LE(data[1], 0x7f); + EXPECT_LE(data[1], 0x7F); EXPECT_TRUE(std::equal(std::begin(expected_prefix), std::end(expected_prefix), data.begin() + 2)); }); @@ -630,7 +624,7 @@ TEST_F(ValueSerializerTest, RoundTripDictionaryObject) { TEST_F(ValueSerializerTest, DecodeDictionaryObject) { // Empty object. - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x6f, 0x7b, 0x00, 0x00}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x6F, 0x7B, 0x00, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsObject()); EXPECT_TRUE(EvaluateScriptForResultBool( @@ -640,8 +634,8 @@ TEST_F(ValueSerializerTest, DecodeDictionaryObject) { }); // String key. DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x6f, 0x3f, 0x01, 0x53, 0x01, 0x61, 0x3f, 0x01, - 0x49, 0x54, 0x7b, 0x01}, + {0xFF, 0x09, 0x3F, 0x00, 0x6F, 0x3F, 0x01, 0x53, 0x01, 0x61, 0x3F, 0x01, + 0x49, 0x54, 0x7B, 0x01}, [this](Local<Value> value) { ASSERT_TRUE(value->IsObject()); EXPECT_TRUE(EvaluateScriptForResultBool("result.hasOwnProperty('a')")); @@ -651,8 +645,8 @@ TEST_F(ValueSerializerTest, DecodeDictionaryObject) { }); // Integer key (treated as a string, but may be encoded differently). DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x6f, 0x3f, 0x01, 0x49, 0x54, 0x3f, 0x01, 0x53, - 0x01, 0x61, 0x7b, 0x01}, + {0xFF, 0x09, 0x3F, 0x00, 0x6F, 0x3F, 0x01, 0x49, 0x54, 0x3F, 0x01, 0x53, + 0x01, 0x61, 0x7B, 0x01}, [this](Local<Value> value) { ASSERT_TRUE(value->IsObject()); EXPECT_TRUE(EvaluateScriptForResultBool("result.hasOwnProperty('42')")); @@ -662,20 +656,20 @@ TEST_F(ValueSerializerTest, DecodeDictionaryObject) { }); // Key order must be preserved. DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x6f, 0x3f, 0x01, 0x53, 0x01, 0x78, 0x3f, 0x01, - 0x49, 0x02, 0x3f, 0x01, 0x53, 0x01, 0x79, 0x3f, 0x01, 0x49, 0x04, 0x3f, - 0x01, 0x53, 0x01, 0x61, 0x3f, 0x01, 0x49, 0x06, 0x7b, 0x03}, + {0xFF, 0x09, 0x3F, 0x00, 0x6F, 0x3F, 0x01, 0x53, 0x01, 0x78, 0x3F, 0x01, + 0x49, 0x02, 0x3F, 0x01, 0x53, 0x01, 0x79, 0x3F, 0x01, 0x49, 0x04, 0x3F, + 0x01, 0x53, 0x01, 0x61, 0x3F, 0x01, 0x49, 0x06, 0x7B, 0x03}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getOwnPropertyNames(result).toString() === 'x,y,a'")); }); // A harder case of enumeration order. DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x6f, 0x3f, 0x01, 0x49, 0x02, 0x3f, 0x01, - 0x49, 0x00, 0x3f, 0x01, 0x55, 0xfe, 0xff, 0xff, 0xff, 0x0f, 0x3f, - 0x01, 0x49, 0x06, 0x3f, 0x01, 0x53, 0x01, 0x61, 0x3f, 0x01, 0x49, - 0x04, 0x3f, 0x01, 0x53, 0x0a, 0x34, 0x32, 0x39, 0x34, 0x39, 0x36, - 0x37, 0x32, 0x39, 0x35, 0x3f, 0x01, 0x49, 0x02, 0x7b, 0x04}, + {0xFF, 0x09, 0x3F, 0x00, 0x6F, 0x3F, 0x01, 0x49, 0x02, 0x3F, 0x01, + 0x49, 0x00, 0x3F, 0x01, 0x55, 0xFE, 0xFF, 0xFF, 0xFF, 0x0F, 0x3F, + 0x01, 0x49, 0x06, 0x3F, 0x01, 0x53, 0x01, 0x61, 0x3F, 0x01, 0x49, + 0x04, 0x3F, 0x01, 0x53, 0x0A, 0x34, 0x32, 0x39, 0x34, 0x39, 0x36, + 0x37, 0x32, 0x39, 0x35, 0x3F, 0x01, 0x49, 0x02, 0x7B, 0x04}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getOwnPropertyNames(result).toString() === " @@ -689,8 +683,8 @@ TEST_F(ValueSerializerTest, DecodeDictionaryObject) { // before its properties are deserialized, so that references to it can be // resolved. DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x6f, 0x3f, 0x01, 0x53, 0x04, 0x73, - 0x65, 0x6c, 0x66, 0x3f, 0x01, 0x5e, 0x00, 0x7b, 0x01, 0x00}, + {0xFF, 0x09, 0x3F, 0x00, 0x6F, 0x3F, 0x01, 0x53, 0x04, 0x73, + 0x65, 0x6C, 0x66, 0x3F, 0x01, 0x5E, 0x00, 0x7B, 0x01, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsObject()); EXPECT_TRUE(EvaluateScriptForResultBool("result === result.self")); @@ -702,7 +696,7 @@ TEST_F(ValueSerializerTest, InvalidDecodeObjectWithInvalidKeyType) { // object keys. The serializer would have obtained them from the own property // keys list, which should only contain names and indices. InvalidDecodeTest( - {0xff, 0x09, 0x6f, 0x61, 0x00, 0x40, 0x00, 0x00, 0x7b, 0x01}); + {0xFF, 0x09, 0x6F, 0x61, 0x00, 0x40, 0x00, 0x00, 0x7B, 0x01}); } TEST_F(ValueSerializerTest, RoundTripOnlyOwnEnumerableStringKeys) { @@ -820,8 +814,7 @@ TEST_F(ValueSerializerTest, RoundTripDictionaryObjectForTransitions) { TEST_F(ValueSerializerTest, DecodeDictionaryObjectVersion0) { // Empty object. DecodeTestForVersion0( - {0x7b, 0x00}, - [this](Local<Value> value) { + {0x7B, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsObject()); EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === Object.prototype")); @@ -830,7 +823,7 @@ TEST_F(ValueSerializerTest, DecodeDictionaryObjectVersion0) { }); // String key. DecodeTestForVersion0( - {0x53, 0x01, 0x61, 0x49, 0x54, 0x7b, 0x01, 0x00}, + {0x53, 0x01, 0x61, 0x49, 0x54, 0x7B, 0x01, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsObject()); EXPECT_TRUE(EvaluateScriptForResultBool( @@ -842,7 +835,7 @@ TEST_F(ValueSerializerTest, DecodeDictionaryObjectVersion0) { }); // Integer key (treated as a string, but may be encoded differently). DecodeTestForVersion0( - {0x49, 0x54, 0x53, 0x01, 0x61, 0x7b, 0x01, 0x00}, + {0x49, 0x54, 0x53, 0x01, 0x61, 0x7B, 0x01, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsObject()); EXPECT_TRUE(EvaluateScriptForResultBool("result.hasOwnProperty('42')")); @@ -853,14 +846,14 @@ TEST_F(ValueSerializerTest, DecodeDictionaryObjectVersion0) { // Key order must be preserved. DecodeTestForVersion0( {0x53, 0x01, 0x78, 0x49, 0x02, 0x53, 0x01, 0x79, 0x49, 0x04, 0x53, 0x01, - 0x61, 0x49, 0x06, 0x7b, 0x03, 0x00}, + 0x61, 0x49, 0x06, 0x7B, 0x03, 0x00}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getOwnPropertyNames(result).toString() === 'x,y,a'")); }); // A property and an element. DecodeTestForVersion0( - {0x49, 0x54, 0x53, 0x01, 0x61, 0x53, 0x01, 0x61, 0x49, 0x54, 0x7b, 0x02}, + {0x49, 0x54, 0x53, 0x01, 0x61, 0x53, 0x01, 0x61, 0x49, 0x54, 0x7B, 0x02}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getOwnPropertyNames(result).toString() === '42,a'")); @@ -954,9 +947,9 @@ TEST_F(ValueSerializerTest, RoundTripArray) { TEST_F(ValueSerializerTest, DecodeArray) { // A simple array of integers. - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x41, 0x05, 0x3f, 0x01, 0x49, 0x02, - 0x3f, 0x01, 0x49, 0x04, 0x3f, 0x01, 0x49, 0x06, 0x3f, 0x01, - 0x49, 0x08, 0x3f, 0x01, 0x49, 0x0a, 0x24, 0x00, 0x05, 0x00}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x41, 0x05, 0x3F, 0x01, 0x49, 0x02, + 0x3F, 0x01, 0x49, 0x04, 0x3F, 0x01, 0x49, 0x06, 0x3F, 0x01, + 0x49, 0x08, 0x3F, 0x01, 0x49, 0x0A, 0x24, 0x00, 0x05, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsArray()); EXPECT_EQ(5u, Array::Cast(*value)->Length()); @@ -966,8 +959,8 @@ TEST_F(ValueSerializerTest, DecodeArray) { "result.toString() === '1,2,3,4,5'")); }); // A long (sparse) array. - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x61, 0xe8, 0x07, 0x3f, 0x01, 0x49, - 0xe8, 0x07, 0x3f, 0x01, 0x49, 0x54, 0x40, 0x01, 0xe8, 0x07}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x61, 0xE8, 0x07, 0x3F, 0x01, 0x49, + 0xE8, 0x07, 0x3F, 0x01, 0x49, 0x54, 0x40, 0x01, 0xE8, 0x07}, [this](Local<Value> value) { ASSERT_TRUE(value->IsArray()); EXPECT_EQ(1000u, Array::Cast(*value)->Length()); @@ -975,8 +968,8 @@ TEST_F(ValueSerializerTest, DecodeArray) { }); // Duplicate reference. DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x41, 0x02, 0x3f, 0x01, 0x6f, 0x7b, 0x00, 0x3f, - 0x02, 0x5e, 0x01, 0x24, 0x00, 0x02}, + {0xFF, 0x09, 0x3F, 0x00, 0x41, 0x02, 0x3F, 0x01, 0x6F, 0x7B, 0x00, 0x3F, + 0x02, 0x5E, 0x01, 0x24, 0x00, 0x02}, [this](Local<Value> value) { ASSERT_TRUE(value->IsArray()); ASSERT_EQ(2u, Array::Cast(*value)->Length()); @@ -984,9 +977,9 @@ TEST_F(ValueSerializerTest, DecodeArray) { }); // Duplicate reference in a sparse array. DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x61, 0xe8, 0x07, 0x3f, 0x01, 0x49, - 0x02, 0x3f, 0x01, 0x6f, 0x7b, 0x00, 0x3f, 0x02, 0x49, 0xe8, - 0x07, 0x3f, 0x02, 0x5e, 0x01, 0x40, 0x02, 0xe8, 0x07, 0x00}, + {0xFF, 0x09, 0x3F, 0x00, 0x61, 0xE8, 0x07, 0x3F, 0x01, 0x49, + 0x02, 0x3F, 0x01, 0x6F, 0x7B, 0x00, 0x3F, 0x02, 0x49, 0xE8, + 0x07, 0x3F, 0x02, 0x5E, 0x01, 0x40, 0x02, 0xE8, 0x07, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsArray()); ASSERT_EQ(1000u, Array::Cast(*value)->Length()); @@ -995,7 +988,7 @@ TEST_F(ValueSerializerTest, DecodeArray) { EXPECT_TRUE(EvaluateScriptForResultBool("result[1] === result[500]")); }); // Self reference. - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x41, 0x01, 0x3f, 0x01, 0x5e, 0x00, 0x24, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x41, 0x01, 0x3F, 0x01, 0x5E, 0x00, 0x24, 0x00, 0x01, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsArray()); @@ -1004,8 +997,8 @@ TEST_F(ValueSerializerTest, DecodeArray) { }); // Self reference in a sparse array. DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x61, 0xe8, 0x07, 0x3f, 0x01, 0x49, - 0x8e, 0x08, 0x3f, 0x01, 0x5e, 0x00, 0x40, 0x01, 0xe8, 0x07}, + {0xFF, 0x09, 0x3F, 0x00, 0x61, 0xE8, 0x07, 0x3F, 0x01, 0x49, + 0x8E, 0x08, 0x3F, 0x01, 0x5E, 0x00, 0x40, 0x01, 0xE8, 0x07}, [this](Local<Value> value) { ASSERT_TRUE(value->IsArray()); ASSERT_EQ(1000u, Array::Cast(*value)->Length()); @@ -1013,8 +1006,8 @@ TEST_F(ValueSerializerTest, DecodeArray) { }); // Array with additional properties. DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x41, 0x02, 0x3f, 0x01, 0x49, 0x02, 0x3f, - 0x01, 0x49, 0x04, 0x3f, 0x01, 0x53, 0x03, 0x66, 0x6f, 0x6f, 0x3f, + {0xFF, 0x09, 0x3F, 0x00, 0x41, 0x02, 0x3F, 0x01, 0x49, 0x02, 0x3F, + 0x01, 0x49, 0x04, 0x3F, 0x01, 0x53, 0x03, 0x66, 0x6F, 0x6F, 0x3F, 0x01, 0x53, 0x03, 0x62, 0x61, 0x72, 0x24, 0x01, 0x02, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsArray()); @@ -1023,9 +1016,9 @@ TEST_F(ValueSerializerTest, DecodeArray) { EXPECT_TRUE(EvaluateScriptForResultBool("result.foo === 'bar'")); }); // Sparse array with additional properties. - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x61, 0xe8, 0x07, 0x3f, 0x01, - 0x53, 0x03, 0x66, 0x6f, 0x6f, 0x3f, 0x01, 0x53, 0x03, - 0x62, 0x61, 0x72, 0x40, 0x01, 0xe8, 0x07, 0x00}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x61, 0xE8, 0x07, 0x3F, 0x01, + 0x53, 0x03, 0x66, 0x6F, 0x6F, 0x3F, 0x01, 0x53, 0x03, + 0x62, 0x61, 0x72, 0x40, 0x01, 0xE8, 0x07, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsArray()); ASSERT_EQ(1000u, Array::Cast(*value)->Length()); @@ -1037,7 +1030,7 @@ TEST_F(ValueSerializerTest, DecodeArray) { // Note that since the previous output from Chrome fails this test, an // encoding using the sparse format was constructed instead. DecodeTest( - {0xff, 0x09, 0x61, 0x02, 0x49, 0x02, 0x5f, 0x40, 0x01, 0x02}, + {0xFF, 0x09, 0x61, 0x02, 0x49, 0x02, 0x5F, 0x40, 0x01, 0x02}, [this](Local<Value> value) { ASSERT_TRUE(value->IsArray()); ASSERT_EQ(2u, Array::Cast(*value)->Length()); @@ -1053,9 +1046,9 @@ TEST_F(ValueSerializerTest, DecodeArray) { TEST_F(ValueSerializerTest, DecodeInvalidOverLargeArray) { // So large it couldn't exist in the V8 heap, and its size couldn't fit in a // SMI on 32-bit systems (2^30). - InvalidDecodeTest({0xff, 0x09, 0x41, 0x80, 0x80, 0x80, 0x80, 0x04}); + InvalidDecodeTest({0xFF, 0x09, 0x41, 0x80, 0x80, 0x80, 0x80, 0x04}); // Not so large, but there isn't enough data left in the buffer. - InvalidDecodeTest({0xff, 0x09, 0x41, 0x01}); + InvalidDecodeTest({0xFF, 0x09, 0x41, 0x01}); } TEST_F(ValueSerializerTest, RoundTripArrayWithNonEnumerableElement) { @@ -1245,7 +1238,7 @@ TEST_F(ValueSerializerTest, DecodeSparseArrayVersion0) { DecodeTestForVersion0( {0x55, 0x00, 0x53, 0x01, 'a', 0x55, 0x02, 0x55, 0x05, 0x53, 0x03, 'f', 'o', 'o', 0x53, 0x03, 'b', 'a', 'r', 0x53, - 0x03, 'b', 'a', 'z', 0x49, 0x0b, 0x40, 0x04, 0x03, 0x00}, + 0x03, 'b', 'a', 'z', 0x49, 0x0B, 0x40, 0x04, 0x03, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsArray()); EXPECT_EQ(3u, Array::Cast(*value)->Length()); @@ -1282,17 +1275,17 @@ TEST_F(ValueSerializerTest, RoundTripDenseArrayContainingUndefined) { TEST_F(ValueSerializerTest, DecodeDenseArrayContainingUndefined) { // In previous versions, "undefined" in a dense array signified absence of the // element (for compatibility). In new versions, it has a separate encoding. - DecodeTest({0xff, 0x09, 0x41, 0x01, 0x5f, 0x24, 0x00, 0x01}, + DecodeTest({0xFF, 0x09, 0x41, 0x01, 0x5F, 0x24, 0x00, 0x01}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool("!(0 in result)")); }); DecodeTest( - {0xff, 0x0b, 0x41, 0x01, 0x5f, 0x24, 0x00, 0x01}, + {0xFF, 0x0B, 0x41, 0x01, 0x5F, 0x24, 0x00, 0x01}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool("0 in result")); EXPECT_TRUE(EvaluateScriptForResultBool("result[0] === undefined")); }); - DecodeTest({0xff, 0x0b, 0x41, 0x01, 0x2d, 0x24, 0x00, 0x01}, + DecodeTest({0xFF, 0x0B, 0x41, 0x01, 0x2D, 0x24, 0x00, 0x01}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool("!(0 in result)")); }); @@ -1324,29 +1317,29 @@ TEST_F(ValueSerializerTest, RoundTripDate) { TEST_F(ValueSerializerTest, DecodeDate) { #if defined(V8_TARGET_LITTLE_ENDIAN) - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x44, 0x00, 0x00, 0x00, 0x00, 0x80, 0x84, - 0x2e, 0x41, 0x00}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x44, 0x00, 0x00, 0x00, 0x00, 0x80, 0x84, + 0x2E, 0x41, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsDate()); EXPECT_EQ(1e6, Date::Cast(*value)->ValueOf()); EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === Date.prototype")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x44, 0x00, 0x00, 0x20, 0x45, 0x27, 0x89, - 0x87, 0xc2, 0x00}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x44, 0x00, 0x00, 0x20, 0x45, 0x27, 0x89, + 0x87, 0xC2, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsDate()); EXPECT_TRUE(EvaluateScriptForResultBool( "result.toISOString() === '1867-07-01T00:00:00.000Z'")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xf8, 0x7f, 0x00}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x44, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xF8, 0x7F, 0x00}, [](Local<Value> value) { ASSERT_TRUE(value->IsDate()); EXPECT_TRUE(std::isnan(Date::Cast(*value)->ValueOf())); }); #else - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x44, 0x41, 0x2e, 0x84, 0x80, 0x00, 0x00, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x44, 0x41, 0x2E, 0x84, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsDate()); @@ -1354,14 +1347,14 @@ TEST_F(ValueSerializerTest, DecodeDate) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === Date.prototype")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x44, 0xc2, 0x87, 0x89, 0x27, 0x45, 0x20, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x44, 0xC2, 0x87, 0x89, 0x27, 0x45, 0x20, 0x00, 0x00, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsDate()); EXPECT_TRUE(EvaluateScriptForResultBool( "result.toISOString() === '1867-07-01T00:00:00.000Z'")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x44, 0x7f, 0xf8, 0x00, 0x00, 0x00, 0x00, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x44, 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, [](Local<Value> value) { ASSERT_TRUE(value->IsDate()); @@ -1369,9 +1362,9 @@ TEST_F(ValueSerializerTest, DecodeDate) { }); #endif DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x6f, 0x3f, 0x01, 0x53, 0x01, 0x61, 0x3f, - 0x01, 0x44, 0x00, 0x20, 0x39, 0x50, 0x37, 0x6a, 0x75, 0x42, 0x3f, - 0x02, 0x53, 0x01, 0x62, 0x3f, 0x02, 0x5e, 0x01, 0x7b, 0x02}, + {0xFF, 0x09, 0x3F, 0x00, 0x6F, 0x3F, 0x01, 0x53, 0x01, 0x61, 0x3F, + 0x01, 0x44, 0x00, 0x20, 0x39, 0x50, 0x37, 0x6A, 0x75, 0x42, 0x3F, + 0x02, 0x53, 0x01, 0x62, 0x3F, 0x02, 0x5E, 0x01, 0x7B, 0x02}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool("result.a instanceof Date")); EXPECT_TRUE(EvaluateScriptForResultBool("result.a === result.b")); @@ -1440,37 +1433,35 @@ TEST_F(ValueSerializerTest, RejectsOtherValueObjects) { TEST_F(ValueSerializerTest, DecodeValueObjects) { DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x79, 0x00}, - [this](Local<Value> value) { + {0xFF, 0x09, 0x3F, 0x00, 0x79, 0x00}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === Boolean.prototype")); EXPECT_TRUE(EvaluateScriptForResultBool("result.valueOf() === true")); }); DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x78, 0x00}, - [this](Local<Value> value) { + {0xFF, 0x09, 0x3F, 0x00, 0x78, 0x00}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === Boolean.prototype")); EXPECT_TRUE(EvaluateScriptForResultBool("result.valueOf() === false")); }); DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x6f, 0x3f, 0x01, 0x53, 0x01, 0x61, 0x3f, 0x01, - 0x79, 0x3f, 0x02, 0x53, 0x01, 0x62, 0x3f, 0x02, 0x5e, 0x01, 0x7b, 0x02}, + {0xFF, 0x09, 0x3F, 0x00, 0x6F, 0x3F, 0x01, 0x53, 0x01, 0x61, 0x3F, 0x01, + 0x79, 0x3F, 0x02, 0x53, 0x01, 0x62, 0x3F, 0x02, 0x5E, 0x01, 0x7B, 0x02}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool("result.a instanceof Boolean")); EXPECT_TRUE(EvaluateScriptForResultBool("result.a === result.b")); }); #if defined(V8_TARGET_LITTLE_ENDIAN) DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, - 0xc0, 0x00}, + {0xFF, 0x09, 0x3F, 0x00, 0x6E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, + 0xC0, 0x00}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === Number.prototype")); EXPECT_TRUE(EvaluateScriptForResultBool("result.valueOf() === -42")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0xf8, 0x7f, 0x00}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x6E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xF8, 0x7F, 0x00}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === Number.prototype")); @@ -1479,14 +1470,14 @@ TEST_F(ValueSerializerTest, DecodeValueObjects) { }); #else DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x6e, 0xc0, 0x45, 0x00, 0x00, 0x00, 0x00, 0x00, + {0xFF, 0x09, 0x3F, 0x00, 0x6E, 0xC0, 0x45, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === Number.prototype")); EXPECT_TRUE(EvaluateScriptForResultBool("result.valueOf() === -42")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x6e, 0x7f, 0xf8, 0x00, 0x00, 0x00, 0x00, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x6E, 0x7F, 0xF8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( @@ -1496,14 +1487,14 @@ TEST_F(ValueSerializerTest, DecodeValueObjects) { }); #endif DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x6f, 0x3f, 0x01, 0x53, 0x01, 0x61, 0x3f, - 0x01, 0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x40, 0x3f, - 0x02, 0x53, 0x01, 0x62, 0x3f, 0x02, 0x5e, 0x01, 0x7b, 0x02}, + {0xFF, 0x09, 0x3F, 0x00, 0x6F, 0x3F, 0x01, 0x53, 0x01, 0x61, 0x3F, + 0x01, 0x6E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x40, 0x3F, + 0x02, 0x53, 0x01, 0x62, 0x3F, 0x02, 0x5E, 0x01, 0x7B, 0x02}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool("result.a instanceof Number")); EXPECT_TRUE(EvaluateScriptForResultBool("result.a === result.b")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x73, 0x07, 0x51, 0x75, 0xc3, 0xa9, 0x62, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x73, 0x07, 0x51, 0x75, 0xC3, 0xA9, 0x62, 0x65, 0x63, 0x00}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( @@ -1512,7 +1503,7 @@ TEST_F(ValueSerializerTest, DecodeValueObjects) { "result.valueOf() === 'Qu\\xe9bec'")); EXPECT_TRUE(EvaluateScriptForResultBool("result.length === 6")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x73, 0x04, 0xf0, 0x9f, 0x91, 0x8a}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x73, 0x04, 0xF0, 0x9F, 0x91, 0x8A}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === String.prototype")); @@ -1521,16 +1512,16 @@ TEST_F(ValueSerializerTest, DecodeValueObjects) { EXPECT_TRUE(EvaluateScriptForResultBool("result.length === 2")); }); DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x6f, 0x3f, 0x01, 0x53, 0x01, - 0x61, 0x3f, 0x01, 0x73, 0x00, 0x3f, 0x02, 0x53, 0x01, - 0x62, 0x3f, 0x02, 0x5e, 0x01, 0x7b, 0x02, 0x00}, + {0xFF, 0x09, 0x3F, 0x00, 0x6F, 0x3F, 0x01, 0x53, 0x01, + 0x61, 0x3F, 0x01, 0x73, 0x00, 0x3F, 0x02, 0x53, 0x01, + 0x62, 0x3F, 0x02, 0x5E, 0x01, 0x7B, 0x02, 0x00}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool("result.a instanceof String")); EXPECT_TRUE(EvaluateScriptForResultBool("result.a === result.b")); }); // String object containing a Latin-1 string. - DecodeTest({0xff, 0x0c, 0x73, 0x22, 0x06, 'Q', 'u', 0xe9, 'b', 'e', 'c'}, + DecodeTest({0xFF, 0x0C, 0x73, 0x22, 0x06, 'Q', 'u', 0xE9, 'b', 'e', 'c'}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === String.prototype")); @@ -1567,7 +1558,7 @@ TEST_F(ValueSerializerTest, RoundTripRegExp) { } TEST_F(ValueSerializerTest, DecodeRegExp) { - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x52, 0x03, 0x66, 0x6f, 0x6f, 0x01}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x52, 0x03, 0x66, 0x6F, 0x6F, 0x01}, [this](Local<Value> value) { ASSERT_TRUE(value->IsRegExp()); EXPECT_TRUE(EvaluateScriptForResultBool( @@ -1575,7 +1566,7 @@ TEST_F(ValueSerializerTest, DecodeRegExp) { EXPECT_TRUE(EvaluateScriptForResultBool( "result.toString() === '/foo/g'")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x52, 0x07, 0x51, 0x75, 0xc3, 0xa9, 0x62, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x52, 0x07, 0x51, 0x75, 0xC3, 0xA9, 0x62, 0x65, 0x63, 0x02}, [this](Local<Value> value) { ASSERT_TRUE(value->IsRegExp()); @@ -1583,16 +1574,16 @@ TEST_F(ValueSerializerTest, DecodeRegExp) { "result.toString() === '/Qu\\xe9bec/i'")); }); DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x52, 0x04, 0xf0, 0x9f, 0x91, 0x8a, 0x11, 0x00}, + {0xFF, 0x09, 0x3F, 0x00, 0x52, 0x04, 0xF0, 0x9F, 0x91, 0x8A, 0x11, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsRegExp()); EXPECT_TRUE(EvaluateScriptForResultBool( "result.toString() === '/\\ud83d\\udc4a/gu'")); }); DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x6f, 0x3f, 0x01, 0x53, 0x01, 0x61, - 0x3f, 0x01, 0x52, 0x03, 0x66, 0x6f, 0x6f, 0x03, 0x3f, 0x02, - 0x53, 0x01, 0x62, 0x3f, 0x02, 0x5e, 0x01, 0x7b, 0x02, 0x00}, + {0xFF, 0x09, 0x3F, 0x00, 0x6F, 0x3F, 0x01, 0x53, 0x01, 0x61, + 0x3F, 0x01, 0x52, 0x03, 0x66, 0x6F, 0x6F, 0x03, 0x3F, 0x02, + 0x53, 0x01, 0x62, 0x3F, 0x02, 0x5E, 0x01, 0x7B, 0x02, 0x00}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool("result.a instanceof RegExp")); EXPECT_TRUE(EvaluateScriptForResultBool("result.a === result.b")); @@ -1600,7 +1591,7 @@ TEST_F(ValueSerializerTest, DecodeRegExp) { // RegExp containing a Latin-1 string. DecodeTest( - {0xff, 0x0c, 0x52, 0x22, 0x06, 'Q', 'u', 0xe9, 'b', 'e', 'c', 0x02}, + {0xFF, 0x0C, 0x52, 0x22, 0x06, 'Q', 'u', 0xE9, 'b', 'e', 'c', 0x02}, [this](Local<Value> value) { ASSERT_TRUE(value->IsRegExp()); EXPECT_TRUE(EvaluateScriptForResultBool( @@ -1610,7 +1601,7 @@ TEST_F(ValueSerializerTest, DecodeRegExp) { // Tests that invalid flags are not accepted by the deserializer. TEST_F(ValueSerializerTest, DecodeRegExpDotAll) { - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x52, 0x03, 0x66, 0x6f, 0x6f, 0x1f}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x52, 0x03, 0x66, 0x6F, 0x6F, 0x1F}, [this](Local<Value> value) { ASSERT_TRUE(value->IsRegExp()); EXPECT_TRUE(EvaluateScriptForResultBool( @@ -1618,7 +1609,7 @@ TEST_F(ValueSerializerTest, DecodeRegExpDotAll) { EXPECT_TRUE(EvaluateScriptForResultBool( "result.toString() === '/foo/gimuy'")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x52, 0x03, 0x66, 0x6f, 0x6f, 0x3f}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x52, 0x03, 0x66, 0x6F, 0x6F, 0x3F}, [this](Local<Value> value) { ASSERT_TRUE(value->IsRegExp()); EXPECT_TRUE(EvaluateScriptForResultBool( @@ -1627,7 +1618,7 @@ TEST_F(ValueSerializerTest, DecodeRegExpDotAll) { "result.toString() === '/foo/gimsuy'")); }); InvalidDecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x52, 0x03, 0x66, 0x6f, 0x6f, 0x7f}); + {0xFF, 0x09, 0x3F, 0x00, 0x52, 0x03, 0x66, 0x6F, 0x6F, 0x7F}); } TEST_F(ValueSerializerTest, RoundTripMap) { @@ -1663,8 +1654,8 @@ TEST_F(ValueSerializerTest, RoundTripMap) { TEST_F(ValueSerializerTest, DecodeMap) { DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x3b, 0x3f, 0x01, 0x49, 0x54, 0x3f, 0x01, 0x53, - 0x03, 0x66, 0x6f, 0x6f, 0x3a, 0x02}, + {0xFF, 0x09, 0x3F, 0x00, 0x3B, 0x3F, 0x01, 0x49, 0x54, 0x3F, 0x01, 0x53, + 0x03, 0x66, 0x6F, 0x6F, 0x3A, 0x02}, [this](Local<Value> value) { ASSERT_TRUE(value->IsMap()); EXPECT_TRUE(EvaluateScriptForResultBool( @@ -1672,8 +1663,8 @@ TEST_F(ValueSerializerTest, DecodeMap) { EXPECT_TRUE(EvaluateScriptForResultBool("result.size === 1")); EXPECT_TRUE(EvaluateScriptForResultBool("result.get(42) === 'foo'")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x3b, 0x3f, 0x01, 0x5e, 0x00, 0x3f, 0x01, - 0x5e, 0x00, 0x3a, 0x02, 0x00}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x3B, 0x3F, 0x01, 0x5E, 0x00, 0x3F, 0x01, + 0x5E, 0x00, 0x3A, 0x02, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsMap()); EXPECT_TRUE(EvaluateScriptForResultBool("result.size === 1")); @@ -1681,10 +1672,10 @@ TEST_F(ValueSerializerTest, DecodeMap) { "result.get(result) === result")); }); // Iteration order must be preserved. - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x3b, 0x3f, 0x01, 0x49, 0x02, 0x3f, - 0x01, 0x49, 0x00, 0x3f, 0x01, 0x53, 0x01, 0x61, 0x3f, 0x01, - 0x49, 0x00, 0x3f, 0x01, 0x49, 0x06, 0x3f, 0x01, 0x49, 0x00, - 0x3f, 0x01, 0x49, 0x04, 0x3f, 0x01, 0x49, 0x00, 0x3a, 0x08}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x3B, 0x3F, 0x01, 0x49, 0x02, 0x3F, + 0x01, 0x49, 0x00, 0x3F, 0x01, 0x53, 0x01, 0x61, 0x3F, 0x01, + 0x49, 0x00, 0x3F, 0x01, 0x49, 0x06, 0x3F, 0x01, 0x49, 0x00, + 0x3F, 0x01, 0x49, 0x04, 0x3F, 0x01, 0x49, 0x00, 0x3A, 0x08}, [this](Local<Value> value) { ASSERT_TRUE(value->IsMap()); EXPECT_TRUE(EvaluateScriptForResultBool( @@ -1763,8 +1754,8 @@ TEST_F(ValueSerializerTest, RoundTripSet) { } TEST_F(ValueSerializerTest, DecodeSet) { - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x27, 0x3f, 0x01, 0x49, 0x54, 0x3f, 0x01, - 0x53, 0x03, 0x66, 0x6f, 0x6f, 0x2c, 0x02}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x27, 0x3F, 0x01, 0x49, 0x54, 0x3F, 0x01, + 0x53, 0x03, 0x66, 0x6F, 0x6F, 0x2C, 0x02}, [this](Local<Value> value) { ASSERT_TRUE(value->IsSet()); EXPECT_TRUE(EvaluateScriptForResultBool( @@ -1774,7 +1765,7 @@ TEST_F(ValueSerializerTest, DecodeSet) { EXPECT_TRUE(EvaluateScriptForResultBool("result.has('foo')")); }); DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x27, 0x3f, 0x01, 0x5e, 0x00, 0x2c, 0x01, 0x00}, + {0xFF, 0x09, 0x3F, 0x00, 0x27, 0x3F, 0x01, 0x5E, 0x00, 0x2C, 0x01, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsSet()); EXPECT_TRUE(EvaluateScriptForResultBool("result.size === 1")); @@ -1782,8 +1773,8 @@ TEST_F(ValueSerializerTest, DecodeSet) { }); // Iteration order must be preserved. DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x27, 0x3f, 0x01, 0x49, 0x02, 0x3f, 0x01, 0x53, - 0x01, 0x61, 0x3f, 0x01, 0x49, 0x06, 0x3f, 0x01, 0x49, 0x04, 0x2c, 0x04}, + {0xFF, 0x09, 0x3F, 0x00, 0x27, 0x3F, 0x01, 0x49, 0x02, 0x3F, 0x01, 0x53, + 0x01, 0x61, 0x3F, 0x01, 0x49, 0x06, 0x3F, 0x01, 0x49, 0x04, 0x2C, 0x04}, [this](Local<Value> value) { ASSERT_TRUE(value->IsSet()); EXPECT_TRUE(EvaluateScriptForResultBool( @@ -1849,14 +1840,14 @@ TEST_F(ValueSerializerTest, RoundTripArrayBuffer) { } TEST_F(ValueSerializerTest, DecodeArrayBuffer) { - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x42, 0x00}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x42, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsArrayBuffer()); EXPECT_EQ(0u, ArrayBuffer::Cast(*value)->ByteLength()); EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === ArrayBuffer.prototype")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x42, 0x03, 0x00, 0x80, 0xff, 0x00}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x42, 0x03, 0x00, 0x80, 0xFF, 0x00}, [this](Local<Value> value) { ASSERT_TRUE(value->IsArrayBuffer()); EXPECT_EQ(3u, ArrayBuffer::Cast(*value)->ByteLength()); @@ -1864,9 +1855,9 @@ TEST_F(ValueSerializerTest, DecodeArrayBuffer) { "new Uint8Array(result).toString() === '0,128,255'")); }); DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x6f, 0x3f, 0x01, 0x53, 0x01, - 0x61, 0x3f, 0x01, 0x42, 0x00, 0x3f, 0x02, 0x53, 0x01, - 0x62, 0x3f, 0x02, 0x5e, 0x01, 0x7b, 0x02, 0x00}, + {0xFF, 0x09, 0x3F, 0x00, 0x6F, 0x3F, 0x01, 0x53, 0x01, + 0x61, 0x3F, 0x01, 0x42, 0x00, 0x3F, 0x02, 0x53, 0x01, + 0x62, 0x3F, 0x02, 0x5E, 0x01, 0x7B, 0x02, 0x00}, [this](Local<Value> value) { EXPECT_TRUE( EvaluateScriptForResultBool("result.a instanceof ArrayBuffer")); @@ -1875,7 +1866,7 @@ TEST_F(ValueSerializerTest, DecodeArrayBuffer) { } TEST_F(ValueSerializerTest, DecodeInvalidArrayBuffer) { - InvalidDecodeTest({0xff, 0x09, 0x42, 0xff, 0xff, 0x00}); + InvalidDecodeTest({0xFF, 0x09, 0x42, 0xFF, 0xFF, 0x00}); } // An array buffer allocator that never has available memory. @@ -1904,8 +1895,8 @@ TEST_F(ValueSerializerTest, DecodeArrayBufferOOM) { Context::Scope context_scope(context); TryCatch try_catch(isolate); - const std::vector<uint8_t> data = {0xff, 0x09, 0x3f, 0x00, 0x42, - 0x03, 0x00, 0x80, 0xff, 0x00}; + const std::vector<uint8_t> data = {0xFF, 0x09, 0x3F, 0x00, 0x42, + 0x03, 0x00, 0x80, 0xFF, 0x00}; ValueDeserializer deserializer(isolate, &data[0], static_cast<int>(data.size()), nullptr); deserializer.SetSupportsLegacyWireFormat(true); @@ -1931,7 +1922,7 @@ class ValueSerializerTestWithArrayBufferTransfer : public ValueSerializerTest { { Context::Scope scope(deserialization_context()); output_buffer_ = ArrayBuffer::New(isolate(), kTestByteLength); - const uint8_t data[kTestByteLength] = {0x00, 0x01, 0x80, 0xff}; + const uint8_t data[kTestByteLength] = {0x00, 0x01, 0x80, 0xFF}; memcpy(output_buffer_->GetContents().Data(), data, kTestByteLength); } } @@ -2044,7 +2035,7 @@ TEST_F(ValueSerializerTest, RoundTripTypedArray) { TEST_F(ValueSerializerTest, DecodeTypedArray) { // Check that the right type comes out the other side for every kind of typed // array. - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x3f, 0x00, 0x42, 0x02, 0x00, 0x00, 0x56, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x3F, 0x00, 0x42, 0x02, 0x00, 0x00, 0x56, 0x42, 0x00, 0x02}, [this](Local<Value> value) { ASSERT_TRUE(value->IsUint8Array()); @@ -2053,7 +2044,7 @@ TEST_F(ValueSerializerTest, DecodeTypedArray) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === Uint8Array.prototype")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x3f, 0x00, 0x42, 0x02, 0x00, 0x00, 0x56, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x3F, 0x00, 0x42, 0x02, 0x00, 0x00, 0x56, 0x62, 0x00, 0x02}, [this](Local<Value> value) { ASSERT_TRUE(value->IsInt8Array()); @@ -2063,7 +2054,7 @@ TEST_F(ValueSerializerTest, DecodeTypedArray) { "Object.getPrototypeOf(result) === Int8Array.prototype")); }); #if defined(V8_TARGET_LITTLE_ENDIAN) - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x3f, 0x00, 0x42, 0x04, 0x00, 0x00, 0x00, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x3F, 0x00, 0x42, 0x04, 0x00, 0x00, 0x00, 0x00, 0x56, 0x57, 0x00, 0x04}, [this](Local<Value> value) { ASSERT_TRUE(value->IsUint16Array()); @@ -2072,7 +2063,7 @@ TEST_F(ValueSerializerTest, DecodeTypedArray) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === Uint16Array.prototype")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x3f, 0x00, 0x42, 0x04, 0x00, 0x00, 0x00, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x3F, 0x00, 0x42, 0x04, 0x00, 0x00, 0x00, 0x00, 0x56, 0x77, 0x00, 0x04}, [this](Local<Value> value) { ASSERT_TRUE(value->IsInt16Array()); @@ -2081,7 +2072,7 @@ TEST_F(ValueSerializerTest, DecodeTypedArray) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === Int16Array.prototype")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x3f, 0x00, 0x42, 0x08, 0x00, 0x00, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x3F, 0x00, 0x42, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x44, 0x00, 0x08}, [this](Local<Value> value) { ASSERT_TRUE(value->IsUint32Array()); @@ -2090,7 +2081,7 @@ TEST_F(ValueSerializerTest, DecodeTypedArray) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === Uint32Array.prototype")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x3f, 0x00, 0x42, 0x08, 0x00, 0x00, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x3F, 0x00, 0x42, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x64, 0x00, 0x08}, [this](Local<Value> value) { ASSERT_TRUE(value->IsInt32Array()); @@ -2099,7 +2090,7 @@ TEST_F(ValueSerializerTest, DecodeTypedArray) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === Int32Array.prototype")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x3f, 0x00, 0x42, 0x08, 0x00, 0x00, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x3F, 0x00, 0x42, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x66, 0x00, 0x08}, [this](Local<Value> value) { ASSERT_TRUE(value->IsFloat32Array()); @@ -2108,7 +2099,7 @@ TEST_F(ValueSerializerTest, DecodeTypedArray) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === Float32Array.prototype")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x3f, 0x00, 0x42, 0x10, 0x00, 0x00, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x3F, 0x00, 0x42, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x46, 0x00, 0x10}, [this](Local<Value> value) { @@ -2121,22 +2112,22 @@ TEST_F(ValueSerializerTest, DecodeTypedArray) { #endif // V8_TARGET_LITTLE_ENDIAN // Check that values of various kinds are suitably preserved. - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x3f, 0x00, 0x42, 0x03, 0x01, 0x80, 0xff, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x3F, 0x00, 0x42, 0x03, 0x01, 0x80, 0xFF, 0x56, 0x42, 0x00, 0x03, 0x00}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "result.toString() === '1,128,255'")); }); #if defined(V8_TARGET_LITTLE_ENDIAN) - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x3f, 0x00, 0x42, 0x06, 0x00, 0x00, 0x00, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x3F, 0x00, 0x42, 0x06, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x56, 0x77, 0x00, 0x06}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "result.toString() === '0,256,-32768'")); }); - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x3f, 0x00, 0x42, 0x10, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0xbf, 0x00, 0x00, 0xc0, 0x7f, - 0x00, 0x00, 0x80, 0x7f, 0x56, 0x66, 0x00, 0x10}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x3F, 0x00, 0x42, 0x10, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xBF, 0x00, 0x00, 0xC0, 0x7F, + 0x00, 0x00, 0x80, 0x7F, 0x56, 0x66, 0x00, 0x10}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "result.toString() === '0,-0.5,NaN,Infinity'")); @@ -2146,14 +2137,14 @@ TEST_F(ValueSerializerTest, DecodeTypedArray) { // Array buffer views sharing a buffer should do so on the other side. // Similarly, multiple references to the same typed array should be resolved. DecodeTest( - {0xff, 0x09, 0x3f, 0x00, 0x6f, 0x3f, 0x01, 0x53, 0x02, 0x75, 0x38, 0x3f, - 0x01, 0x3f, 0x01, 0x42, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + {0xFF, 0x09, 0x3F, 0x00, 0x6F, 0x3F, 0x01, 0x53, 0x02, 0x75, 0x38, 0x3F, + 0x01, 0x3F, 0x01, 0x42, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x56, 0x42, 0x00, 0x20, 0x3f, 0x03, 0x53, 0x04, 0x75, 0x38, 0x5f, - 0x32, 0x3f, 0x03, 0x5e, 0x02, 0x3f, 0x03, 0x53, 0x03, 0x66, 0x33, 0x32, - 0x3f, 0x03, 0x3f, 0x03, 0x5e, 0x01, 0x56, 0x66, 0x04, 0x14, 0x3f, 0x04, - 0x53, 0x01, 0x62, 0x3f, 0x04, 0x5e, 0x01, 0x7b, 0x04, 0x00}, + 0x00, 0x56, 0x42, 0x00, 0x20, 0x3F, 0x03, 0x53, 0x04, 0x75, 0x38, 0x5F, + 0x32, 0x3F, 0x03, 0x5E, 0x02, 0x3F, 0x03, 0x53, 0x03, 0x66, 0x33, 0x32, + 0x3F, 0x03, 0x3F, 0x03, 0x5E, 0x01, 0x56, 0x66, 0x04, 0x14, 0x3F, 0x04, + 0x53, 0x01, 0x62, 0x3F, 0x04, 0x5E, 0x01, 0x7B, 0x04, 0x00}, [this](Local<Value> value) { EXPECT_TRUE( EvaluateScriptForResultBool("result.u8 instanceof Uint8Array")); @@ -2170,19 +2161,19 @@ TEST_F(ValueSerializerTest, DecodeTypedArray) { TEST_F(ValueSerializerTest, DecodeInvalidTypedArray) { // Byte offset out of range. InvalidDecodeTest( - {0xff, 0x09, 0x42, 0x02, 0x00, 0x00, 0x56, 0x42, 0x03, 0x01}); + {0xFF, 0x09, 0x42, 0x02, 0x00, 0x00, 0x56, 0x42, 0x03, 0x01}); // Byte offset in range, offset + length out of range. InvalidDecodeTest( - {0xff, 0x09, 0x42, 0x02, 0x00, 0x00, 0x56, 0x42, 0x01, 0x03}); + {0xFF, 0x09, 0x42, 0x02, 0x00, 0x00, 0x56, 0x42, 0x01, 0x03}); // Byte offset not divisible by element size. InvalidDecodeTest( - {0xff, 0x09, 0x42, 0x04, 0x00, 0x00, 0x00, 0x00, 0x56, 0x77, 0x01, 0x02}); + {0xFF, 0x09, 0x42, 0x04, 0x00, 0x00, 0x00, 0x00, 0x56, 0x77, 0x01, 0x02}); // Byte length not divisible by element size. InvalidDecodeTest( - {0xff, 0x09, 0x42, 0x04, 0x00, 0x00, 0x00, 0x00, 0x56, 0x77, 0x02, 0x01}); - // Invalid view type (0xff). + {0xFF, 0x09, 0x42, 0x04, 0x00, 0x00, 0x00, 0x00, 0x56, 0x77, 0x02, 0x01}); + // Invalid view type (0xFF). InvalidDecodeTest( - {0xff, 0x09, 0x42, 0x02, 0x00, 0x00, 0x56, 0xff, 0x01, 0x01}); + {0xFF, 0x09, 0x42, 0x02, 0x00, 0x00, 0x56, 0xFF, 0x01, 0x01}); } TEST_F(ValueSerializerTest, RoundTripDataView) { @@ -2198,8 +2189,8 @@ TEST_F(ValueSerializerTest, RoundTripDataView) { } TEST_F(ValueSerializerTest, DecodeDataView) { - DecodeTest({0xff, 0x09, 0x3f, 0x00, 0x3f, 0x00, 0x42, 0x04, 0x00, 0x00, 0x00, - 0x00, 0x56, 0x3f, 0x01, 0x02}, + DecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x3F, 0x00, 0x42, 0x04, 0x00, 0x00, 0x00, + 0x00, 0x56, 0x3F, 0x01, 0x02}, [this](Local<Value> value) { ASSERT_TRUE(value->IsDataView()); EXPECT_EQ(1u, DataView::Cast(*value)->ByteOffset()); @@ -2213,10 +2204,10 @@ TEST_F(ValueSerializerTest, DecodeDataView) { TEST_F(ValueSerializerTest, DecodeInvalidDataView) { // Byte offset out of range. InvalidDecodeTest( - {0xff, 0x09, 0x42, 0x02, 0x00, 0x00, 0x56, 0x3f, 0x03, 0x01}); + {0xFF, 0x09, 0x42, 0x02, 0x00, 0x00, 0x56, 0x3F, 0x03, 0x01}); // Byte offset in range, offset + length out of range. InvalidDecodeTest( - {0xff, 0x09, 0x42, 0x02, 0x00, 0x00, 0x56, 0x3f, 0x01, 0x03}); + {0xFF, 0x09, 0x42, 0x02, 0x00, 0x00, 0x56, 0x3F, 0x01, 0x03}); } class ValueSerializerTestWithSharedArrayBufferTransfer @@ -2303,7 +2294,7 @@ bool ValueSerializerTestWithSharedArrayBufferTransfer::flag_was_enabled_ = TEST_F(ValueSerializerTestWithSharedArrayBufferTransfer, RoundTripSharedArrayBufferTransfer) { - InitializeData({0x00, 0x01, 0x80, 0xff}); + InitializeData({0x00, 0x01, 0x80, 0xFF}); EXPECT_CALL(serializer_delegate_, GetSharedArrayBufferId(isolate(), input_buffer())) @@ -2345,7 +2336,7 @@ TEST_F(ValueSerializerTestWithSharedArrayBufferTransfer, bool flag_was_enabled = i::FLAG_experimental_wasm_threads; i::FLAG_experimental_wasm_threads = true; - std::vector<uint8_t> data = {0x00, 0x01, 0x80, 0xff}; + std::vector<uint8_t> data = {0x00, 0x01, 0x80, 0xFF}; data.resize(65536); InitializeData(data); @@ -2628,7 +2619,7 @@ TEST_F(ValueSerializerTestWithHostObject, DecodeSimpleHostObject) { return NewHostObject(deserialization_context(), 0, nullptr); })); DecodeTest( - {0xff, 0x0d, 0x5c, kExampleHostObjectTag}, [this](Local<Value> value) { + {0xFF, 0x0D, 0x5C, kExampleHostObjectTag}, [this](Local<Value> value) { EXPECT_TRUE(EvaluateScriptForResultBool( "Object.getPrototypeOf(result) === ExampleHostObject.prototype")); }); @@ -2963,67 +2954,67 @@ TEST_F(ValueSerializerTestWithWasm, ComplexObjectWithManyInline) { // As produced around Chrome 56. const unsigned char kSerializedIncrementerWasm[] = { - 0xff, 0x09, 0x3f, 0x00, 0x57, 0x79, 0x2d, 0x00, 0x61, 0x73, 0x6d, 0x0d, - 0x00, 0x00, 0x00, 0x01, 0x06, 0x01, 0x60, 0x01, 0x7f, 0x01, 0x7f, 0x03, - 0x02, 0x01, 0x00, 0x07, 0x0d, 0x01, 0x09, 0x69, 0x6e, 0x63, 0x72, 0x65, - 0x6d, 0x65, 0x6e, 0x74, 0x00, 0x00, 0x0a, 0x08, 0x01, 0x06, 0x00, 0x20, - 0x00, 0x41, 0x01, 0x6a, 0xf8, 0x04, 0xa1, 0x06, 0xde, 0xc0, 0xc6, 0x44, - 0x3c, 0x29, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x02, 0x00, 0x00, 0x81, 0x4e, - 0xce, 0x7c, 0x05, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x30, 0x02, - 0x00, 0x00, 0xb0, 0x25, 0x30, 0xe3, 0xf2, 0xdb, 0x2e, 0x48, 0x00, 0x00, - 0x00, 0x80, 0xe8, 0x00, 0x00, 0x80, 0xe0, 0x01, 0x00, 0x80, 0x00, 0x00, + 0xFF, 0x09, 0x3F, 0x00, 0x57, 0x79, 0x2D, 0x00, 0x61, 0x73, 0x6D, 0x0D, + 0x00, 0x00, 0x00, 0x01, 0x06, 0x01, 0x60, 0x01, 0x7F, 0x01, 0x7F, 0x03, + 0x02, 0x01, 0x00, 0x07, 0x0D, 0x01, 0x09, 0x69, 0x6E, 0x63, 0x72, 0x65, + 0x6D, 0x65, 0x6E, 0x74, 0x00, 0x00, 0x0A, 0x08, 0x01, 0x06, 0x00, 0x20, + 0x00, 0x41, 0x01, 0x6A, 0xF8, 0x04, 0xA1, 0x06, 0xDE, 0xC0, 0xC6, 0x44, + 0x3C, 0x29, 0x00, 0x00, 0x00, 0x00, 0x1F, 0x02, 0x00, 0x00, 0x81, 0x4E, + 0xCE, 0x7C, 0x05, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x30, 0x02, + 0x00, 0x00, 0xB0, 0x25, 0x30, 0xE3, 0xF2, 0xDB, 0x2E, 0x48, 0x00, 0x00, + 0x00, 0x80, 0xE8, 0x00, 0x00, 0x80, 0xE0, 0x01, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x07, 0x08, 0x00, 0x00, 0x09, 0x04, - 0x10, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3c, 0x8c, 0xc0, 0x00, 0x00, - 0x00, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x01, 0x10, 0x8c, 0xc0, 0x00, 0x00, - 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x70, 0x94, 0x01, 0x0c, 0x8b, - 0xc1, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x25, 0xdc, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x9e, 0x01, 0x10, 0x8c, 0xc0, 0x00, 0x00, - 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x84, 0xc0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x05, 0x7d, 0x01, 0x1a, 0xe1, 0x02, 0x00, 0x00, + 0x10, 0x02, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3C, 0x8C, 0xC0, 0x00, 0x00, + 0x00, 0x00, 0x0D, 0x00, 0x00, 0x00, 0x01, 0x10, 0x8C, 0xC0, 0x00, 0x00, + 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x70, 0x94, 0x01, 0x0C, 0x8B, + 0xC1, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x25, 0xDC, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x9E, 0x01, 0x10, 0x8C, 0xC0, 0x00, 0x00, + 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x84, 0xC0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x05, 0x7D, 0x01, 0x1A, 0xE1, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x23, 0x88, 0x42, 0x32, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x63, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x04, 0x00, - 0x00, 0x02, 0xa1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, - 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x49, 0x3b, 0xa5, 0x60, 0x0c, 0x00, - 0x00, 0x0f, 0x86, 0x04, 0x00, 0x00, 0x00, 0x83, 0xc0, 0x01, 0xc3, 0x55, - 0x48, 0x89, 0xe5, 0x49, 0xba, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, - 0x00, 0x41, 0x52, 0x48, 0x83, 0xec, 0x08, 0x48, 0x89, 0x45, 0xf0, 0x48, - 0xbb, 0xb0, 0x67, 0xc6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0xc0, 0x48, - 0xbe, 0xe1, 0x57, 0x81, 0x85, 0xf6, 0x14, 0x00, 0x00, 0xe8, 0xfc, 0x3c, - 0xea, 0xff, 0x48, 0x8b, 0x45, 0xf0, 0x48, 0x8b, 0xe5, 0x5d, 0xeb, 0xbf, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3E, 0x00, 0x00, 0x00, 0x04, 0x00, + 0x00, 0x02, 0xA1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, + 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x49, 0x3B, 0xA5, 0x60, 0x0C, 0x00, + 0x00, 0x0F, 0x86, 0x04, 0x00, 0x00, 0x00, 0x83, 0xC0, 0x01, 0xC3, 0x55, + 0x48, 0x89, 0xE5, 0x49, 0xBA, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, + 0x00, 0x41, 0x52, 0x48, 0x83, 0xEC, 0x08, 0x48, 0x89, 0x45, 0xF0, 0x48, + 0xBB, 0xB0, 0x67, 0xC6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0xC0, 0x48, + 0xBE, 0xE1, 0x57, 0x81, 0x85, 0xF6, 0x14, 0x00, 0x00, 0xE8, 0xFC, 0x3C, + 0xEA, 0xFF, 0x48, 0x8B, 0x45, 0xF0, 0x48, 0x8B, 0xE5, 0x5D, 0xEB, 0xBF, 0x66, 0x90, 0x01, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x44, 0x00, - 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x0f, 0x20, 0x84, 0x0f, 0x7d, 0x01, 0x0d, 0x00, 0x0f, 0x04, - 0x6d, 0x08, 0x0f, 0xf0, 0x02, 0x80, 0x94, 0x01, 0x0c, 0x8b, 0xc1, 0x00, - 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0xed, 0xa9, 0x2d, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x9e, 0xe0, 0x38, 0x1a, 0x61, 0x03, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0F, 0x20, 0x84, 0x0F, 0x7D, 0x01, 0x0D, 0x00, 0x0F, 0x04, + 0x6D, 0x08, 0x0F, 0xF0, 0x02, 0x80, 0x94, 0x01, 0x0C, 0x8B, 0xC1, 0x00, + 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0xED, 0xA9, 0x2D, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x9E, 0xE0, 0x38, 0x1A, 0x61, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x23, 0x88, 0x42, 0x32, 0x03, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9a, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x4e, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, - 0x02, 0xf9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, - 0xff, 0x00, 0x00, 0x00, 0x00, 0x55, 0x48, 0x89, 0xe5, 0x56, 0x57, 0x48, - 0x8b, 0x45, 0x10, 0xe8, 0x11, 0xed, 0xed, 0xff, 0xa8, 0x01, 0x0f, 0x85, - 0x2d, 0x00, 0x00, 0x00, 0x48, 0xc1, 0xe8, 0x20, 0xc5, 0xf9, 0x57, 0xc0, - 0xc5, 0xfb, 0x2a, 0xc0, 0xc4, 0xe1, 0xfb, 0x2c, 0xc0, 0x48, 0x83, 0xf8, - 0x01, 0x0f, 0x80, 0x34, 0x00, 0x00, 0x00, 0x8b, 0xc0, 0xe8, 0x27, 0xfe, - 0xff, 0xff, 0x48, 0xc1, 0xe0, 0x20, 0x48, 0x8b, 0xe5, 0x5d, 0xc2, 0x10, - 0x00, 0x49, 0x39, 0x45, 0xa0, 0x0f, 0x84, 0x07, 0x00, 0x00, 0x00, 0xc5, - 0xfb, 0x10, 0x40, 0x07, 0xeb, 0xce, 0x49, 0xba, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xf8, 0x7f, 0xc4, 0xc1, 0xf9, 0x6e, 0xc2, 0xeb, 0xbd, 0x48, - 0x83, 0xec, 0x08, 0xc5, 0xfb, 0x11, 0x04, 0x24, 0xe8, 0xcc, 0xfe, 0xff, - 0xff, 0x48, 0x83, 0xc4, 0x08, 0xeb, 0xb8, 0x66, 0x90, 0x02, 0x00, 0x00, - 0x00, 0x03, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, - 0x0f, 0x39, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0x00, - 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x20, 0x84, - 0x0f, 0xcc, 0x6e, 0x7d, 0x01, 0x72, 0x98, 0x00, 0x0f, 0xdc, 0x6d, 0x0c, - 0x0f, 0xb0, 0x84, 0x0d, 0x04, 0x84, 0xe3, 0xc0, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x84, 0xe0, 0x84, 0x84, 0x18, 0x2f, 0x2f, 0x2f, - 0x2f, 0x2f}; + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9A, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x4E, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, + 0x02, 0xF9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, + 0xFF, 0x00, 0x00, 0x00, 0x00, 0x55, 0x48, 0x89, 0xE5, 0x56, 0x57, 0x48, + 0x8B, 0x45, 0x10, 0xE8, 0x11, 0xED, 0xED, 0xFF, 0xA8, 0x01, 0x0F, 0x85, + 0x2D, 0x00, 0x00, 0x00, 0x48, 0xC1, 0xE8, 0x20, 0xC5, 0xF9, 0x57, 0xC0, + 0xC5, 0xFB, 0x2A, 0xC0, 0xC4, 0xE1, 0xFB, 0x2C, 0xC0, 0x48, 0x83, 0xF8, + 0x01, 0x0F, 0x80, 0x34, 0x00, 0x00, 0x00, 0x8B, 0xC0, 0xE8, 0x27, 0xFE, + 0xFF, 0xFF, 0x48, 0xC1, 0xE0, 0x20, 0x48, 0x8B, 0xE5, 0x5D, 0xC2, 0x10, + 0x00, 0x49, 0x39, 0x45, 0xA0, 0x0F, 0x84, 0x07, 0x00, 0x00, 0x00, 0xC5, + 0xFB, 0x10, 0x40, 0x07, 0xEB, 0xCE, 0x49, 0xBA, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xF8, 0x7F, 0xC4, 0xC1, 0xF9, 0x6E, 0xC2, 0xEB, 0xBD, 0x48, + 0x83, 0xEC, 0x08, 0xC5, 0xFB, 0x11, 0x04, 0x24, 0xE8, 0xCC, 0xFE, 0xFF, + 0xFF, 0x48, 0x83, 0xC4, 0x08, 0xEB, 0xB8, 0x66, 0x90, 0x02, 0x00, 0x00, + 0x00, 0x03, 0x00, 0x00, 0x00, 0x0F, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, + 0x0F, 0x39, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0x0F, 0xFF, 0xFF, 0x00, + 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0F, 0x20, 0x84, + 0x0F, 0xCC, 0x6E, 0x7D, 0x01, 0x72, 0x98, 0x00, 0x0F, 0xDC, 0x6D, 0x0C, + 0x0F, 0xB0, 0x84, 0x0D, 0x04, 0x84, 0xE3, 0xC0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x84, 0xE0, 0x84, 0x84, 0x18, 0x2F, 0x2F, 0x2F, + 0x2F, 0x2F}; TEST_F(ValueSerializerTestWithWasm, DecodeWasmModule) { - if (true) return; // TODO(mtrofin): fix this test + if ((true)) return; // TODO(mtrofin): fix this test std::vector<uint8_t> raw( kSerializedIncrementerWasm, kSerializedIncrementerWasm + sizeof(kSerializedIncrementerWasm)); @@ -3037,14 +3028,14 @@ TEST_F(ValueSerializerTestWithWasm, DecodeWasmModule) { // As above, but with empty compiled data. Should work due to fallback to wire // data. const unsigned char kSerializedIncrementerWasmWithInvalidCompiledData[] = { - 0xff, 0x09, 0x3f, 0x00, 0x57, 0x79, 0x2d, 0x00, 0x61, 0x73, 0x6d, - 0x0d, 0x00, 0x00, 0x00, 0x01, 0x06, 0x01, 0x60, 0x01, 0x7f, 0x01, - 0x7f, 0x03, 0x02, 0x01, 0x00, 0x07, 0x0d, 0x01, 0x09, 0x69, 0x6e, - 0x63, 0x72, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x00, 0x00, 0x0a, 0x08, - 0x01, 0x06, 0x00, 0x20, 0x00, 0x41, 0x01, 0x6a, 0x00}; + 0xFF, 0x09, 0x3F, 0x00, 0x57, 0x79, 0x2D, 0x00, 0x61, 0x73, 0x6D, + 0x0D, 0x00, 0x00, 0x00, 0x01, 0x06, 0x01, 0x60, 0x01, 0x7F, 0x01, + 0x7F, 0x03, 0x02, 0x01, 0x00, 0x07, 0x0D, 0x01, 0x09, 0x69, 0x6E, + 0x63, 0x72, 0x65, 0x6D, 0x65, 0x6E, 0x74, 0x00, 0x00, 0x0A, 0x08, + 0x01, 0x06, 0x00, 0x20, 0x00, 0x41, 0x01, 0x6A, 0x00}; TEST_F(ValueSerializerTestWithWasm, DecodeWasmModuleWithInvalidCompiledData) { - if (true) return; // TODO(titzer): regenerate this test + if ((true)) return; // TODO(titzer): regenerate this test std::vector<uint8_t> raw( kSerializedIncrementerWasmWithInvalidCompiledData, kSerializedIncrementerWasmWithInvalidCompiledData + @@ -3058,7 +3049,7 @@ TEST_F(ValueSerializerTestWithWasm, DecodeWasmModuleWithInvalidCompiledData) { // As above, but also with empty wire data. Should fail. const unsigned char kSerializedIncrementerWasmInvalid[] = { - 0xff, 0x09, 0x3f, 0x00, 0x57, 0x79, 0x00, 0x00}; + 0xFF, 0x09, 0x3F, 0x00, 0x57, 0x79, 0x00, 0x00}; TEST_F(ValueSerializerTestWithWasm, DecodeWasmModuleWithInvalidCompiledAndWireData) { @@ -3069,8 +3060,8 @@ TEST_F(ValueSerializerTestWithWasm, } TEST_F(ValueSerializerTestWithWasm, DecodeWasmModuleWithInvalidDataLength) { - InvalidDecodeTest({0xff, 0x09, 0x3f, 0x00, 0x57, 0x79, 0x7f, 0x00}); - InvalidDecodeTest({0xff, 0x09, 0x3f, 0x00, 0x57, 0x79, 0x00, 0x7f}); + InvalidDecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x57, 0x79, 0x7F, 0x00}); + InvalidDecodeTest({0xFF, 0x09, 0x3F, 0x00, 0x57, 0x79, 0x00, 0x7F}); } } // namespace |