chromium/third_party/blink/web_tests/inspector-protocol/sessions/runtime-evaluate.js

(async function(/** @type {import('test_runner').TestRunner} */ testRunner) {
  testRunner.log('Tests that multiple sessions observe each other through evaluating.');
  var page = await testRunner.createPage();
  var session1 = await page.createSession();
  var session2 = await page.createSession();
  testRunner.log('window.foo=42 in session1');
  testRunner.log(await session1.protocol.Runtime.evaluate({expression: 'window.foo = 42'}));
  testRunner.log('window.foo in session2');
  testRunner.log(await session2.protocol.Runtime.evaluate({expression: 'window.foo', returnByValue: true}));
  var session3 = await page.createSession();
  testRunner.log('window.foo in session3');
  testRunner.log(await session3.protocol.Runtime.evaluate({expression: 'window.foo', returnByValue: true}));
  testRunner.completeTest();
})