diff options
author | Mike Pennisi <mike@mikepennisi.com> | 2016-02-12 12:59:51 -0500 |
---|---|---|
committer | Mike Pennisi <mike@mikepennisi.com> | 2016-02-12 13:03:19 -0500 |
commit | 23d566209a2bccc14d572e0bd81394a9f99ca272 (patch) | |
tree | b9b3656f40cc836ad737eadb627d0930d6695368 | |
parent | 5cb97c293b4a44ee1c31961a07663993c521fb5f (diff) | |
download | qtdeclarative-testsuites-23d566209a2bccc14d572e0bd81394a9f99ca272.tar.gz |
Make asynchronous test configuration explicit
For asynchronous tests, the contract between test file and test runner
is implicit: runners are expected to inspect the source code for
references to a global `$DONE` identifier.
Promote a more explicit contract between test file and test runner by
introducing a new frontmatter "tag", `async`. This brings asynchronous
test configuration in-line with other configuration mechanisms and also
provides a more natural means of test filtering.
The modifications to test files was made programatically using the
`grep` and `sed` utilities:
$ grep "\$DONE" test/ -r --files-with-match --null | \
xargs -0 sed -i 's/^\(flags:\s*\)\[/\1[async, /g'
$ grep "\$DONE" test/ -rl --null | \
xargs -0 grep -E '^flags:' --files-without-match --null | \
xargs -0 sed -i 's/^---\*\//flags: [async]\n---*\//'
148 files changed, 150 insertions, 8 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index da3971ea5..127673563 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -128,6 +128,8 @@ This tag is for boolean properties associated with the test. - **`raw`** - execute the test without any modification (no helpers will be available); necessary to test the behavior of directive prologue; implies `noStrict` +- **`async`** - defer interpretation of test results until after the invocation + of the global $DONE` function #### features **features**: [list] @@ -198,7 +200,7 @@ assert.throws(ReferenceError, function() { ## Writing Asynchronous Tests -An asynchronous test is any test that includes the string `$DONE` anywhere in the test file. The test runner checks for the presence of this string; if it is found, the runner expects that the `$DONE()` function will be called to signal test completion. +An asynchronous test is any test that include the `async` frontmatter flag. When executing such tests, the runner expects that the global `$DONE()` function will be called to signal test completion. * If the argument to `$DONE` is omitted, is `undefined`, or is any other falsy value, the test is considered to have passed. diff --git a/test/built-ins/Promise/S25.4.3.1_A2.3_T1.js b/test/built-ins/Promise/S25.4.3.1_A2.3_T1.js index 01574d12e..22690161b 100644 --- a/test/built-ins/Promise/S25.4.3.1_A2.3_T1.js +++ b/test/built-ins/Promise/S25.4.3.1_A2.3_T1.js @@ -7,6 +7,7 @@ info: > es6id: S25.4.3.1_A2.3_T1 author: Sam Mikes description: Promise.call(resolved Promise) throws TypeError +flags: [async] ---*/ var p = new Promise(function(resolve) { resolve(1); }); diff --git a/test/built-ins/Promise/S25.4.3.1_A2.4_T1.js b/test/built-ins/Promise/S25.4.3.1_A2.4_T1.js index 79666fdfd..8151f8b66 100644 --- a/test/built-ins/Promise/S25.4.3.1_A2.4_T1.js +++ b/test/built-ins/Promise/S25.4.3.1_A2.4_T1.js @@ -7,6 +7,7 @@ info: > es6id: S25.4.3.1_A2.4_T1 author: Sam Mikes description: Promise.call(rejected Promise) throws TypeError +flags: [async] ---*/ var p = new Promise(function(resolve, reject) { reject(1) }); diff --git a/test/built-ins/Promise/S25.4.3.1_A4.1_T1.js b/test/built-ins/Promise/S25.4.3.1_A4.1_T1.js index 577cb3c1f..649418b7e 100644 --- a/test/built-ins/Promise/S25.4.3.1_A4.1_T1.js +++ b/test/built-ins/Promise/S25.4.3.1_A4.1_T1.js @@ -8,6 +8,7 @@ info: > es6id: S25.4.3.1_A4.1_T1 author: Sam Mikes description: new Promise(function () { throw }) should reject +flags: [async] ---*/ var errorObject = {}, diff --git a/test/built-ins/Promise/S25.4.3.1_A5.1_T1.js b/test/built-ins/Promise/S25.4.3.1_A5.1_T1.js index 5ad54e756..f74ccebdd 100644 --- a/test/built-ins/Promise/S25.4.3.1_A5.1_T1.js +++ b/test/built-ins/Promise/S25.4.3.1_A5.1_T1.js @@ -9,7 +9,7 @@ info: > es6id: S25.4.3.1_A5.1_T1 author: Sam Mikes description: Promise executor gets default handling for 'this' -flags: [noStrict] +flags: [async, noStrict] includes: [fnGlobalObject.js] ---*/ diff --git a/test/built-ins/Promise/S25.4.3.1_A5.1_T2.js b/test/built-ins/Promise/S25.4.3.1_A5.1_T2.js index a3dde9192..c8458c9be 100644 --- a/test/built-ins/Promise/S25.4.3.1_A5.1_T2.js +++ b/test/built-ins/Promise/S25.4.3.1_A5.1_T2.js @@ -9,7 +9,7 @@ info: > es6id: S25.4.3.1_A5.1_T2 author: Sam Mikes description: Promise executor gets default handling for 'this' -flags: [onlyStrict] +flags: [async, onlyStrict] ---*/ var expectedThis = undefined; diff --git a/test/built-ins/Promise/all/S25.4.4.1_A2.2_T1.js b/test/built-ins/Promise/all/S25.4.4.1_A2.2_T1.js index 9cd7d1715..a34fb70f6 100644 --- a/test/built-ins/Promise/all/S25.4.4.1_A2.2_T1.js +++ b/test/built-ins/Promise/all/S25.4.4.1_A2.2_T1.js @@ -7,6 +7,7 @@ es6id: 25.4.4.1_A2.2_T1 author: Sam Mikes includes: [PromiseHelper.js] description: Promise.all([]) returns immediately +flags: [async] ---*/ var sequence = []; diff --git a/test/built-ins/Promise/all/S25.4.4.1_A2.3_T1.js b/test/built-ins/Promise/all/S25.4.4.1_A2.3_T1.js index fe60c2a75..1b61ede66 100644 --- a/test/built-ins/Promise/all/S25.4.4.1_A2.3_T1.js +++ b/test/built-ins/Promise/all/S25.4.4.1_A2.3_T1.js @@ -6,6 +6,7 @@ info: Promise.all([]) returns a promise for a new empty array es6id: 25.4.4.1_A2.3_T1 author: Sam Mikes description: Promise.all([]) returns a promise for an array +flags: [async] ---*/ var arg = []; diff --git a/test/built-ins/Promise/all/S25.4.4.1_A2.3_T2.js b/test/built-ins/Promise/all/S25.4.4.1_A2.3_T2.js index fdfeb567c..77cd2628e 100644 --- a/test/built-ins/Promise/all/S25.4.4.1_A2.3_T2.js +++ b/test/built-ins/Promise/all/S25.4.4.1_A2.3_T2.js @@ -6,6 +6,7 @@ info: Promise.all is resolved with a new empty array es6id: 25.4.4.1_A2.3_T2 author: Sam Mikes description: Promise.all([]) returns a Promise for an empty array +flags: [async] ---*/ var arg = []; diff --git a/test/built-ins/Promise/all/S25.4.4.1_A2.3_T3.js b/test/built-ins/Promise/all/S25.4.4.1_A2.3_T3.js index c936a4d75..5dc1568eb 100644 --- a/test/built-ins/Promise/all/S25.4.4.1_A2.3_T3.js +++ b/test/built-ins/Promise/all/S25.4.4.1_A2.3_T3.js @@ -6,6 +6,7 @@ info: Promise.all([]) is resolved with Promise for a new empty array es6id: 25.4.4.1_A2.3_T3 author: Sam Mikes description: Promise.all([]) is resolved with a Promise for a new array +flags: [async] ---*/ var arg = []; diff --git a/test/built-ins/Promise/all/S25.4.4.1_A3.1_T1.js b/test/built-ins/Promise/all/S25.4.4.1_A3.1_T1.js index 52023add1..3022972a3 100644 --- a/test/built-ins/Promise/all/S25.4.4.1_A3.1_T1.js +++ b/test/built-ins/Promise/all/S25.4.4.1_A3.1_T1.js @@ -9,6 +9,7 @@ info: > es6id: 25.4.4.1_A3.1_T1 author: Sam Mikes description: Promise.all(3) returns Promise rejected with TypeError +flags: [async] ---*/ var nonIterable = 3; diff --git a/test/built-ins/Promise/all/S25.4.4.1_A3.1_T2.js b/test/built-ins/Promise/all/S25.4.4.1_A3.1_T2.js index e04642824..b17b42269 100644 --- a/test/built-ins/Promise/all/S25.4.4.1_A3.1_T2.js +++ b/test/built-ins/Promise/all/S25.4.4.1_A3.1_T2.js @@ -10,6 +10,7 @@ info: > es6id: S25.4.4.1_A3.1_T2 author: Sam Mikes description: Promise.all(new Error()) returns Promise rejected with TypeError +flags: [async] ---*/ Promise.all(new Error("abrupt")).then(function () { diff --git a/test/built-ins/Promise/all/S25.4.4.1_A3.1_T3.js b/test/built-ins/Promise/all/S25.4.4.1_A3.1_T3.js index 568d5d170..73b5230b4 100644 --- a/test/built-ins/Promise/all/S25.4.4.1_A3.1_T3.js +++ b/test/built-ins/Promise/all/S25.4.4.1_A3.1_T3.js @@ -9,6 +9,7 @@ es6id: S25.4.4.1_A3.1_T3 author: Sam Mikes description: Promise.all((throw on GetIterator)) returns Promise rejected with TypeError features: [Symbol.iterator] +flags: [async] ---*/ var iterThrows = {}; diff --git a/test/built-ins/Promise/all/S25.4.4.1_A5.1_T1.js b/test/built-ins/Promise/all/S25.4.4.1_A5.1_T1.js index 31acd2a6a..1720f8ede 100644 --- a/test/built-ins/Promise/all/S25.4.4.1_A5.1_T1.js +++ b/test/built-ins/Promise/all/S25.4.4.1_A5.1_T1.js @@ -9,6 +9,7 @@ es6id: S25.4.4.1_A5.1_T1 author: Sam Mikes description: iterator.next throws, causing Promise.all to reject features: [Symbol.iterator] +flags: [async] ---*/ var iterThrows = {}; diff --git a/test/built-ins/Promise/all/S25.4.4.1_A6.1_T2.js b/test/built-ins/Promise/all/S25.4.4.1_A6.1_T2.js index ef9f9dbe9..3671b7bb1 100644 --- a/test/built-ins/Promise/all/S25.4.4.1_A6.1_T2.js +++ b/test/built-ins/Promise/all/S25.4.4.1_A6.1_T2.js @@ -8,6 +8,7 @@ info: > es6id: S25.4.4.1_A6.1_T2 author: Sam Mikes description: Promise.all([]) returns a promise for an empty array +flags: [async] ---*/ var p = Promise.all([]); diff --git a/test/built-ins/Promise/all/S25.4.4.1_A7.1_T1.js b/test/built-ins/Promise/all/S25.4.4.1_A7.1_T1.js index cc1152b0e..4b0636e0c 100644 --- a/test/built-ins/Promise/all/S25.4.4.1_A7.1_T1.js +++ b/test/built-ins/Promise/all/S25.4.4.1_A7.1_T1.js @@ -8,6 +8,7 @@ info: > es6id: S25.4.4.1_A6.1_T2 author: Sam Mikes description: Promise.all([p1]) is resolved with a promise for a one-element array +flags: [async] ---*/ var p1 = Promise.resolve(3); diff --git a/test/built-ins/Promise/all/S25.4.4.1_A7.2_T1.js b/test/built-ins/Promise/all/S25.4.4.1_A7.2_T1.js index 10fd49895..2ce3ad82a 100644 --- a/test/built-ins/Promise/all/S25.4.4.1_A7.2_T1.js +++ b/test/built-ins/Promise/all/S25.4.4.1_A7.2_T1.js @@ -9,6 +9,7 @@ es6id: S25.4.4.1_A7.2_T1 author: Sam Mikes description: Promise.all() accepts a one-element array includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = []; diff --git a/test/built-ins/Promise/all/S25.4.4.1_A8.1_T1.js b/test/built-ins/Promise/all/S25.4.4.1_A8.1_T1.js index 7e3df638e..d9e9cac5a 100644 --- a/test/built-ins/Promise/all/S25.4.4.1_A8.1_T1.js +++ b/test/built-ins/Promise/all/S25.4.4.1_A8.1_T1.js @@ -6,6 +6,7 @@ es6id: S25.4.4.1_A8.1_T1 author: Sam Mikes description: Promise.all([p1, p2]) resolution functions are called in predictable sequence includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = []; diff --git a/test/built-ins/Promise/all/S25.4.4.1_A8.2_T1.js b/test/built-ins/Promise/all/S25.4.4.1_A8.2_T1.js index 2bc4ba363..e8f1320f7 100644 --- a/test/built-ins/Promise/all/S25.4.4.1_A8.2_T1.js +++ b/test/built-ins/Promise/all/S25.4.4.1_A8.2_T1.js @@ -8,6 +8,7 @@ es6id: S25.4.4.1_A8.1_T1 author: Sam Mikes description: Promise.all() rejects when a promise in its array rejects includes: [PromiseHelper.js] +flags: [async] ---*/ var rejectP1, diff --git a/test/built-ins/Promise/all/S25.4.4.1_A8.2_T2.js b/test/built-ins/Promise/all/S25.4.4.1_A8.2_T2.js index fdd2d449a..58151d140 100644 --- a/test/built-ins/Promise/all/S25.4.4.1_A8.2_T2.js +++ b/test/built-ins/Promise/all/S25.4.4.1_A8.2_T2.js @@ -8,6 +8,7 @@ es6id: S25.4.4.1_A8.2_T2 author: Sam Mikes description: Promise.all() rejects when second promise in array rejects includes: [PromiseHelper.js] +flags: [async] ---*/ var rejectP2, diff --git a/test/built-ins/Promise/all/does-not-invoke-array-setters.js b/test/built-ins/Promise/all/does-not-invoke-array-setters.js index baac7abeb..364204a8a 100755 --- a/test/built-ins/Promise/all/does-not-invoke-array-setters.js +++ b/test/built-ins/Promise/all/does-not-invoke-array-setters.js @@ -24,6 +24,7 @@ info: > a. Let status be CreateDataProperty(array, ToString(n), e). b. Assert: status is true. ... +flags: [async] ---*/ Object.defineProperty(Array.prototype, 0, { diff --git a/test/built-ins/Promise/all/invoke-resolve-get-error.js b/test/built-ins/Promise/all/invoke-resolve-get-error.js index d7b7a092c..70c220f0b 100644 --- a/test/built-ins/Promise/all/invoke-resolve-get-error.js +++ b/test/built-ins/Promise/all/invoke-resolve-get-error.js @@ -21,6 +21,7 @@ info: > [...] i. Let nextPromise be Invoke(constructor, "resolve", «nextValue»). j. ReturnIfAbrupt(nextPromise ). +flags: [async] ---*/ var error = new Test262Error(); diff --git a/test/built-ins/Promise/all/invoke-then-error.js b/test/built-ins/Promise/all/invoke-then-error.js index 957093f2b..a3fef19b0 100644 --- a/test/built-ins/Promise/all/invoke-then-error.js +++ b/test/built-ins/Promise/all/invoke-then-error.js @@ -22,6 +22,7 @@ info: > r. Let result be Invoke(nextPromise, "then", «resolveElement, resultCapability.[[Reject]]»). s. ReturnIfAbrupt(result). +flags: [async] ---*/ var promise = new Promise(function() {}); diff --git a/test/built-ins/Promise/all/iter-next-val-err.js b/test/built-ins/Promise/all/iter-next-val-err.js index 902e7823e..20a4d8f8e 100644 --- a/test/built-ins/Promise/all/iter-next-val-err.js +++ b/test/built-ins/Promise/all/iter-next-val-err.js @@ -24,6 +24,7 @@ info: > true. g. ReturnIfAbrupt(nextValue). features: [Symbol.iterator] +flags: [async] ---*/ var iterNextValThrows = {}; diff --git a/test/built-ins/Promise/all/iter-step-err.js b/test/built-ins/Promise/all/iter-step-err.js index 6dcf6c761..9ef1430b8 100644 --- a/test/built-ins/Promise/all/iter-step-err.js +++ b/test/built-ins/Promise/all/iter-step-err.js @@ -23,6 +23,7 @@ info: > true. c. ReturnIfAbrupt(next). features: [Symbol.iterator] +flags: [async] ---*/ var iterStepThrows = {}; diff --git a/test/built-ins/Promise/all/reject-deferred.js b/test/built-ins/Promise/all/reject-deferred.js index 6b7d43a1e..785fe8fde 100644 --- a/test/built-ins/Promise/all/reject-deferred.js +++ b/test/built-ins/Promise/all/reject-deferred.js @@ -20,6 +20,7 @@ info: > 25.4.1.3.1 Promise Reject Functions [...] 6. Return RejectPromise(promise, reason). +flags: [async] ---*/ var thenable = { diff --git a/test/built-ins/Promise/all/reject-ignored-deferred.js b/test/built-ins/Promise/all/reject-ignored-deferred.js index 874e1d40f..aaf33eca1 100644 --- a/test/built-ins/Promise/all/reject-ignored-deferred.js +++ b/test/built-ins/Promise/all/reject-ignored-deferred.js @@ -25,6 +25,7 @@ info: > 3. Let alreadyResolved be the value of F's [[AlreadyResolved]] internal slot. 4. If alreadyResolved.[[value]] is true, return undefined. +flags: [async] ---*/ var fulfiller = { diff --git a/test/built-ins/Promise/all/reject-ignored-immed.js b/test/built-ins/Promise/all/reject-ignored-immed.js index 6ef29d1c6..9f3e190ca 100644 --- a/test/built-ins/Promise/all/reject-ignored-immed.js +++ b/test/built-ins/Promise/all/reject-ignored-immed.js @@ -25,6 +25,7 @@ info: > 3. Let alreadyResolved be the value of F's [[AlreadyResolved]] internal slot. 4. If alreadyResolved.[[value]] is true, return undefined. +flags: [async] ---*/ var fulfiller = { diff --git a/test/built-ins/Promise/all/reject-immed.js b/test/built-ins/Promise/all/reject-immed.js index ce7ff4c49..74560c777 100644 --- a/test/built-ins/Promise/all/reject-immed.js +++ b/test/built-ins/Promise/all/reject-immed.js @@ -20,6 +20,7 @@ info: > 25.4.1.3.1 Promise Reject Functions [...] 6. Return RejectPromise(promise, reason). +flags: [async] ---*/ var thenable = { diff --git a/test/built-ins/Promise/all/resolve-non-thenable.js b/test/built-ins/Promise/all/resolve-non-thenable.js index 659e10a21..0c2905a64 100644 --- a/test/built-ins/Promise/all/resolve-non-thenable.js +++ b/test/built-ins/Promise/all/resolve-non-thenable.js @@ -31,6 +31,7 @@ info: > 10. Let thenAction be then.[[value]]. 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var v1 = {}; diff --git a/test/built-ins/Promise/all/resolve-poisoned-then.js b/test/built-ins/Promise/all/resolve-poisoned-then.js index b8a17cf4f..0d4722e10 100644 --- a/test/built-ins/Promise/all/resolve-poisoned-then.js +++ b/test/built-ins/Promise/all/resolve-poisoned-then.js @@ -40,6 +40,7 @@ info: > 8. Let then be Get(resolution, "then"). 9. If then is an abrupt completion, then a. Return RejectPromise(promise, then.[[value]]). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/all/resolve-thenable.js b/test/built-ins/Promise/all/resolve-thenable.js index 99b32585d..4651422d0 100644 --- a/test/built-ins/Promise/all/resolve-thenable.js +++ b/test/built-ins/Promise/all/resolve-thenable.js @@ -45,6 +45,7 @@ info: > [...] 12. Perform EnqueueJob ("PromiseJobs", PromiseResolveThenableJob, «promise, resolution, thenAction») +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/exception-after-resolve-in-executor.js b/test/built-ins/Promise/exception-after-resolve-in-executor.js index 747c56279..b5ae4ee5a 100755 --- a/test/built-ins/Promise/exception-after-resolve-in-executor.js +++ b/test/built-ins/Promise/exception-after-resolve-in-executor.js @@ -15,6 +15,7 @@ info: > a. Let status be Call(resolvingFunctions.[[Reject]], undefined, «completion.[[value]]»). b. ReturnIfAbrupt(status). ... +flags: [async] ---*/ var thenable = { diff --git a/test/built-ins/Promise/exception-after-resolve-in-thenable-job.js b/test/built-ins/Promise/exception-after-resolve-in-thenable-job.js index f10db969b..3cd4585ed 100755 --- a/test/built-ins/Promise/exception-after-resolve-in-thenable-job.js +++ b/test/built-ins/Promise/exception-after-resolve-in-thenable-job.js @@ -14,6 +14,7 @@ info: > a. Let status be Call(resolvingFunctions.[[Reject]], undefined, «thenCallResult.[[value]]») b. NextJob Completion(status). ... +flags: [async] ---*/ var thenable = { diff --git a/test/built-ins/Promise/prototype/catch/S25.4.5.1_A3.1_T1.js b/test/built-ins/Promise/prototype/catch/S25.4.5.1_A3.1_T1.js index 036905899..6bfb34c1d 100644 --- a/test/built-ins/Promise/prototype/catch/S25.4.5.1_A3.1_T1.js +++ b/test/built-ins/Promise/prototype/catch/S25.4.5.1_A3.1_T1.js @@ -7,6 +7,7 @@ info: > es6id: S25.4.5.1_A3.1_T1 author: Sam Mikes description: catch is implemented in terms of then +flags: [async] ---*/ var obj = {}; diff --git a/test/built-ins/Promise/prototype/catch/S25.4.5.1_A3.1_T2.js b/test/built-ins/Promise/prototype/catch/S25.4.5.1_A3.1_T2.js index a1624e162..fd2cff8d2 100644 --- a/test/built-ins/Promise/prototype/catch/S25.4.5.1_A3.1_T2.js +++ b/test/built-ins/Promise/prototype/catch/S25.4.5.1_A3.1_T2.js @@ -7,6 +7,7 @@ info: > es6id: S25.4.5.1_A3.1_T2 author: Sam Mikes description: catch is implemented in terms of then +flags: [async] ---*/ var obj = {}; diff --git a/test/built-ins/Promise/prototype/then/S25.4.4_A1.1_T1.js b/test/built-ins/Promise/prototype/then/S25.4.4_A1.1_T1.js index f248d345c..a1c2edcc7 100644 --- a/test/built-ins/Promise/prototype/then/S25.4.4_A1.1_T1.js +++ b/test/built-ins/Promise/prototype/then/S25.4.4_A1.1_T1.js @@ -9,6 +9,7 @@ es6id: S25.4.2.1_A3.2_T2 author: Sam Mikes description: Promise onResolved functions are called in predictable sequence includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = []; diff --git a/test/built-ins/Promise/prototype/then/S25.4.4_A2.1_T1.js b/test/built-ins/Promise/prototype/then/S25.4.4_A2.1_T1.js index 1daafe552..33c1f555a 100644 --- a/test/built-ins/Promise/prototype/then/S25.4.4_A2.1_T1.js +++ b/test/built-ins/Promise/prototype/then/S25.4.4_A2.1_T1.js @@ -10,6 +10,7 @@ es6id: S25.4.4_A2.1_T1 author: Sam Mikes description: Promise onResolved functions are called in predictable sequence includes: [PromiseHelper.js] +flags: [async] ---*/ var resolveP1, rejectP2, sequence = []; diff --git a/test/built-ins/Promise/prototype/then/S25.4.4_A2.1_T2.js b/test/built-ins/Promise/prototype/then/S25.4.4_A2.1_T2.js index 8bebe8187..b5bf2c89e 100644 --- a/test/built-ins/Promise/prototype/then/S25.4.4_A2.1_T2.js +++ b/test/built-ins/Promise/prototype/then/S25.4.4_A2.1_T2.js @@ -10,6 +10,7 @@ es6id: S25.4.4_A2.1_T2 author: Sam Mikes description: Promise onResolved functions are called in predictable sequence includes: [PromiseHelper.js] +flags: [async] ---*/ var resolveP1, rejectP2, p1, p2, diff --git a/test/built-ins/Promise/prototype/then/S25.4.4_A2.1_T3.js b/test/built-ins/Promise/prototype/then/S25.4.4_A2.1_T3.js index 2476658a1..17992e001 100644 --- a/test/built-ins/Promise/prototype/then/S25.4.4_A2.1_T3.js +++ b/test/built-ins/Promise/prototype/then/S25.4.4_A2.1_T3.js @@ -10,6 +10,7 @@ es6id: S25.4.4_A2.1_T3 author: Sam Mikes description: Promise onResolved functions are called in predictable sequence includes: [PromiseHelper.js] +flags: [async] ---*/ var resolveP1, rejectP2, p1, p2, diff --git a/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.1_T1.js b/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.1_T1.js index 960604db5..e70669dcf 100644 --- a/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.1_T1.js +++ b/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.1_T1.js @@ -8,6 +8,7 @@ info: > es6id: S25.4.5.3_A4.1_T1 author: Sam Mikes description: Promise.prototype.then accepts 'undefined' as arg1, arg2 +flags: [async] ---*/ var obj = {}; diff --git a/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.1_T2.js b/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.1_T2.js index 3c817f4f8..660cc633b 100644 --- a/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.1_T2.js +++ b/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.1_T2.js @@ -8,6 +8,7 @@ info: > es6id: S25.4.5.3_A4.1_T2 author: Sam Mikes description: Promise.prototype.then accepts 'undefined' as arg1, arg2 +flags: [async] ---*/ var obj = {}; diff --git a/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.2_T1.js b/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.2_T1.js index 978e1b52a..76e1b6f4e 100644 --- a/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.2_T1.js +++ b/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.2_T1.js @@ -8,6 +8,7 @@ info: > es6id: S25.4.5.3_A4.2_T1 author: Sam Mikes description: Promise.prototype.then treats non-callable arg1, arg2 as undefined +flags: [async] ---*/ var obj = {}; diff --git a/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.2_T2.js b/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.2_T2.js index 41bec78e6..37e3efb5b 100644 --- a/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.2_T2.js +++ b/test/built-ins/Promise/prototype/then/S25.4.5.3_A4.2_T2.js @@ -8,6 +8,7 @@ info: > es6id: S25.4.5.3_A4.2_T2 author: Sam Mikes description: Promise.prototype.then treats non-callable arg1, arg2 as undefined +flags: [async] ---*/ var obj = {}; diff --git a/test/built-ins/Promise/prototype/then/S25.4.5.3_A5.1_T1.js b/test/built-ins/Promise/prototype/then/S25.4.5.3_A5.1_T1.js index c10f53403..b97ae3fc9 100644 --- a/test/built-ins/Promise/prototype/then/S25.4.5.3_A5.1_T1.js +++ b/test/built-ins/Promise/prototype/then/S25.4.5.3_A5.1_T1.js @@ -9,6 +9,7 @@ es6id: S25.4.5.3_A5.1_T1 author: Sam Mikes description: Promise.prototype.then enqueues handler if pending includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = [], diff --git a/test/built-ins/Promise/prototype/then/S25.4.5.3_A5.2_T1.js b/test/built-ins/Promise/prototype/then/S25.4.5.3_A5.2_T1.js index 46c05ad91..92ad8b82d 100644 --- a/test/built-ins/Promise/prototype/then/S25.4.5.3_A5.2_T1.js +++ b/test/built-ins/Promise/prototype/then/S25.4.5.3_A5.2_T1.js @@ -9,6 +9,7 @@ es6id: S25.4.5.3_A5.2_T1 author: Sam Mikes description: Promise.prototype.then immediately queues handler if fulfilled includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = [], diff --git a/test/built-ins/Promise/prototype/then/S25.4.5.3_A5.3_T1.js b/test/built-ins/Promise/prototype/then/S25.4.5.3_A5.3_T1.js index d41180713..27c65f269 100644 --- a/test/built-ins/Promise/prototype/then/S25.4.5.3_A5.3_T1.js +++ b/test/built-ins/Promise/prototype/then/S25.4.5.3_A5.3_T1.js @@ -9,6 +9,7 @@ es6id: S25.4.5.3_A5.3_T1 author: Sam Mikes description: Promise.prototype.then immediately queues handler if rejected includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = [], diff --git a/test/built-ins/Promise/prototype/then/deferred-is-resolved-value.js b/test/built-ins/Promise/prototype/then/deferred-is-resolved-value.js index 62063fde4..4b471cd01 100755 --- a/test/built-ins/Promise/prototype/then/deferred-is-resolved-value.js +++ b/test/built-ins/Promise/prototype/then/deferred-is-resolved-value.js @@ -34,6 +34,7 @@ info: > 8. Let status be Call(promiseCapability.[[Resolve]], undefined, «handlerResult.[[value]]»). 9. NextJob Completion(status). features: [class] +flags: [async] ---*/ var createBadPromise = false; diff --git a/test/built-ins/Promise/prototype/then/prfm-fulfilled.js b/test/built-ins/Promise/prototype/then/prfm-fulfilled.js index ac49fee03..3d8ddee07 100644 --- a/test/built-ins/Promise/prototype/then/prfm-fulfilled.js +++ b/test/built-ins/Promise/prototype/then/prfm-fulfilled.js @@ -16,6 +16,7 @@ info: > b. Perform EnqueueJob("PromiseJobs", PromiseReactionJob, «fulfillReaction, value»). [...] +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/prfm-pending-fulfulled.js b/test/built-ins/Promise/prototype/then/prfm-pending-fulfulled.js index b0d63c056..94f4b1400 100644 --- a/test/built-ins/Promise/prototype/then/prfm-pending-fulfulled.js +++ b/test/built-ins/Promise/prototype/then/prfm-pending-fulfulled.js @@ -16,6 +16,7 @@ info: > b. Append rejectReaction as the last element of the List that is the value of promise's [[PromiseRejectReactions]] internal slot. [...] +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/prfm-pending-rejected.js b/test/built-ins/Promise/prototype/then/prfm-pending-rejected.js index 23afce4b3..083df48d7 100644 --- a/test/built-ins/Promise/prototype/then/prfm-pending-rejected.js +++ b/test/built-ins/Promise/prototype/then/prfm-pending-rejected.js @@ -16,6 +16,7 @@ info: > b. Append rejectReaction as the last element of the List that is the value of promise's [[PromiseRejectReactions]] internal slot. [...] +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/prfm-rejected.js b/test/built-ins/Promise/prototype/then/prfm-rejected.js index 727eea81f..6e91adcda 100644 --- a/test/built-ins/Promise/prototype/then/prfm-rejected.js +++ b/test/built-ins/Promise/prototype/then/prfm-rejected.js @@ -16,6 +16,7 @@ info: > b. Perform EnqueueJob("PromiseJobs", PromiseReactionJob, «rejectReaction, reason»). [...] +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/reject-pending-fulfilled.js b/test/built-ins/Promise/prototype/then/reject-pending-fulfilled.js index f89ea8a8a..07584596e 100644 --- a/test/built-ins/Promise/prototype/then/reject-pending-fulfilled.js +++ b/test/built-ins/Promise/prototype/then/reject-pending-fulfilled.js @@ -18,6 +18,7 @@ info: > 25.4.1.3.1 Promise Reject Functions [...] 6. Return RejectPromise(promise, reason). +flags: [async] ---*/ var resolve; diff --git a/test/built-ins/Promise/prototype/then/reject-pending-rejected.js b/test/built-ins/Promise/prototype/then/reject-pending-rejected.js index fee406619..bcbca0d1a 100644 --- a/test/built-ins/Promise/prototype/then/reject-pending-rejected.js +++ b/test/built-ins/Promise/prototype/then/reject-pending-rejected.js @@ -19,6 +19,7 @@ info: > 25.4.1.3.1 Promise Reject Functions [...] 6. Return RejectPromise(promise, reason). +flags: [async] ---*/ var reject; diff --git a/test/built-ins/Promise/prototype/then/reject-settled-fulfilled.js b/test/built-ins/Promise/prototype/then/reject-settled-fulfilled.js index bc638eaf5..32a0a6a3b 100644 --- a/test/built-ins/Promise/prototype/then/reject-settled-fulfilled.js +++ b/test/built-ins/Promise/prototype/then/reject-settled-fulfilled.js @@ -26,6 +26,7 @@ info: > 25.4.1.3.1 Promise Reject Functions [...] 6. Return RejectPromise(promise, reason). +flags: [async] ---*/ var thenable = new Promise(function(resolve) { resolve(); }); diff --git a/test/built-ins/Promise/prototype/then/reject-settled-rejected.js b/test/built-ins/Promise/prototype/then/reject-settled-rejected.js index 487b94444..042fa2559 100644 --- a/test/built-ins/Promise/prototype/then/reject-settled-rejected.js +++ b/test/built-ins/Promise/prototype/then/reject-settled-rejected.js @@ -26,6 +26,7 @@ info: > 25.4.1.3.1 Promise Reject Functions [...] 6. Return RejectPromise(promise, reason). +flags: [async] ---*/ var thenable = new Promise(function(resolve) { resolve(); }); diff --git a/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-non-obj.js b/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-non-obj.js index 65f95ba0b..fde854afa 100644 --- a/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-non-obj.js +++ b/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-non-obj.js @@ -18,6 +18,7 @@ info: > 25.4.1.3.2 Promise Resolve Functions 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var resolve; diff --git a/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-non-thenable.js b/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-non-thenable.js index 8012d94a7..e2ecdf7b7 100644 --- a/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-non-thenable.js +++ b/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-non-thenable.js @@ -23,6 +23,7 @@ info: > 10. Let thenAction be then.[[value]]. 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var nonThenable = { then: null }; diff --git a/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-poisoned-then.js b/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-poisoned-then.js index 9abf9511e..1d050c6a3 100644 --- a/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-poisoned-then.js +++ b/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-poisoned-then.js @@ -20,6 +20,7 @@ info: > 8. Let then be Get(resolution, "then"). 9. If then is an abrupt completion, then a. Return RejectPromise(promise, then.[[value]]). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-self.js b/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-self.js index 9a2f1da69..e588fe940 100644 --- a/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-self.js +++ b/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-self.js @@ -20,6 +20,7 @@ info: > 6. If SameValue(resolution, promise) is true, then a. Let selfResolutionError be a newly created TypeError object. b. Return RejectPromise(promise, selfResolutionError). +flags: [async] ---*/ var resolve; diff --git a/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-thenable.js b/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-thenable.js index a6153bc8f..de26a1325 100644 --- a/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-thenable.js +++ b/test/built-ins/Promise/prototype/then/resolve-pending-fulfilled-thenable.js @@ -25,6 +25,7 @@ info: > [...] 12. Perform EnqueueJob ("PromiseJobs", PromiseResolveThenableJob, «promise, resolution, thenAction») +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/resolve-pending-rejected-non-obj.js b/test/built-ins/Promise/prototype/then/resolve-pending-rejected-non-obj.js index 576cdf006..0bbf700b0 100644 --- a/test/built-ins/Promise/prototype/then/resolve-pending-rejected-non-obj.js +++ b/test/built-ins/Promise/prototype/then/resolve-pending-rejected-non-obj.js @@ -19,6 +19,7 @@ info: > 25.4.1.3.2 Promise Resolve Functions 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var reject; diff --git a/test/built-ins/Promise/prototype/then/resolve-pending-rejected-non-thenable.js b/test/built-ins/Promise/prototype/then/resolve-pending-rejected-non-thenable.js index 95191b0b8..4087ddfee 100644 --- a/test/built-ins/Promise/prototype/then/resolve-pending-rejected-non-thenable.js +++ b/test/built-ins/Promise/prototype/then/resolve-pending-rejected-non-thenable.js @@ -24,6 +24,7 @@ info: > 10. Let thenAction be then.[[value]]. 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var nonThenable = { then: null }; diff --git a/test/built-ins/Promise/prototype/then/resolve-pending-rejected-poisoned-then.js b/test/built-ins/Promise/prototype/then/resolve-pending-rejected-poisoned-then.js index f7808d038..db166e806 100644 --- a/test/built-ins/Promise/prototype/then/resolve-pending-rejected-poisoned-then.js +++ b/test/built-ins/Promise/prototype/then/resolve-pending-rejected-poisoned-then.js @@ -21,6 +21,7 @@ info: > 8. Let then be Get(resolution, "then"). 9. If then is an abrupt completion, then a. Return RejectPromise(promise, then.[[value]]). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/resolve-pending-rejected-self.js b/test/built-ins/Promise/prototype/then/resolve-pending-rejected-self.js index 87937e398..e30f32ec6 100644 --- a/test/built-ins/Promise/prototype/then/resolve-pending-rejected-self.js +++ b/test/built-ins/Promise/prototype/then/resolve-pending-rejected-self.js @@ -21,6 +21,7 @@ info: > 6. If SameValue(resolution, promise) is true, then a. Let selfResolutionError be a newly created TypeError object. b. Return RejectPromise(promise, selfResolutionError). +flags: [async] ---*/ var reject; diff --git a/test/built-ins/Promise/prototype/then/resolve-pending-rejected-thenable.js b/test/built-ins/Promise/prototype/then/resolve-pending-rejected-thenable.js index bb33553bd..1ebbfbcb0 100644 --- a/test/built-ins/Promise/prototype/then/resolve-pending-rejected-thenable.js +++ b/test/built-ins/Promise/prototype/then/resolve-pending-rejected-thenable.js @@ -26,6 +26,7 @@ info: > [...] 12. Perform EnqueueJob ("PromiseJobs", PromiseResolveThenableJob, «promise, resolution, thenAction») +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-non-obj.js b/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-non-obj.js index 35e9e3f7f..3f39485e5 100644 --- a/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-non-obj.js +++ b/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-non-obj.js @@ -25,6 +25,7 @@ info: > 25.4.1.3.2 Promise Resolve Functions 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var p1 = new Promise(function(resolve) { resolve(); }); diff --git a/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-non-thenable.js b/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-non-thenable.js index 07c40145a..1166af3a7 100644 --- a/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-non-thenable.js +++ b/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-non-thenable.js @@ -30,6 +30,7 @@ info: > 10. Let thenAction be then.[[value]]. 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var nonThenable = { then: null }; diff --git a/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-poisoned-then.js b/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-poisoned-then.js index ef5a9e083..9254f36e1 100644 --- a/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-poisoned-then.js +++ b/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-poisoned-then.js @@ -27,6 +27,7 @@ info: > 8. Let then be Get(resolution, "then"). 9. If then is an abrupt completion, then a. Return RejectPromise(promise, then.[[value]]). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-self.js b/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-self.js index d97a348c2..ac2630247 100644 --- a/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-self.js +++ b/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-self.js @@ -27,6 +27,7 @@ info: > 6. If SameValue(resolution, promise) is true, then a. Let selfResolutionError be a newly created TypeError object. b. Return RejectPromise(promise, selfResolutionError). +flags: [async] ---*/ var p1 = new Promise(function(resolve) { resolve(); }); diff --git a/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-thenable.js b/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-thenable.js index 86691de55..447c248b5 100644 --- a/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-thenable.js +++ b/test/built-ins/Promise/prototype/then/resolve-settled-fulfilled-thenable.js @@ -32,6 +32,7 @@ info: > [...] 12. Perform EnqueueJob ("PromiseJobs", PromiseResolveThenableJob, «promise, resolution, thenAction») +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/resolve-settled-rejected-non-obj.js b/test/built-ins/Promise/prototype/then/resolve-settled-rejected-non-obj.js index f9151850d..bd1ccb950 100644 --- a/test/built-ins/Promise/prototype/then/resolve-settled-rejected-non-obj.js +++ b/test/built-ins/Promise/prototype/then/resolve-settled-rejected-non-obj.js @@ -25,6 +25,7 @@ info: > 25.4.1.3.2 Promise Resolve Functions 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var p1 = new Promise(function(_, reject) { reject(); }); diff --git a/test/built-ins/Promise/prototype/then/resolve-settled-rejected-non-thenable.js b/test/built-ins/Promise/prototype/then/resolve-settled-rejected-non-thenable.js index 421376088..92c48e7b8 100644 --- a/test/built-ins/Promise/prototype/then/resolve-settled-rejected-non-thenable.js +++ b/test/built-ins/Promise/prototype/then/resolve-settled-rejected-non-thenable.js @@ -30,6 +30,7 @@ info: > 10. Let thenAction be then.[[value]]. 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var nonThenable = { then: null }; diff --git a/test/built-ins/Promise/prototype/then/resolve-settled-rejected-poisoned-then.js b/test/built-ins/Promise/prototype/then/resolve-settled-rejected-poisoned-then.js index 785f557b7..b276b27ac 100644 --- a/test/built-ins/Promise/prototype/then/resolve-settled-rejected-poisoned-then.js +++ b/test/built-ins/Promise/prototype/then/resolve-settled-rejected-poisoned-then.js @@ -27,6 +27,7 @@ info: > 8. Let then be Get(resolution, "then"). 9. If then is an abrupt completion, then a. Return RejectPromise(promise, then.[[value]]). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/resolve-settled-rejected-self.js b/test/built-ins/Promise/prototype/then/resolve-settled-rejected-self.js index cfdf3e4b0..5aa5d6a2e 100644 --- a/test/built-ins/Promise/prototype/then/resolve-settled-rejected-self.js +++ b/test/built-ins/Promise/prototype/then/resolve-settled-rejected-self.js @@ -27,6 +27,7 @@ info: > 6. If SameValue(resolution, promise) is true, then a. Let selfResolutionError be a newly created TypeError object. b. Return RejectPromise(promise, selfResolutionError). +flags: [async] ---*/ var p1 = new Promise(function(_, reject) { reject(); }); diff --git a/test/built-ins/Promise/prototype/then/resolve-settled-rejected-thenable.js b/test/built-ins/Promise/prototype/then/resolve-settled-rejected-thenable.js index 9d1ee3f62..65656f39f 100644 --- a/test/built-ins/Promise/prototype/then/resolve-settled-rejected-thenable.js +++ b/test/built-ins/Promise/prototype/then/resolve-settled-rejected-thenable.js @@ -32,6 +32,7 @@ info: > [...] 12. Perform EnqueueJob ("PromiseJobs", PromiseResolveThenableJob, «promise, resolution, thenAction») +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-invoke-nonstrict.js b/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-invoke-nonstrict.js index c149da931..7861def38 100644 --- a/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-invoke-nonstrict.js +++ b/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-invoke-nonstrict.js @@ -9,7 +9,7 @@ es6id: S25.4.2.1_A3.1_T1 author: Sam Mikes description: > "fulfilled" handler invoked correctly outside of strict mode -flags: [noStrict] +flags: [async, noStrict] includes: [fnGlobalObject.js] ---*/ diff --git a/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-invoke-strict.js b/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-invoke-strict.js index 33068c06e..fef11c32c 100644 --- a/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-invoke-strict.js +++ b/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-invoke-strict.js @@ -9,7 +9,7 @@ es6id: S25.4.2.1_A3.1_T2 author: Sam Mikes description: > "fulfilled" handler invoked correctly in strict mode -flags: [onlyStrict] +flags: [async, onlyStrict] ---*/ var expectedThis = undefined, diff --git a/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-next-abrupt.js b/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-next-abrupt.js index 00d6aeff0..06816900d 100644 --- a/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-next-abrupt.js +++ b/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-next-abrupt.js @@ -12,6 +12,7 @@ info: > 8. Let status be Call(promiseCapability.[[Resolve]], undefined, «handlerResult.[[value]]»). 9. NextJob Completion(status). +flags: [async] ---*/ var promise = new Promise(function(resolve) { diff --git a/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-next.js b/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-next.js index 1443459a1..287036209 100644 --- a/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-next.js +++ b/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-next.js @@ -12,6 +12,7 @@ info: > 8. Let status be Call(promiseCapability.[[Resolve]], undefined, «handlerResult.[[value]]»). 9. NextJob Completion(status). +flags: [async] ---*/ var promise = new Promise(function(resolve) { diff --git a/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-return-abrupt.js b/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-return-abrupt.js index 429c3171f..88ad121f2 100644 --- a/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-return-abrupt.js +++ b/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-return-abrupt.js @@ -25,6 +25,7 @@ info: > 8. Let status be Call(promiseCapability.[[Resolve]], undefined, «handlerResult.[[value]]»). 9. NextJob Completion(status). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-return-normal.js b/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-return-normal.js index 4437d5fb7..752068bc4 100644 --- a/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-return-normal.js +++ b/test/built-ins/Promise/prototype/then/rxn-handler-fulfilled-return-normal.js @@ -25,6 +25,7 @@ info: > 8. Let status be Call(promiseCapability.[[Resolve]], undefined, «handlerResult.[[value]]»). 9. NextJob Completion(status). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/rxn-handler-identity.js b/test/built-ins/Promise/prototype/then/rxn-handler-identity.js index 6230f9c9b..153731945 100644 --- a/test/built-ins/Promise/prototype/then/rxn-handler-identity.js +++ b/test/built-ins/Promise/prototype/then/rxn-handler-identity.js @@ -7,6 +7,7 @@ info: > es6id: S25.4.2.1_A1.1_T1 author: Sam Mikes description: argument passes through "Identity" +flags: [async] ---*/ var obj = {}; diff --git a/test/built-ins/Promise/prototype/then/rxn-handler-rejected-invoke-nonstrict.js b/test/built-ins/Promise/prototype/then/rxn-handler-rejected-invoke-nonstrict.js index ee2bff372..d01480d0c 100644 --- a/test/built-ins/Promise/prototype/then/rxn-handler-rejected-invoke-nonstrict.js +++ b/test/built-ins/Promise/prototype/then/rxn-handler-rejected-invoke-nonstrict.js @@ -9,7 +9,7 @@ es6id: S25.4.2.1_A3.2_T1 author: Sam Mikes description: > "rejected" handler invoked correctly outside of strict mode -flags: [noStrict] +flags: [async, noStrict] includes: [fnGlobalObject.js] ---*/ diff --git a/test/built-ins/Promise/prototype/then/rxn-handler-rejected-invoke-strict.js b/test/built-ins/Promise/prototype/then/rxn-handler-rejected-invoke-strict.js index c782ddb9d..116ea1a14 100644 --- a/test/built-ins/Promise/prototype/then/rxn-handler-rejected-invoke-strict.js +++ b/test/built-ins/Promise/prototype/then/rxn-handler-rejected-invoke-strict.js @@ -9,7 +9,7 @@ es6id: S25.4.2.1_A3.2_T2 author: Sam Mikes description: > "rejected" handler invoked correctly in strict mode -flags: [onlyStrict] +flags: [async, onlyStrict] ---*/ var expectedThis = undefined, diff --git a/test/built-ins/Promise/prototype/then/rxn-handler-rejected-next-abrupt.js b/test/built-ins/Promise/prototype/then/rxn-handler-rejected-next-abrupt.js index 6c3d18b40..f217bddcb 100644 --- a/test/built-ins/Promise/prototype/then/rxn-handler-rejected-next-abrupt.js +++ b/test/built-ins/Promise/prototype/then/rxn-handler-rejected-next-abrupt.js @@ -12,6 +12,7 @@ info: > 8. Let status be Call(promiseCapability.[[Resolve]], undefined, «handlerResult.[[value]]»). 9. NextJob Completion(status). +flags: [async] ---*/ var promise = new Promise(function(_, reject) { diff --git a/test/built-ins/Promise/prototype/then/rxn-handler-rejected-next.js b/test/built-ins/Promise/prototype/then/rxn-handler-rejected-next.js index 59a3916b3..9ab10d84a 100644 --- a/test/built-ins/Promise/prototype/then/rxn-handler-rejected-next.js +++ b/test/built-ins/Promise/prototype/then/rxn-handler-rejected-next.js @@ -12,6 +12,7 @@ info: > 8. Let status be Call(promiseCapability.[[Resolve]], undefined, «handlerResult.[[value]]»). 9. NextJob Completion(status). +flags: [async] ---*/ var promise = new Promise(function(_, reject) { diff --git a/test/built-ins/Promise/prototype/then/rxn-handler-rejected-return-abrupt.js b/test/built-ins/Promise/prototype/then/rxn-handler-rejected-return-abrupt.js index 5b95a5a04..857e0b6e8 100644 --- a/test/built-ins/Promise/prototype/then/rxn-handler-rejected-return-abrupt.js +++ b/test/built-ins/Promise/prototype/then/rxn-handler-rejected-return-abrupt.js @@ -25,6 +25,7 @@ info: > 8. Let status be Call(promiseCapability.[[Resolve]], undefined, «handlerResult.[[value]]»). 9. NextJob Completion(status). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/rxn-handler-rejected-return-normal.js b/test/built-ins/Promise/prototype/then/rxn-handler-rejected-return-normal.js index 1277801c5..80adf6382 100644 --- a/test/built-ins/Promise/prototype/then/rxn-handler-rejected-return-normal.js +++ b/test/built-ins/Promise/prototype/then/rxn-handler-rejected-return-normal.js @@ -25,6 +25,7 @@ info: > 8. Let status be Call(promiseCapability.[[Resolve]], undefined, «handlerResult.[[value]]»). 9. NextJob Completion(status). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/prototype/then/rxn-handler-thrower.js b/test/built-ins/Promise/prototype/then/rxn-handler-thrower.js index 437792f97..d2d9cacd8 100644 --- a/test/built-ins/Promise/prototype/then/rxn-handler-thrower.js +++ b/test/built-ins/Promise/prototype/then/rxn-handler-thrower.js @@ -7,6 +7,7 @@ info: > es6id: S25.4.2.1_A2.1_T1 author: Sam Mikes description: argument thrown through "Thrower" +flags: [async] ---*/ var obj = {}; diff --git a/test/built-ins/Promise/race/S25.4.4.3_A2.2_T1.js b/test/built-ins/Promise/race/S25.4.4.3_A2.2_T1.js index 70e2f001b..87a7c610a 100644 --- a/test/built-ins/Promise/race/S25.4.4.3_A2.2_T1.js +++ b/test/built-ins/Promise/race/S25.4.4.3_A2.2_T1.js @@ -6,6 +6,7 @@ info: Promise.race rejects on non-iterable argument es6id: S25.4.4.3_A2.2_T1 author: Sam Mikes description: Promise.race rejects if argument is not object or is non-iterable +flags: [async] ---*/ var nonIterable = 3; diff --git a/test/built-ins/Promise/race/S25.4.4.3_A2.2_T2.js b/test/built-ins/Promise/race/S25.4.4.3_A2.2_T2.js index e4188ee45..cca930722 100644 --- a/test/built-ins/Promise/race/S25.4.4.3_A2.2_T2.js +++ b/test/built-ins/Promise/race/S25.4.4.3_A2.2_T2.js @@ -6,6 +6,7 @@ info: Promise.race rejects on non-iterable argument es6id: S25.4.4.3_A2.2_T2 author: Sam Mikes description: Promise.race rejects if argument is not object or is non-iterable +flags: [async] ---*/ Promise.race(new Error("abrupt")).then(function () { diff --git a/test/built-ins/Promise/race/S25.4.4.3_A2.2_T3.js b/test/built-ins/Promise/race/S25.4.4.3_A2.2_T3.js index 1714b4f18..464d62135 100644 --- a/test/built-ins/Promise/race/S25.4.4.3_A2.2_T3.js +++ b/test/built-ins/Promise/race/S25.4.4.3_A2.2_T3.js @@ -10,6 +10,7 @@ es6id: S25.4.4.3_A2.2_T3 author: Sam Mikes description: Promise.race rejects if GetIterator throws features: [Symbol.iterator] +flags: [async] ---*/ var iterThrows = {}; diff --git a/test/built-ins/Promise/race/S25.4.4.3_A4.1_T1.js b/test/built-ins/Promise/race/S25.4.4.3_A4.1_T1.js index e6228c373..a325a995b 100644 --- a/test/built-ins/Promise/race/S25.4.4.3_A4.1_T1.js +++ b/test/built-ins/Promise/race/S25.4.4.3_A4.1_T1.js @@ -6,6 +6,7 @@ es6id: S25.4.4.3_A4.1_T1 author: Sam Mikes description: Promise.race rejects if IteratorStep throws features: [Symbol.iterator] +flags: [async] ---*/ var iterThrows = {}; diff --git a/test/built-ins/Promise/race/S25.4.4.3_A4.1_T2.js b/test/built-ins/Promise/race/S25.4.4.3_A4.1_T2.js index b3158a1e3..00ac77d1b 100644 --- a/test/built-ins/Promise/race/S25.4.4.3_A4.1_T2.js +++ b/test/built-ins/Promise/race/S25.4.4.3_A4.1_T2.js @@ -6,6 +6,7 @@ es6id: S25.4.4.3_A4.1_T2 author: Sam Mikes description: Promise.race rejects if IteratorStep throws features: [Symbol.iterator] +flags: [async] ---*/ var iterThrows = {}; diff --git a/test/built-ins/Promise/race/S25.4.4.3_A5.1_T1.js b/test/built-ins/Promise/race/S25.4.4.3_A5.1_T1.js index cc9042d2a..e5b7526fd 100644 --- a/test/built-ins/Promise/race/S25.4.4.3_A5.1_T1.js +++ b/test/built-ins/Promise/race/S25.4.4.3_A5.1_T1.js @@ -5,6 +5,7 @@ es6id: S25.4.4.3_A5.1_T1 author: Sam Mikes description: Promise.race([]) never settles +flags: [async] ---*/ var p = Promise.race([]); diff --git a/test/built-ins/Promise/race/S25.4.4.3_A6.1_T1.js b/test/built-ins/Promise/race/S25.4.4.3_A6.1_T1.js index e3a8cb608..99c327c5c 100644 --- a/test/built-ins/Promise/race/S25.4.4.3_A6.1_T1.js +++ b/test/built-ins/Promise/race/S25.4.4.3_A6.1_T1.js @@ -6,6 +6,7 @@ es6id: S25.4.4.3_A6.1_T1 author: Sam Mikes description: Promise.race([1]) settles immediately includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = []; diff --git a/test/built-ins/Promise/race/S25.4.4.3_A6.2_T1.js b/test/built-ins/Promise/race/S25.4.4.3_A6.2_T1.js index 35b71d966..93468f869 100644 --- a/test/built-ins/Promise/race/S25.4.4.3_A6.2_T1.js +++ b/test/built-ins/Promise/race/S25.4.4.3_A6.2_T1.js @@ -6,6 +6,7 @@ es6id: S25.4.4.3_A6.2_T1 author: Sam Mikes description: Promise.race([p1]) settles immediately includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = []; diff --git a/test/built-ins/Promise/race/S25.4.4.3_A7.1_T1.js b/test/built-ins/Promise/race/S25.4.4.3_A7.1_T1.js index 8e5636a79..9f0848429 100644 --- a/test/built-ins/Promise/race/S25.4.4.3_A7.1_T1.js +++ b/test/built-ins/Promise/race/S25.4.4.3_A7.1_T1.js @@ -6,6 +6,7 @@ es6id: S25.4.4.3_A7.1_T1 author: Sam Mikes description: Promise.race([p1, p2]) settles when first settles includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = []; diff --git a/test/built-ins/Promise/race/S25.4.4.3_A7.1_T2.js b/test/built-ins/Promise/race/S25.4.4.3_A7.1_T2.js index a07716d6b..6f4030d7d 100644 --- a/test/built-ins/Promise/race/S25.4.4.3_A7.1_T2.js +++ b/test/built-ins/Promise/race/S25.4.4.3_A7.1_T2.js @@ -6,6 +6,7 @@ es6id: S25.4.4.3_A7.1_T2 author: Sam Mikes description: Promise.race([p1, p2]) settles when first settles includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = []; diff --git a/test/built-ins/Promise/race/S25.4.4.3_A7.1_T3.js b/test/built-ins/Promise/race/S25.4.4.3_A7.1_T3.js index 941d79474..047dd65d2 100644 --- a/test/built-ins/Promise/race/S25.4.4.3_A7.1_T3.js +++ b/test/built-ins/Promise/race/S25.4.4.3_A7.1_T3.js @@ -6,6 +6,7 @@ es6id: S25.4.4.3_A7.1_T3 author: Sam Mikes description: Promise.race([p1, p2]) settles when first settles includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = []; diff --git a/test/built-ins/Promise/race/S25.4.4.3_A7.2_T1.js b/test/built-ins/Promise/race/S25.4.4.3_A7.2_T1.js index 6dbf6fc95..fbbdcf95e 100644 --- a/test/built-ins/Promise/race/S25.4.4.3_A7.2_T1.js +++ b/test/built-ins/Promise/race/S25.4.4.3_A7.2_T1.js @@ -6,6 +6,7 @@ es6id: S25.4.4.3_A7.2_T1 author: Sam Mikes description: Promise.race([p1, p2]) settles when first settles includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = []; diff --git a/test/built-ins/Promise/race/S25.4.4.3_A7.3_T1.js b/test/built-ins/Promise/race/S25.4.4.3_A7.3_T1.js index aedf18bfe..02dad7f9d 100644 --- a/test/built-ins/Promise/race/S25.4.4.3_A7.3_T1.js +++ b/test/built-ins/Promise/race/S25.4.4.3_A7.3_T1.js @@ -5,6 +5,7 @@ es6id: S25.4.4.3_A7.3_T1 author: Sam Mikes description: Promise.race([p1, p2]) settles when first settles +flags: [async] ---*/ var resolveP1, rejectP2, diff --git a/test/built-ins/Promise/race/S25.4.4.3_A7.3_T2.js b/test/built-ins/Promise/race/S25.4.4.3_A7.3_T2.js index 8609e5dd7..535116ea1 100644 --- a/test/built-ins/Promise/race/S25.4.4.3_A7.3_T2.js +++ b/test/built-ins/Promise/race/S25.4.4.3_A7.3_T2.js @@ -5,6 +5,7 @@ es6id: S25.4.4.3_A7.3_T2 author: Sam Mikes description: Promise.race([p1, p2]) settles when first settles +flags: [async] ---*/ var resolveP1, rejectP2, diff --git a/test/built-ins/Promise/race/invoke-resolve-get-error.js b/test/built-ins/Promise/race/invoke-resolve-get-error.js index 2ed029d5e..9fa2dc6ad 100644 --- a/test/built-ins/Promise/race/invoke-resolve-get-error.js +++ b/test/built-ins/Promise/race/invoke-resolve-get-error.js @@ -20,6 +20,7 @@ info: > [...] h. Let nextPromise be Invoke(C, "resolve", «nextValue»). i. ReturnIfAbrupt(nextPromise). +flags: [async] ---*/ var error = new Test262Error(); diff --git a/test/built-ins/Promise/race/invoke-then-error.js b/test/built-ins/Promise/race/invoke-then-error.js index b2f79f534..184e3ea5b 100644 --- a/test/built-ins/Promise/race/invoke-then-error.js +++ b/test/built-ins/Promise/race/invoke-then-error.js @@ -21,6 +21,7 @@ info: > j. Let result be Invoke(nextPromise, "then", «promiseCapability.[[Resolve]], promiseCapability.[[Reject]]»). k. ReturnIfAbrupt(result). +flags: [async] ---*/ var promise = new Promise(function() {}); diff --git a/test/built-ins/Promise/race/iter-close.js b/test/built-ins/Promise/race/iter-close.js index 02858893a..f66dc68c3 100644 --- a/test/built-ins/Promise/race/iter-close.js +++ b/test/built-ins/Promise/race/iter-close.js @@ -20,6 +20,7 @@ info: > h. Let nextPromise be Invoke(C, "resolve", «nextValue»). i. ReturnIfAbrupt(nextPromise). features: [Symbol.iterator] +flags: [async] ---*/ var err = new Test262Error(); diff --git a/test/built-ins/Promise/race/iter-next-val-err.js b/test/built-ins/Promise/race/iter-next-val-err.js index eca773a9e..dfa2177a9 100644 --- a/test/built-ins/Promise/race/iter-next-val-err.js +++ b/test/built-ins/Promise/race/iter-next-val-err.js @@ -23,6 +23,7 @@ info: > true. g. ReturnIfAbrupt(nextValue). features: [Symbol.iterator] +flags: [async] ---*/ var iterNextValThrows = {}; diff --git a/test/built-ins/Promise/race/iter-step-err.js b/test/built-ins/Promise/race/iter-step-err.js index e24847550..d7dfd34d3 100644 --- a/test/built-ins/Promise/race/iter-step-err.js +++ b/test/built-ins/Promise/race/iter-step-err.js @@ -19,6 +19,7 @@ info: > b. If next is an abrupt completion, set iteratorRecord.[[done]] to true. c. ReturnIfAbrupt(next). features: [Symbol.iterator] +flags: [async] ---*/ var iterStepThrows = {}; diff --git a/test/built-ins/Promise/race/reject-deferred.js b/test/built-ins/Promise/race/reject-deferred.js index e070cef6e..5c7d7cd0d 100644 --- a/test/built-ins/Promise/race/reject-deferred.js +++ b/test/built-ins/Promise/race/reject-deferred.js @@ -19,6 +19,7 @@ info: > 25.4.1.3.1 Promise Reject Functions [...] 6. Return RejectPromise(promise, reason). +flags: [async] ---*/ var thenable = { diff --git a/test/built-ins/Promise/race/reject-ignored-deferred.js b/test/built-ins/Promise/race/reject-ignored-deferred.js index bf63e7328..4ebc4ac79 100644 --- a/test/built-ins/Promise/race/reject-ignored-deferred.js +++ b/test/built-ins/Promise/race/reject-ignored-deferred.js @@ -24,6 +24,7 @@ info: > 3. Let alreadyResolved be the value of F's [[AlreadyResolved]] internal slot. 4. If alreadyResolved.[[value]] is true, return undefined. +flags: [async] ---*/ var fulfiller = { diff --git a/test/built-ins/Promise/race/reject-ignored-immed.js b/test/built-ins/Promise/race/reject-ignored-immed.js index a22eac484..c1b0885dc 100644 --- a/test/built-ins/Promise/race/reject-ignored-immed.js +++ b/test/built-ins/Promise/race/reject-ignored-immed.js @@ -24,6 +24,7 @@ info: > 3. Let alreadyResolved be the value of F's [[AlreadyResolved]] internal slot. 4. If alreadyResolved.[[value]] is true, return undefined. +flags: [async] ---*/ var fulfiller = { diff --git a/test/built-ins/Promise/race/reject-immed.js b/test/built-ins/Promise/race/reject-immed.js index 4cfc9a925..fd1e64577 100644 --- a/test/built-ins/Promise/race/reject-immed.js +++ b/test/built-ins/Promise/race/reject-immed.js @@ -19,6 +19,7 @@ info: > 25.4.1.3.1 Promise Reject Functions [...] 6. Return RejectPromise(promise, reason). +flags: [async] ---*/ var thenable = { diff --git a/test/built-ins/Promise/race/resolve-non-obj.js b/test/built-ins/Promise/race/resolve-non-obj.js index 6dfd31a9c..6b39a974a 100644 --- a/test/built-ins/Promise/race/resolve-non-obj.js +++ b/test/built-ins/Promise/race/resolve-non-obj.js @@ -20,6 +20,7 @@ info: > [...] 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var thenable = { diff --git a/test/built-ins/Promise/race/resolve-non-thenable.js b/test/built-ins/Promise/race/resolve-non-thenable.js index 179ab4344..e5b8671e4 100644 --- a/test/built-ins/Promise/race/resolve-non-thenable.js +++ b/test/built-ins/Promise/race/resolve-non-thenable.js @@ -24,6 +24,7 @@ info: > 10. Let thenAction be then.[[value]]. 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/race/resolve-poisoned-then.js b/test/built-ins/Promise/race/resolve-poisoned-then.js index c25563dad..1d3470afe 100644 --- a/test/built-ins/Promise/race/resolve-poisoned-then.js +++ b/test/built-ins/Promise/race/resolve-poisoned-then.js @@ -20,6 +20,7 @@ info: > 8. Let then be Get(resolution, "then"). 9. If then is an abrupt completion, then a. Return RejectPromise(promise, then.[[value]]). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/race/resolve-self.js b/test/built-ins/Promise/race/resolve-self.js index 511a03200..9bf40fc47 100644 --- a/test/built-ins/Promise/race/resolve-self.js +++ b/test/built-ins/Promise/race/resolve-self.js @@ -20,6 +20,7 @@ info: > 6. If SameValue(resolution, promise) is true, then a. Let selfResolutionError be a newly created TypeError object. b. Return RejectPromise(promise, selfResolutionError). +flags: [async] ---*/ var self, resolve; diff --git a/test/built-ins/Promise/race/resolve-thenable.js b/test/built-ins/Promise/race/resolve-thenable.js index 8eb3f059c..c1512d9c5 100644 --- a/test/built-ins/Promise/race/resolve-thenable.js +++ b/test/built-ins/Promise/race/resolve-thenable.js @@ -26,6 +26,7 @@ info: > [...] 12. Perform EnqueueJob ("PromiseJobs", PromiseResolveThenableJob, «promise, resolution, thenAction») +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/reject-ignored-via-abrupt.js b/test/built-ins/Promise/reject-ignored-via-abrupt.js index f3cb6c7a7..23848a79d 100644 --- a/test/built-ins/Promise/reject-ignored-via-abrupt.js +++ b/test/built-ins/Promise/reject-ignored-via-abrupt.js @@ -18,6 +18,7 @@ info: > 3. Let alreadyResolved be the value of F's [[AlreadyResolved]] internal slot. 4. If alreadyResolved.[[value]] is true, return undefined. +flags: [async] ---*/ var thenable = new Promise(function() {}); diff --git a/test/built-ins/Promise/reject-ignored-via-fn-deferred.js b/test/built-ins/Promise/reject-ignored-via-fn-deferred.js index 10b0d81e0..117722fa1 100644 --- a/test/built-ins/Promise/reject-ignored-via-fn-deferred.js +++ b/test/built-ins/Promise/reject-ignored-via-fn-deferred.js @@ -18,6 +18,7 @@ info: > 3. Let alreadyResolved be the value of F's [[AlreadyResolved]] internal slot. 4. If alreadyResolved.[[value]] is true, return undefined. +flags: [async] ---*/ var thenable = new Promise(function() {}); diff --git a/test/built-ins/Promise/reject-ignored-via-fn-immed.js b/test/built-ins/Promise/reject-ignored-via-fn-immed.js index bd856a342..1e97f5d91 100644 --- a/test/built-ins/Promise/reject-ignored-via-fn-immed.js +++ b/test/built-ins/Promise/reject-ignored-via-fn-immed.js @@ -18,6 +18,7 @@ info: > 3. Let alreadyResolved be the value of F's [[AlreadyResolved]] internal slot. 4. If alreadyResolved.[[value]] is true, return undefined. +flags: [async] ---*/ var thenable = new Promise(function() {}); diff --git a/test/built-ins/Promise/reject-via-abrupt.js b/test/built-ins/Promise/reject-via-abrupt.js index 6e608bdc2..291610200 100644 --- a/test/built-ins/Promise/reject-via-abrupt.js +++ b/test/built-ins/Promise/reject-via-abrupt.js @@ -16,6 +16,7 @@ info: > 25.4.1.3.1 Promise Reject Functions [...] 6. Return RejectPromise(promise, reason). +flags: [async] ---*/ var thenable = new Promise(function() {}); diff --git a/test/built-ins/Promise/reject-via-fn-deferred.js b/test/built-ins/Promise/reject-via-fn-deferred.js index 855d92b41..fca3fcafc 100644 --- a/test/built-ins/Promise/reject-via-fn-deferred.js +++ b/test/built-ins/Promise/reject-via-fn-deferred.js @@ -14,6 +14,7 @@ info: > 25.4.1.3.1 Promise Reject Functions [...] 6. Return RejectPromise(promise, reason). +flags: [async] ---*/ var thenable = new Promise(function() {}); diff --git a/test/built-ins/Promise/reject-via-fn-immed.js b/test/built-ins/Promise/reject-via-fn-immed.js index 474db80d8..26e841f7f 100644 --- a/test/built-ins/Promise/reject-via-fn-immed.js +++ b/test/built-ins/Promise/reject-via-fn-immed.js @@ -14,6 +14,7 @@ info: > 25.4.1.3.1 Promise Reject Functions [...] 6. Return RejectPromise(promise, reason). +flags: [async] ---*/ var thenable = new Promise(function() {}); diff --git a/test/built-ins/Promise/reject/S25.4.4.4_A2.1_T1.js b/test/built-ins/Promise/reject/S25.4.4.4_A2.1_T1.js index bc589ac13..0b189e52a 100644 --- a/test/built-ins/Promise/reject/S25.4.4.4_A2.1_T1.js +++ b/test/built-ins/Promise/reject/S25.4.4.4_A2.1_T1.js @@ -13,6 +13,7 @@ info: > es6id: 25.4.4.4 author: Sam Mikes description: Promise.reject creates a new settled promise +flags: [async] ---*/ var p = Promise.reject(3); diff --git a/test/built-ins/Promise/resolve-non-obj-deferred.js b/test/built-ins/Promise/resolve-non-obj-deferred.js index 2516dbd41..8e099a472 100644 --- a/test/built-ins/Promise/resolve-non-obj-deferred.js +++ b/test/built-ins/Promise/resolve-non-obj-deferred.js @@ -13,6 +13,7 @@ info: > 25.4.1.3.2 Promise Resolve Functions 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var resolve; diff --git a/test/built-ins/Promise/resolve-non-obj-immed.js b/test/built-ins/Promise/resolve-non-obj-immed.js index 163a1938f..5f6556100 100644 --- a/test/built-ins/Promise/resolve-non-obj-immed.js +++ b/test/built-ins/Promise/resolve-non-obj-immed.js @@ -12,6 +12,7 @@ info: > 25.4.1.3.2 Promise Resolve Functions 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var promise = new Promise(function(resolve) { diff --git a/test/built-ins/Promise/resolve-non-thenable-deferred.js b/test/built-ins/Promise/resolve-non-thenable-deferred.js index a6ed85242..d3b93474a 100644 --- a/test/built-ins/Promise/resolve-non-thenable-deferred.js +++ b/test/built-ins/Promise/resolve-non-thenable-deferred.js @@ -18,6 +18,7 @@ info: > 10. Let thenAction be then.[[value]]. 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var nonThenable = { then: null }; diff --git a/test/built-ins/Promise/resolve-non-thenable-immed.js b/test/built-ins/Promise/resolve-non-thenable-immed.js index ae0236140..74161789f 100644 --- a/test/built-ins/Promise/resolve-non-thenable-immed.js +++ b/test/built-ins/Promise/resolve-non-thenable-immed.js @@ -18,6 +18,7 @@ info: > 10. Let thenAction be then.[[value]]. 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var nonThenable = { then: null }; diff --git a/test/built-ins/Promise/resolve-poisoned-then-deferred.js b/test/built-ins/Promise/resolve-poisoned-then-deferred.js index 33c2b7846..d043a5ddd 100644 --- a/test/built-ins/Promise/resolve-poisoned-then-deferred.js +++ b/test/built-ins/Promise/resolve-poisoned-then-deferred.js @@ -14,6 +14,7 @@ info: > 25.4.1.3.2 Promise Resolve Functions 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/resolve-poisoned-then-immed.js b/test/built-ins/Promise/resolve-poisoned-then-immed.js index ec806a235..90c678e49 100644 --- a/test/built-ins/Promise/resolve-poisoned-then-immed.js +++ b/test/built-ins/Promise/resolve-poisoned-then-immed.js @@ -14,6 +14,7 @@ info: > 25.4.1.3.2 Promise Resolve Functions 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/resolve-self.js b/test/built-ins/Promise/resolve-self.js index 9425d42b5..cd9d988ac 100644 --- a/test/built-ins/Promise/resolve-self.js +++ b/test/built-ins/Promise/resolve-self.js @@ -14,6 +14,7 @@ info: > 6. If SameValue(resolution, promise) is true, then a. Let selfResolutionError be a newly created TypeError object. b. Return RejectPromise(promise, selfResolutionError). +flags: [async] ---*/ var resolve; diff --git a/test/built-ins/Promise/resolve-thenable-deferred.js b/test/built-ins/Promise/resolve-thenable-deferred.js index 93dfab0e5..cd572d1a8 100644 --- a/test/built-ins/Promise/resolve-thenable-deferred.js +++ b/test/built-ins/Promise/resolve-thenable-deferred.js @@ -21,6 +21,7 @@ info: > [...] 12. Perform EnqueueJob ("PromiseJobs", PromiseResolveThenableJob, «promise, resolution, thenAction») +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/resolve-thenable-immed.js b/test/built-ins/Promise/resolve-thenable-immed.js index c39f9aff6..f0412ed71 100644 --- a/test/built-ins/Promise/resolve-thenable-immed.js +++ b/test/built-ins/Promise/resolve-thenable-immed.js @@ -20,6 +20,7 @@ info: > [...] 12. Perform EnqueueJob ("PromiseJobs", PromiseResolveThenableJob, «promise, resolution, thenAction») +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/resolve/S25.4.4.5_A2.2_T1.js b/test/built-ins/Promise/resolve/S25.4.4.5_A2.2_T1.js index 1ab3f41cd..2b471179f 100644 --- a/test/built-ins/Promise/resolve/S25.4.4.5_A2.2_T1.js +++ b/test/built-ins/Promise/resolve/S25.4.4.5_A2.2_T1.js @@ -5,6 +5,7 @@ es6id: S25.4.4.5_A2.2_T1 author: Sam Mikes description: Promise.resolve passes through an unsettled promise w/ same Constructor +flags: [async] ---*/ var resolveP1, diff --git a/test/built-ins/Promise/resolve/S25.4.4.5_A2.3_T1.js b/test/built-ins/Promise/resolve/S25.4.4.5_A2.3_T1.js index a54c21ede..3ea901fc8 100644 --- a/test/built-ins/Promise/resolve/S25.4.4.5_A2.3_T1.js +++ b/test/built-ins/Promise/resolve/S25.4.4.5_A2.3_T1.js @@ -5,6 +5,7 @@ es6id: S25.4.4.5_A2.3_T1 author: Sam Mikes description: Promise.resolve passes through an unsettled promise w/ same Constructor +flags: [async] ---*/ var rejectP1, diff --git a/test/built-ins/Promise/resolve/S25.4.4.5_A3.1_T1.js b/test/built-ins/Promise/resolve/S25.4.4.5_A3.1_T1.js index 8fbc2befb..e76d00a3d 100644 --- a/test/built-ins/Promise/resolve/S25.4.4.5_A3.1_T1.js +++ b/test/built-ins/Promise/resolve/S25.4.4.5_A3.1_T1.js @@ -8,6 +8,7 @@ es6id: S25.4.4.5_A3.1_T1 author: Sam Mikes description: Promise.resolve delegates to foreign thenable includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = []; diff --git a/test/built-ins/Promise/resolve/S25.4.4.5_A4.1_T1.js b/test/built-ins/Promise/resolve/S25.4.4.5_A4.1_T1.js index aa11bf012..f6dd29186 100644 --- a/test/built-ins/Promise/resolve/S25.4.4.5_A4.1_T1.js +++ b/test/built-ins/Promise/resolve/S25.4.4.5_A4.1_T1.js @@ -7,6 +7,7 @@ info: > es6id: S25.4.4.5_A3.1_T1 author: Sam Mikes description: self-resolved Promise throws TypeError +flags: [async] ---*/ var resolveP, diff --git a/test/built-ins/Promise/resolve/S25.Promise_resolve_foreign_thenable_1.js b/test/built-ins/Promise/resolve/S25.Promise_resolve_foreign_thenable_1.js index aa00db689..bf0f2d6d2 100644 --- a/test/built-ins/Promise/resolve/S25.Promise_resolve_foreign_thenable_1.js +++ b/test/built-ins/Promise/resolve/S25.Promise_resolve_foreign_thenable_1.js @@ -8,6 +8,7 @@ es6id: S25.4.4.5 author: Sam Mikes description: Promise.resolve delegates to foreign thenable includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = []; diff --git a/test/built-ins/Promise/resolve/S25.Promise_resolve_foreign_thenable_2.js b/test/built-ins/Promise/resolve/S25.Promise_resolve_foreign_thenable_2.js index 074d0aaca..b4c0c3ec6 100644 --- a/test/built-ins/Promise/resolve/S25.Promise_resolve_foreign_thenable_2.js +++ b/test/built-ins/Promise/resolve/S25.Promise_resolve_foreign_thenable_2.js @@ -8,6 +8,7 @@ es6id: S25.4.4.5 author: Sam Mikes description: Promise.resolve delegates to foreign thenable includes: [PromiseHelper.js] +flags: [async] ---*/ var sequence = []; diff --git a/test/built-ins/Promise/resolve/arg-non-thenable.js b/test/built-ins/Promise/resolve/arg-non-thenable.js index 2aa032efa..12d7beae6 100644 --- a/test/built-ins/Promise/resolve/arg-non-thenable.js +++ b/test/built-ins/Promise/resolve/arg-non-thenable.js @@ -18,6 +18,7 @@ info: > 12. Perform EnqueueJob ("PromiseJobs", PromiseResolveThenableJob, «promise, resolution, thenAction») 13. Return undefined. +flags: [async] ---*/ var nonThenable = { diff --git a/test/built-ins/Promise/resolve/arg-poisoned-then.js b/test/built-ins/Promise/resolve/arg-poisoned-then.js index 085e1455a..456431457 100644 --- a/test/built-ins/Promise/resolve/arg-poisoned-then.js +++ b/test/built-ins/Promise/resolve/arg-poisoned-then.js @@ -16,6 +16,7 @@ info: > 8. Let then be Get(resolution, "then"). 9. If then is an abrupt completion, then a. Return RejectPromise(promise, then.[[value]]). +flags: [async] ---*/ var poisonedThen = {}; diff --git a/test/built-ins/Promise/resolve/resolve-non-obj.js b/test/built-ins/Promise/resolve/resolve-non-obj.js index 9a99e4d1f..5ec758cf3 100644 --- a/test/built-ins/Promise/resolve/resolve-non-obj.js +++ b/test/built-ins/Promise/resolve/resolve-non-obj.js @@ -13,6 +13,7 @@ info: > [...] 7. If Type(resolution) is not Object, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ Promise.resolve(23).then(function(value) { diff --git a/test/built-ins/Promise/resolve/resolve-non-thenable.js b/test/built-ins/Promise/resolve/resolve-non-thenable.js index 446f0f992..3b6ed6b93 100644 --- a/test/built-ins/Promise/resolve/resolve-non-thenable.js +++ b/test/built-ins/Promise/resolve/resolve-non-thenable.js @@ -17,6 +17,7 @@ info: > 10. Let thenAction be then.[[value]]. 11. If IsCallable(thenAction) is false, then a. Return FulfillPromise(promise, resolution). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/resolve/resolve-poisoned-then.js b/test/built-ins/Promise/resolve/resolve-poisoned-then.js index 8ada16e33..28983a300 100644 --- a/test/built-ins/Promise/resolve/resolve-poisoned-then.js +++ b/test/built-ins/Promise/resolve/resolve-poisoned-then.js @@ -14,6 +14,7 @@ info: > 8. Let then be Get(resolution, "then"). 9. If then is an abrupt completion, then a. Return RejectPromise(promise, then.[[value]]). +flags: [async] ---*/ var value = {}; diff --git a/test/built-ins/Promise/resolve/resolve-self.js b/test/built-ins/Promise/resolve/resolve-self.js index a9b9b73c4..dded4ecd9 100644 --- a/test/built-ins/Promise/resolve/resolve-self.js +++ b/test/built-ins/Promise/resolve/resolve-self.js @@ -17,6 +17,7 @@ info: > 6. If SameValue(resolution, promise) is true, then a. Let selfResolutionError be a newly created TypeError object. b. Return RejectPromise(promise, selfResolutionError). +flags: [async] ---*/ var resolve, reject; diff --git a/test/built-ins/Promise/resolve/resolve-thenable.js b/test/built-ins/Promise/resolve/resolve-thenable.js index 62b061b2e..a3f81944c 100644 --- a/test/built-ins/Promise/resolve/resolve-thenable.js +++ b/test/built-ins/Promise/resolve/resolve-thenable.js @@ -19,6 +19,7 @@ info: > [...] 12. Perform EnqueueJob ("PromiseJobs", PromiseResolveThenableJob, «promise, resolution, thenAction») +flags: [async] ---*/ var value = {}; diff --git a/tools/packaging/test262.py b/tools/packaging/test262.py index 1192005fc..551d6d3e0 100755 --- a/tools/packaging/test262.py +++ b/tools/packaging/test262.py @@ -309,7 +309,7 @@ class TestCase(object): return 'raw' in self.testRecord def IsAsyncTest(self): - return '$DONE' in self.test + return 'async' in self.testRecord def GetIncludeList(self): if self.testRecord.get('includes'): |