This tests that for/in statements behave correctly when cached. On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE". PASS forIn1() is ['x', 'y'] PASS forIn2() is ['x'] PASS forIn3({ __proto__: { y1: 2 } }) is ['x', 'y1'] PASS forIn3({ y2 : 2, __proto__: null }) is ['x', 'y2'] PASS forIn3({ __proto__: { __proto__: { y3 : 2 } } }) is ['x', 'y3'] PASS forIn4(objectWithArrayAsProto) is [] PASS forIn4(objectWithArrayAsProto) is ['0'] PASS forIn5({get foo() { return 'called getter'} }) is ['foo', 'called getter'] PASS forIn5({set foo() { } }) is ['foo', undefined] PASS forIn5({get foo() { return 'called getter'}, set foo() { }}) is ['foo', 'called getter'] PASS successfullyParsed is true TEST COMPLETE