diff options
Diffstat (limited to 'devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_telemetry_runtime_connected_details.js')
-rw-r--r-- | devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_telemetry_runtime_connected_details.js | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_telemetry_runtime_connected_details.js b/devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_telemetry_runtime_connected_details.js new file mode 100644 index 0000000000..808cfdcae8 --- /dev/null +++ b/devtools/client/aboutdebugging/test/browser/browser_aboutdebugging_telemetry_runtime_connected_details.js @@ -0,0 +1,69 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +/* import-globals-from helper-telemetry.js */ +Services.scriptloader.loadSubScript( + CHROME_URL_ROOT + "helper-telemetry.js", + this +); + +const REMOTE_RUNTIME_ID = "remote-runtime"; +const REMOTE_RUNTIME = "Remote Runtime"; +const REMOTE_DEVICE = "Remote Device"; + +const REMOTE_VERSION = "12.0a1"; +const REMOTE_OS = "SOME_OS"; + +/** + * Runtime connected events will log additional extras about the runtime connection that + * was established. + */ +add_task(async function () { + const mocks = new Mocks(); + + const usbClient = mocks.createUSBRuntime(REMOTE_RUNTIME_ID, { + deviceName: REMOTE_DEVICE, + name: REMOTE_RUNTIME, + shortName: REMOTE_RUNTIME, + }); + usbClient.getDeviceDescription = () => { + return { + os: REMOTE_OS, + version: REMOTE_VERSION, + }; + }; + + const { document, tab } = await openAboutDebugging(); + + mocks.emitUSBUpdate(); + await connectToRuntime(REMOTE_DEVICE, document); + const evts = readAboutDebuggingEvents().filter( + e => e.method === "runtime_connected" + ); + + is( + evts.length, + 1, + "runtime_connected event logged when connecting to remote runtime" + ); + const { + connection_type, + device_name, + runtime_name, + runtime_os, + runtime_version, + } = evts[0].extras; + is(connection_type, "usb", "Expected value for `connection_type` extra"); + is(device_name, REMOTE_DEVICE, "Expected value for `device_name` extra"); + is(runtime_name, REMOTE_RUNTIME, "Expected value for `runtime_name` extra"); + is(runtime_os, REMOTE_OS, "Expected value for `runtime_os` extra"); + is( + runtime_version, + REMOTE_VERSION, + "Expected value for `runtime_version` extra" + ); + + await removeTab(tab); +}); |