summaryrefslogtreecommitdiffstats
path: root/dom/media/test/can_play_type_wave.js
diff options
context:
space:
mode:
Diffstat (limited to 'dom/media/test/can_play_type_wave.js')
-rw-r--r--dom/media/test/can_play_type_wave.js30
1 files changed, 30 insertions, 0 deletions
diff --git a/dom/media/test/can_play_type_wave.js b/dom/media/test/can_play_type_wave.js
new file mode 100644
index 0000000000..a5e087aa40
--- /dev/null
+++ b/dom/media/test/can_play_type_wave.js
@@ -0,0 +1,30 @@
+function check_wave(v, enabled) {
+ function check(type, expected) {
+ is(v.canPlayType(type), enabled ? expected : "", type);
+ }
+
+ // Wave types
+ check("audio/wave", "maybe");
+ check("audio/wav", "maybe");
+ check("audio/x-wav", "maybe");
+ check("audio/x-pn-wav", "maybe");
+
+ // Supported Wave codecs
+ check("audio/wave; codecs=1", "probably");
+ check("audio/wave; codecs=3", "probably");
+ check("audio/wave; codecs=6", "probably");
+ check("audio/wave; codecs=7", "probably");
+ // "no codecs" should be supported, I guess
+ check("audio/wave; codecs=", "maybe");
+ check('audio/wave; codecs=""', "maybe");
+
+ // Unsupported Wave codecs
+ check("audio/wave; codecs=0", "");
+ check("audio/wave; codecs=2", "");
+ check("audio/wave; codecs=xyz,1", "");
+ check("audio/wave; codecs=1,xyz", "");
+ check('audio/wave; codecs="xyz, 1"', "");
+ // empty codec names
+ check("audio/wave; codecs=,", "");
+ check('audio/wave; codecs="0, 1,"', "");
+}