summaryrefslogtreecommitdiffstats
path: root/js/src/tests/test262/built-ins/AsyncGeneratorFunction/instance-prototype.js
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/tests/test262/built-ins/AsyncGeneratorFunction/instance-prototype.js')
-rw-r--r--js/src/tests/test262/built-ins/AsyncGeneratorFunction/instance-prototype.js39
1 files changed, 39 insertions, 0 deletions
diff --git a/js/src/tests/test262/built-ins/AsyncGeneratorFunction/instance-prototype.js b/js/src/tests/test262/built-ins/AsyncGeneratorFunction/instance-prototype.js
new file mode 100644
index 0000000000..85eab9ae00
--- /dev/null
+++ b/js/src/tests/test262/built-ins/AsyncGeneratorFunction/instance-prototype.js
@@ -0,0 +1,39 @@
+// Copyright (C) 2018 Valerie Young. All rights reserved.
+// This code is governed by the BSD license found in the LICENSE file.
+/*---
+esid: sec-asyncgeneratorfunction
+description: Definition of instance `prototype` property
+info: |
+ AsyncGeneratorFunction ( p1, p2, … , pn, body )
+ ...
+ 3. Return CreateDynamicFunction(C, NewTarget, "async generator", args).
+
+ Runtime Semantics: CreateDynamicFunction
+ ...
+ 37. Else if kind is "async generator", then
+ a. Let prototype be ObjectCreate(%AsyncGeneratorPrototype%).
+ b. Perform DefinePropertyOrThrow(F, "prototype",
+ PropertyDescriptor{[[Value]]: prototype, [[Writable]]: true,
+ [[Enumerable]]: false, [[Configurable]]: false}).
+ ...
+includes: [propertyHelper.js]
+features: [async-iteration]
+---*/
+
+var AsyncGeneratorFunction = Object.getPrototypeOf(async function* () {}).constructor;
+
+var instance = AsyncGeneratorFunction();
+
+assert.sameValue(typeof instance.prototype, 'object');
+assert.sameValue(
+ Object.getPrototypeOf(instance.prototype),
+ Object.getPrototypeOf(instance).prototype
+);
+
+verifyProperty(instance, "prototype", {
+ enumerable: false,
+ writable: true,
+ configurable: false,
+});
+
+reportCompare(0, 0);