diff options
Diffstat (limited to 'deps/v8/test/mjsunit/harmony/computed-property-names.js')
-rw-r--r-- | deps/v8/test/mjsunit/harmony/computed-property-names.js | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/deps/v8/test/mjsunit/harmony/computed-property-names.js b/deps/v8/test/mjsunit/harmony/computed-property-names.js index 36e1411169..a559159380 100644 --- a/deps/v8/test/mjsunit/harmony/computed-property-names.js +++ b/deps/v8/test/mjsunit/harmony/computed-property-names.js @@ -300,3 +300,59 @@ function ID(x) { }; }, MyError); })(); + + +(function TestNestedLiterals() { + var array = [ + 42, + { a: 'A', + ['b']: 'B', + c: 'C', + [ID('d')]: 'D', + }, + 43, + ]; + assertEquals(42, array[0]); + assertEquals(43, array[2]); + assertEquals('A', array[1].a); + assertEquals('B', array[1].b); + assertEquals('C', array[1].c); + assertEquals('D', array[1].d); + var object = { + outer: 42, + inner: { + a: 'A', + ['b']: 'B', + c: 'C', + [ID('d')]: 'D', + }, + outer2: 43, + }; + assertEquals(42, object.outer); + assertEquals(43, object.outer2); + assertEquals('A', object.inner.a); + assertEquals('B', object.inner.b); + assertEquals('C', object.inner.c); + assertEquals('D', object.inner.d); + var object = { + outer: 42, + array: [ + 43, + { a: 'A', + ['b']: 'B', + c: 'C', + [ID('d')]: 'D', + }, + 44, + ], + outer2: 45 + }; + assertEquals(42, object.outer); + assertEquals(45, object.outer2); + assertEquals(43, object.array[0]); + assertEquals(44, object.array[2]); + assertEquals('A', object.array[1].a); + assertEquals('B', object.array[1].b); + assertEquals('C', object.array[1].c); + assertEquals('D', object.array[1].d); +})(); |