summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/built-ins/Function/prototype/toString/getter-class-statement.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/test262/built-ins/Function/prototype/toString/getter-class-statement.js')
-rw-r--r--js/src/tests/test262/built-ins/Function/prototype/toString/getter-class-statement.js23
1 files changed, 23 insertions, 0 deletions
diff --git a/js/src/tests/test262/built-ins/Function/prototype/toString/getter-class-statement.js b/js/src/tests/test262/built-ins/Function/prototype/toString/getter-class-statement.js
new file mode 100644
index 0000000000..92d62ec035
--- /dev/null
+++ b/js/src/tests/test262/built-ins/Function/prototype/toString/getter-class-statement.js
@@ -0,0 +1,23 @@
+// Copyright (C) 2016 Michael Ficarra. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+
+/*---
+esid: sec-method-definitions-runtime-semantics-propertydefinitionevaluation
+description: Function.prototype.toString on a getter (class)
+includes: [nativeFunctionMatcher.js]
+---*/
+
+let x = "h";
+class F { /* before */get /* a */ f /* b */ ( /* c */ ) /* d */ { /* e */ }/* after */ }
+class G { /* before */get /* a */ [ /* b */ "g" /* c */ ] /* d */ ( /* e */ ) /* f */ { /* g */ }/* after */ }
+class H { /* before */get /* a */ [ /* b */ x /* c */ ] /* d */ ( /* e */ ) /* f */ { /* g */ }/* after */ }
+
+let f = Object.getOwnPropertyDescriptor(F.prototype, "f").get;
+let g = Object.getOwnPropertyDescriptor(G.prototype, "g").get;
+let h = Object.getOwnPropertyDescriptor(H.prototype, "h").get;
+
+assertToStringOrNativeFunction(f, "get /* a */ f /* b */ ( /* c */ ) /* d */ { /* e */ }");
+assertToStringOrNativeFunction(g, "get /* a */ [ /* b */ \"g\" /* c */ ] /* d */ ( /* e */ ) /* f */ { /* g */ }");
+assertToStringOrNativeFunction(h, "get /* a */ [ /* b */ x /* c */ ] /* d */ ( /* e */ ) /* f */ { /* g */ }");
+
+reportCompare(0, 0);