| Index: LayoutTests/http/tests/resources/testharness-helpers.js
|
| diff --git a/LayoutTests/http/tests/resources/testharness-helpers.js b/LayoutTests/http/tests/resources/testharness-helpers.js
|
| index 4d7af1ff9ca77c85696f35368ff3a7a1c4b2480b..b71b2494ec6d427d2608a506df2740bc77b23c45 100644
|
| --- a/LayoutTests/http/tests/resources/testharness-helpers.js
|
| +++ b/LayoutTests/http/tests/resources/testharness-helpers.js
|
| @@ -161,3 +161,23 @@ function stringifyDOMObject(object)
|
| }
|
| return JSON.stringify(deepCopy(object));
|
| }
|
| +
|
| +(function() {
|
| + var promise_tests = Promise.resolve();
|
| + // Helper function to run promise tests one after the other.
|
| + // TODO(ortuno): Remove once https://github.com/w3c/testharness.js/pull/115/files
|
| + // gets through.
|
| + function sequential_promise_test(func, name) {
|
| + var test = async_test(name);
|
| + promise_tests = promise_tests.then(function() {
|
| + return test.step(func, test, test);
|
| + }).then(function() {
|
| + test.done();
|
| + }).catch(test.step_func(function(value) {
|
| + // step_func catches the error again so the error doesn't propagate.
|
| + throw value;
|
| + }));
|
| + }
|
| +
|
| + self.sequential_promise_test = sequential_promise_test;
|
| +})();
|
|
|