| // Copyright 2017 the V8 project authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| let {session, contextGroup, Protocol} = InspectorTest.start('Tests console.context'); |
| |
| InspectorTest.runAsyncTestSuite([ |
| async function testConsoleContextMethod() { |
| InspectorTest.log('console.context description:'); |
| var {result:{result}} = await Protocol.Runtime.evaluate({ |
| expression: 'console.context'}); |
| InspectorTest.logMessage(result); |
| |
| InspectorTest.log('console.context() methods:'); |
| var {result:{result:{value}}} = await Protocol.Runtime.evaluate({ |
| expression: 'Object.keys(console.context())', returnByValue: true}); |
| InspectorTest.logMessage(value); |
| }, |
| |
| async function testDefaultConsoleContext() { |
| await Protocol.Runtime.enable(); |
| Protocol.Runtime.evaluate({expression: 'console.log(239)'}); |
| var {params:{context}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.log(context); |
| Protocol.Runtime.evaluate({expression: 'console.info(239)'}); |
| var {params:{context}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.log(context); |
| Protocol.Runtime.evaluate({expression: 'console.debug(239)'}); |
| var {params:{context}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.log(context); |
| await Protocol.Runtime.evaluate({expression: 'console.clear()'}); |
| await Protocol.Runtime.disable(); |
| }, |
| |
| async function testAnonymousConsoleContext() { |
| await Protocol.Runtime.enable(); |
| Protocol.Runtime.evaluate({expression: 'console.context().log(239)'}); |
| var {params:{context}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.log(context); |
| Protocol.Runtime.evaluate({expression: 'console.context().info(239)'}); |
| var {params:{context}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.log(context); |
| Protocol.Runtime.evaluate({expression: 'console.context().debug(239)'}); |
| var {params:{context}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.log(context); |
| await Protocol.Runtime.evaluate({expression: 'console.context().clear()'}); |
| await Protocol.Runtime.disable(); |
| }, |
| |
| async function testNamedConsoleContext() { |
| await Protocol.Runtime.enable(); |
| Protocol.Runtime.evaluate({expression: ` |
| var context = console.context('named-context'); |
| context.log(239); |
| context.info(239); |
| context.debug(239); |
| `}); |
| var {params:{context}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.log(context); |
| var {params:{context}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.log(context); |
| var {params:{context}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.log(context); |
| await Protocol.Runtime.evaluate({expression: 'console.clear()'}); |
| await Protocol.Runtime.disable(); |
| }, |
| |
| async function testTwoConsoleContextsWithTheSameName() { |
| await Protocol.Runtime.enable(); |
| Protocol.Runtime.evaluate({expression: 'console.context(\'named-context\').log(239)'}); |
| var {params:{context}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.log(context); |
| Protocol.Runtime.evaluate({expression: 'console.context(\'named-context\').log(239)'}); |
| var {params:{context}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.log(context); |
| await Protocol.Runtime.evaluate({expression: 'console.clear()'}); |
| await Protocol.Runtime.disable(); |
| }, |
| |
| async function testConsoleCountInDifferentConsoleContexts() { |
| await Protocol.Runtime.enable(); |
| Protocol.Runtime.evaluate({expression: 'console.context(\'named-context\').count(239)'}); |
| var {params:{args}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.logMessage(args); |
| Protocol.Runtime.evaluate({expression: 'console.context(\'named-context\').count(239)'}); |
| var {params:{args}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.logMessage(args); |
| await Protocol.Runtime.evaluate({expression: 'console.clear()'}); |
| await Protocol.Runtime.disable(); |
| }, |
| |
| async function testConsoleCountForNamedConsoleContext() { |
| await Protocol.Runtime.enable(); |
| Protocol.Runtime.evaluate({expression: ` |
| var context = console.context('named-context'); |
| context.count(239); |
| context.count(239); |
| `}); |
| var {params:{args}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.logMessage(args); |
| var {params:{args}} = await Protocol.Runtime.onceConsoleAPICalled(); |
| InspectorTest.logMessage(args); |
| await Protocol.Runtime.evaluate({expression: 'console.clear()'}); |
| await Protocol.Runtime.disable(); |
| } |
| ]); |