diff options
Diffstat (limited to 'deps/v8/test/mjsunit/es6/class-property-name-eval-arguments.js')
-rw-r--r-- | deps/v8/test/mjsunit/es6/class-property-name-eval-arguments.js | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/deps/v8/test/mjsunit/es6/class-property-name-eval-arguments.js b/deps/v8/test/mjsunit/es6/class-property-name-eval-arguments.js new file mode 100644 index 0000000000..72ff60fd3e --- /dev/null +++ b/deps/v8/test/mjsunit/es6/class-property-name-eval-arguments.js @@ -0,0 +1,79 @@ +// Copyright 2015 the V8 project authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Flags: --harmony-sloppy + + +(function Method() { + class C { + eval() { + return 1; + } + arguments() { + return 2; + } + static eval() { + return 3; + } + static arguments() { + return 4; + } + }; + + assertEquals(1, new C().eval()); + assertEquals(2, new C().arguments()); + assertEquals(3, C.eval()); + assertEquals(4, C.arguments()); +})(); + + +(function Getters() { + class C { + get eval() { + return 1; + } + get arguments() { + return 2; + } + static get eval() { + return 3; + } + static get arguments() { + return 4; + } + }; + + assertEquals(1, new C().eval); + assertEquals(2, new C().arguments); + assertEquals(3, C.eval); + assertEquals(4, C.arguments); +})(); + + +(function Setters() { + var x = 0; + class C { + set eval(v) { + x = v; + } + set arguments(v) { + x = v; + } + static set eval(v) { + x = v; + } + static set arguments(v) { + x = v; + } + }; + + new C().eval = 1; + assertEquals(1, x); + new C().arguments = 2; + assertEquals(2, x); + C.eval = 3; + assertEquals(3, x); + C.arguments = 4; + assertEquals(4, x); +})(); |