This test checks the behavior of computed property names in object literals. On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". PASS ({[a]: true}.propertyName) is true PASS 'use strict';({[a]: true}.propertyName) is true PASS (function(){'use strict';return ({[a]: true}.propertyName)})() is true PASS ({[(1,a)]: true}.propertyName) is true PASS 'use strict';({[(1,a)]: true}.propertyName) is true PASS (function(){'use strict';return ({[(1,a)]: true}.propertyName)})() is true PASS ({[a+1]: true}.propertyName1) is true PASS 'use strict';({[a+1]: true}.propertyName1) is true PASS (function(){'use strict';return ({[a+1]: true}.propertyName1)})() is true PASS ({propertyName: false, [a]: true}.propertyName) is true PASS 'use strict';({propertyName: false, [a]: true}.propertyName) is true PASS (function(){'use strict';return ({propertyName: false, [a]: true}.propertyName)})() is true PASS ({[a]: false, propertyName: true}.propertyName) is true PASS 'use strict';({[a]: false, propertyName: true}.propertyName) is true PASS (function(){'use strict';return ({[a]: false, propertyName: true}.propertyName)})() is true PASS ({get propertyName(){ return false; }, [a]: true}.propertyName) is true PASS 'use strict';({get propertyName(){ return false; }, [a]: true}.propertyName) is true PASS (function(){'use strict';return ({get propertyName(){ return false; }, [a]: true}.propertyName)})() is true PASS ({[a]: false, get propertyName(){ return true; }}.propertyName) is true PASS 'use strict';({[a]: false, get propertyName(){ return true; }}.propertyName) is true PASS (function(){'use strict';return ({[a]: false, get propertyName(){ return true; }}.propertyName)})() is true PASS ({__proto__: {get propertyName(){ return false; }}, [a]: true}.propertyName) is true PASS 'use strict';({__proto__: {get propertyName(){ return false; }}, [a]: true}.propertyName) is true PASS (function(){'use strict';return ({__proto__: {get propertyName(){ return false; }}, [a]: true}.propertyName)})() is true PASS ({__proto__: {get propertyName(){ return false; }}, propertyName: true}.propertyName) is true PASS 'use strict';({__proto__: {get propertyName(){ return false; }}, propertyName: true}.propertyName) is true PASS (function(){'use strict';return ({__proto__: {get propertyName(){ return false; }}, propertyName: true}.propertyName)})() is true PASS ({[a]: true}[0]) is true PASS 'use strict';({[a]: true}[0]) is true PASS (function(){'use strict';return ({[a]: true}[0])})() is true PASS ({[a+1]: true}[1]) is true PASS 'use strict';({[a+1]: true}[1]) is true PASS (function(){'use strict';return ({[a+1]: true}[1])})() is true PASS ({0: false, [a]: true}[0]) is true PASS 'use strict';({0: false, [a]: true}[0]) is true PASS (function(){'use strict';return ({0: false, [a]: true}[0])})() is true PASS ({[a]: false, 0: true}[0]) is true PASS 'use strict';({[a]: false, 0: true}[0]) is true PASS (function(){'use strict';return ({[a]: false, 0: true}[0])})() is true PASS ({get '0'(){ return false; }, [a]: true}[0]) is true PASS 'use strict';({get '0'(){ return false; }, [a]: true}[0]) is true PASS (function(){'use strict';return ({get '0'(){ return false; }, [a]: true}[0])})() is true PASS ({[a]: false, get '0'(){ return true; }}[0]) is true PASS 'use strict';({[a]: false, get '0'(){ return true; }}[0]) is true PASS (function(){'use strict';return ({[a]: false, get '0'(){ return true; }}[0])})() is true PASS ({__proto__: {get '0'(){ return false; }}, [a]: true}[0]) is true PASS 'use strict';({__proto__: {get '0'(){ return false; }}, [a]: true}[0]) is true PASS (function(){'use strict';return ({__proto__: {get '0'(){ return false; }}, [a]: true}[0])})() is true PASS ({[1,a]: true}.propertyName) threw exception SyntaxError: Unexpected token ','. Expected ']' to end a computed property name.. PASS 'use strict';({[1,a]: true}.propertyName) threw exception SyntaxError: Unexpected token ','. Expected ']' to end a computed property name.. PASS (function(){'use strict';return ({[1,a]: true}.propertyName)})() threw exception SyntaxError: Unexpected token ','. Expected ']' to end a computed property name.. PASS ({propertyName: false, [1,a]: true}.propertyName) threw exception SyntaxError: Unexpected token ','. Expected ']' to end a computed property name.. PASS 'use strict';({propertyName: false, [1,a]: true}.propertyName) threw exception SyntaxError: Unexpected token ','. Expected ']' to end a computed property name.. PASS (function(){'use strict';return ({propertyName: false, [1,a]: true}.propertyName)})() threw exception SyntaxError: Unexpected token ','. Expected ']' to end a computed property name.. PASS ({[1,a]: false, propertyName: true}.propertyName) threw exception SyntaxError: Unexpected token ','. Expected ']' to end a computed property name.. PASS 'use strict';({[1,a]: false, propertyName: true}.propertyName) threw exception SyntaxError: Unexpected token ','. Expected ']' to end a computed property name.. PASS (function(){'use strict';return ({[1,a]: false, propertyName: true}.propertyName)})() threw exception SyntaxError: Unexpected token ','. Expected ']' to end a computed property name.. PASS ({get propertyName(){ return false; }, [1,a]: true}.propertyName) threw exception SyntaxError: Unexpected token ','. Expected ']' to end a computed property name.. PASS 'use strict';({get propertyName(){ return false; }, [1,a]: true}.propertyName) threw exception SyntaxError: Unexpected token ','. Expected ']' to end a computed property name.. PASS (function(){'use strict';return ({get propertyName(){ return false; }, [1,a]: true}.propertyName)})() threw exception SyntaxError: Unexpected token ','. Expected ']' to end a computed property name.. PASS successfullyParsed is true TEST COMPLETE