diff options
Diffstat (limited to 'ipc/glue/test/browser/browser_audio_telemetry_content.js')
-rw-r--r-- | ipc/glue/test/browser/browser_audio_telemetry_content.js | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/ipc/glue/test/browser/browser_audio_telemetry_content.js b/ipc/glue/test/browser/browser_audio_telemetry_content.js new file mode 100644 index 0000000000..89f5126794 --- /dev/null +++ b/ipc/glue/test/browser/browser_audio_telemetry_content.js @@ -0,0 +1,39 @@ +/* Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/publicdomain/zero/1.0/ */ + +"use strict"; + +/* import-globals-from head-telemetry.js */ + +Services.scriptloader.loadSubScript( + "chrome://mochitests/content/browser/ipc/glue/test/browser/head-telemetry.js", + this +); + +add_setup(async function testNoTelemetry() { + await Telemetry.clearScalars(); + await SpecialPowers.pushPrefEnv({ + set: [["media.allow-audio-non-utility", true]], + }); +}); + +add_task(async function testAudioDecodingInContent() { + await runTest({ expectUtility: false, expectRDD: false }); +}); + +add_task(async function testContentTelemetry() { + const codecs = ["vorbis", "mp3", "aac", "flac"]; + const extraKey = getExtraKey({ + rddPref: false, + utilityPref: false, + allowNonUtility: true, + }); + await verifyTelemetryForProcess("tab", codecs, extraKey); + + const platform = Services.appinfo.OS; + for (let exp of utilityPerCodecs[platform]) { + await verifyNoTelemetryForProcess(exp.process, exp.codecs, extraKey); + } + + await verifyNoTelemetryForProcess("rdd", codecs, extraKey); +}); |