From 5f8de423f190bbb79a62f804151bc24824fa32d8 Mon Sep 17 00:00:00 2001 From: "Matt A. Tobin" Date: Fri, 2 Feb 2018 04:16:08 -0500 Subject: Add m-esr52 at 52.6.0 --- .../test/browser_audionode-actor-get-params-02.js | 52 ++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 devtools/client/webaudioeditor/test/browser_audionode-actor-get-params-02.js (limited to 'devtools/client/webaudioeditor/test/browser_audionode-actor-get-params-02.js') diff --git a/devtools/client/webaudioeditor/test/browser_audionode-actor-get-params-02.js b/devtools/client/webaudioeditor/test/browser_audionode-actor-get-params-02.js new file mode 100644 index 000000000..8d60a5e4d --- /dev/null +++ b/devtools/client/webaudioeditor/test/browser_audionode-actor-get-params-02.js @@ -0,0 +1,52 @@ +/* Any copyright is dedicated to the Public Domain. + http://creativecommons.org/publicdomain/zero/1.0/ */ + +/** + * Tests that default properties are returned with the correct type + * from the AudioNode actors. + */ + +add_task(function* () { + let { target, front } = yield initBackend(SIMPLE_NODES_URL); + let [_, nodes] = yield Promise.all([ + front.setup({ reload: true }), + getN(front, "create-node", 15) + ]); + + yield loadFrameScripts(); + + let allParams = yield Promise.all(nodes.map(node => node.getParams())); + let types = [ + "AudioDestinationNode", "AudioBufferSourceNode", "ScriptProcessorNode", + "AnalyserNode", "GainNode", "DelayNode", "BiquadFilterNode", "WaveShaperNode", + "PannerNode", "ConvolverNode", "ChannelSplitterNode", "ChannelMergerNode", + "DynamicsCompressorNode", "OscillatorNode", "StereoPannerNode" + ]; + + let defaults = yield Promise.all(types.map(type => nodeDefaultValues(type))); + + info(JSON.stringify(defaults)); + + allParams.forEach((params, i) => { + compare(params, defaults[i], types[i]); + }); + + yield removeTab(target.tab); +}); + +function compare(actual, expected, type) { + actual.forEach(({ value, param }) => { + value = getGripValue(value); + if (typeof expected[param] === "function") { + ok(expected[param](value), type + " has a passing value for " + param); + } + else { + is(value, expected[param], type + " has correct default value and type for " + param); + } + }); + + info(Object.keys(expected).join(",") + " - " + JSON.stringify(expected)); + + is(actual.length, Object.keys(expected).length, + type + " has correct amount of properties."); +} -- cgit v1.2.3