Tests that Runtime.callFunctionOn works with awaitPromise flag. Running test: prepareTestSuite Running test: testArguments { id : <messageId> result : { result : { type : string value : undefined|NaN|[object Object]|[object Object] } } } Running test: testUnserializableArguments { id : <messageId> result : { result : { type : string value : true|true|true|true|bigint } } } Running test: testComplexArguments { id : <messageId> result : { result : { type : string value : bar } } } Running test: testSyntaxErrorInFunction { id : <messageId> result : { exceptionDetails : { columnNumber : 2 exception : { className : SyntaxError description : SyntaxError: Unexpected token '}' objectId : <objectId> subtype : error type : object } exceptionId : <exceptionId> lineNumber : 1 scriptId : <scriptId> text : Uncaught } result : { className : SyntaxError description : SyntaxError: Unexpected token '}' objectId : <objectId> subtype : error type : object } } } Running test: testExceptionInFunctionExpression { id : <messageId> result : { exceptionDetails : { columnNumber : 15 exception : { className : Error description : Error at <anonymous>:1:22 at <anonymous>:1:36 objectId : <objectId> subtype : error type : object } exceptionId : <exceptionId> lineNumber : 0 scriptId : <scriptId> stackTrace : { callFrames : [ [0] : { columnNumber : 21 functionName : lineNumber : 0 scriptId : <scriptId> url : } [1] : { columnNumber : 35 functionName : lineNumber : 0 scriptId : <scriptId> url : } ] } text : Uncaught } result : { className : Error description : Error at <anonymous>:1:22 at <anonymous>:1:36 objectId : <objectId> subtype : error type : object } } } Running test: testFunctionReturnNotPromise { id : <messageId> result : { result : { description : 239 type : number value : 239 } } } Running test: testFunctionReturnResolvedPromiseReturnByValue { id : <messageId> result : { result : { type : object value : { a : 3 } } } } Running test: testFunctionReturnResolvedPromiseWithPreview { id : <messageId> result : { result : { className : Object description : Object objectId : <objectId> preview : { description : Object overflow : false properties : [ [0] : { name : a type : number value : 3 } ] type : object } type : object } } } Running test: testFunctionReturnRejectedPromise { id : <messageId> result : { exceptionDetails : { columnNumber : 0 exception : { className : Object description : Object objectId : <objectId> preview : { description : Object overflow : false properties : [ [0] : { name : a type : number value : 3 } ] type : object } type : object } exceptionId : <exceptionId> lineNumber : 0 text : Uncaught (in promise) } result : { type : object value : { a : 3 } } } } Running test: testEvaluateOnExecutionContext { id : <messageId> result : { result : { description : 70 type : number value : 70 } } } Running test: testPassingBothObjectIdAndExecutionContextId { error : { code : -32000 message : ObjectId must not be specified together with executionContextId } id : <messageId> } Running test: testThrowNumber { id : <messageId> result : { exceptionDetails : { columnNumber : 10 exception : { description : 100500 type : number value : 100500 } exceptionId : <exceptionId> lineNumber : 0 scriptId : <scriptId> stackTrace : { callFrames : [ [0] : { columnNumber : 10 functionName : lineNumber : 0 scriptId : <scriptId> url : } ] } text : Uncaught } result : { description : 100500 type : number value : 100500 } } } Running test: testAsyncFunctionWithUnknownReferenceReturnByValue { id : <messageId> result : { exceptionDetails : { columnNumber : 30 exception : { className : ReferenceError description : ReferenceError: does_not_exist is not defined at <anonymous>:1:30 objectId : <objectId> subtype : error type : object } exceptionId : <exceptionId> lineNumber : 1 scriptId : <scriptId> stackTrace : { callFrames : [ [0] : { columnNumber : 29 functionName : lineNumber : 0 scriptId : <scriptId> url : } ] } text : Uncaught (in promise) ReferenceError: does_not_exist is not defined } result : { type : object value : { } } } }