| Index: third_party/WebKit/LayoutTests/inspector-protocol/runtime/runtime-evaluate-async.js
|
| diff --git a/third_party/WebKit/LayoutTests/inspector-protocol/runtime/runtime-evaluate-async.js b/third_party/WebKit/LayoutTests/inspector-protocol/runtime/runtime-evaluate-async.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..3df947751b0186d277d863c846e47508289f7713
|
| --- /dev/null
|
| +++ b/third_party/WebKit/LayoutTests/inspector-protocol/runtime/runtime-evaluate-async.js
|
| @@ -0,0 +1,46 @@
|
| +(async function(testRunner) {
|
| + let {page, session, dp} = await testRunner.startBlank(`Tests that Runtime.evaluate works with awaitPromise flag.`);
|
| +
|
| + function dumpResult(result) {
|
| + if (result.exceptionDetails) {
|
| + result.exceptionDetails.scriptId = '';
|
| + result.exceptionDetails.exceptionId = 0;
|
| + result.exceptionDetails.exception.objectId = 0;
|
| + }
|
| + testRunner.logObject(result);
|
| + }
|
| +
|
| + await testRunner.runTestSuite([
|
| + async function testResolvedPromise() {
|
| + var result = await dp.Runtime.evaluate({ expression: 'Promise.resolve(239)', awaitPromise: true, generatePreview: true });
|
| + dumpResult(result.result);
|
| + },
|
| +
|
| + async function testRejectedPromise() {
|
| + var result = await dp.Runtime.evaluate({ expression: 'Promise.reject(239)', awaitPromise: true });
|
| + dumpResult(result.result);
|
| + },
|
| +
|
| + async function testPrimitiveValueInsteadOfPromise() {
|
| + var result = await dp.Runtime.evaluate({ expression: 'true', awaitPromise: true });
|
| + testRunner.logObject(result.error);
|
| + },
|
| +
|
| + async function testObjectInsteadOfPromise() {
|
| + var result = await dp.Runtime.evaluate({ expression: '({})', awaitPromise: true });
|
| + testRunner.logObject(result.error);
|
| + },
|
| +
|
| + async function testPendingPromise() {
|
| + var result = await dp.Runtime.evaluate({ expression: `
|
| + new Promise(resolve => setTimeout(() => resolve({ a : 239 }), 0))
|
| + `, awaitPromise: true, returnByValue: true });
|
| + dumpResult(result.result);
|
| + },
|
| +
|
| + async function testExceptionInEvaluate() {
|
| + var result = await dp.Runtime.evaluate({ expression: 'throw 239', awaitPromise: true });
|
| + dumpResult(result.result);
|
| + }
|
| + ]);
|
| +})
|
|
|