summaryrefslogtreecommitdiffstats
path: root/devtools/client/webaudioeditor/test/browser_webaudio-actor-simple.js
diff options
context:
space:
mode:
Diffstat (limited to 'devtools/client/webaudioeditor/test/browser_webaudio-actor-simple.js')
-rw-r--r--devtools/client/webaudioeditor/test/browser_webaudio-actor-simple.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/devtools/client/webaudioeditor/test/browser_webaudio-actor-simple.js b/devtools/client/webaudioeditor/test/browser_webaudio-actor-simple.js
new file mode 100644
index 000000000..28ff75651
--- /dev/null
+++ b/devtools/client/webaudioeditor/test/browser_webaudio-actor-simple.js
@@ -0,0 +1,30 @@
+/* Any copyright is dedicated to the Public Domain.
+ http://creativecommons.org/publicdomain/zero/1.0/ */
+
+/**
+ * Test basic communication of Web Audio actor
+ */
+
+add_task(function* () {
+ let { target, front } = yield initBackend(SIMPLE_CONTEXT_URL);
+ let [_, __, [destNode, oscNode, gainNode], [connect1, connect2]] = yield Promise.all([
+ front.setup({ reload: true }),
+ once(front, "start-context"),
+ get3(front, "create-node"),
+ get2(front, "connect-node")
+ ]);
+
+ is(destNode.type, "AudioDestinationNode", "WebAudioActor:create-node returns AudioNodeActor for AudioDestination");
+ is(oscNode.type, "OscillatorNode", "WebAudioActor:create-node returns AudioNodeActor");
+ is(gainNode.type, "GainNode", "WebAudioActor:create-node returns AudioNodeActor");
+
+ let { source, dest } = connect1;
+ is(source.actorID, oscNode.actorID, "WebAudioActor:connect-node returns correct actor with ID on source (osc->gain)");
+ is(dest.actorID, gainNode.actorID, "WebAudioActor:connect-node returns correct actor with ID on dest (osc->gain)");
+
+ ({ source, dest } = connect2);
+ is(source.actorID, gainNode.actorID, "WebAudioActor:connect-node returns correct actor with ID on source (gain->dest)");
+ is(dest.actorID, destNode.actorID, "WebAudioActor:connect-node returns correct actor with ID on dest (gain->dest)");
+
+ yield removeTab(target.tab);
+});