summaryrefslogtreecommitdiff
path: root/deps/v8/test/mjsunit/property-name-eval-arguments.js
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/test/mjsunit/property-name-eval-arguments.js')
-rw-r--r--deps/v8/test/mjsunit/property-name-eval-arguments.js59
1 files changed, 59 insertions, 0 deletions
diff --git a/deps/v8/test/mjsunit/property-name-eval-arguments.js b/deps/v8/test/mjsunit/property-name-eval-arguments.js
new file mode 100644
index 0000000000..ebb07485c3
--- /dev/null
+++ b/deps/v8/test/mjsunit/property-name-eval-arguments.js
@@ -0,0 +1,59 @@
+// 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.
+
+
+(function TestSloppyMode() {
+ var e = 1, a = 2;
+ var o = {
+ get eval() {
+ return e;
+ },
+ set eval(v) {
+ e = v;
+ },
+ get arguments() {
+ return a;
+ },
+ set arguments(v) {
+ a = v;
+ },
+ };
+
+ assertEquals(1, o.eval);
+ o.eval = 3;
+ assertEquals(3, e);
+
+ assertEquals(2, o.arguments);
+ o.arguments = 4;
+ assertEquals(4, a);
+})();
+
+
+(function TestStrictMode() {
+ 'use strict';
+
+ var e = 1, a = 2;
+ var o = {
+ get eval() {
+ return e;
+ },
+ set eval(v) {
+ e = v;
+ },
+ get arguments() {
+ return a;
+ },
+ set arguments(v) {
+ a = v;
+ },
+ };
+
+ assertEquals(1, o.eval);
+ o.eval = 3;
+ assertEquals(3, e);
+
+ assertEquals(2, o.arguments);
+ o.arguments = 4;
+ assertEquals(4, a);
+})();