OLD | NEW |
| (Empty) |
1 <!DOCTYPE html> | |
2 <html> | |
3 | |
4 <head> | |
5 <script src="../resources/js-test.js"></script> | |
6 <script src="resources/compatibility.js"></script> | |
7 <script src="resources/audit-util.js"></script> | |
8 <script src="resources/audio-testing.js"></script> | |
9 </head> | |
10 | |
11 <body> | |
12 <script> | |
13 description("Basic tests for ChannelMerger."); | |
14 window.jsTestIsAsync = true; | |
15 | |
16 var audit = Audit.createTaskRunner(); | |
17 | |
18 // Task: Checking constraints in ChannelMergerNode. | |
19 audit.defineTask('exceptions-channels', function (done) { | |
20 var context = new OfflineAudioContext(2, 128, 44100); | |
21 var merger; | |
22 | |
23 Should('context.createChannelMerger()', function () { | |
24 merger = context.createChannelMerger(); | |
25 }).notThrow(); | |
26 | |
27 Should('context.createChannelMerger(0)', function () { | |
28 merger = context.createChannelMerger(0); | |
29 }).throw('IndexSizeError'); | |
30 | |
31 Should('context.createChannelMerger(32)', function () { | |
32 merger = context.createChannelMerger(32); | |
33 }).notThrow(); | |
34 | |
35 // Can't create a channel merger with 33 channels because the audio | |
36 // context has a 32-channel-limit in Chrome. | |
37 Should('context.createChannelMerger(33)', function () { | |
38 merger = context.createChannelMerger(33); | |
39 }).throw('IndexSizeError'); | |
40 | |
41 done(); | |
42 }); | |
43 | |
44 // Task: checking the channel-related properties have the correct value and | |
45 // can't be changed. | |
46 audit.defineTask('exceptions-properties', function (done) { | |
47 var context = new OfflineAudioContext(2, 128, 44100); | |
48 var merger = context.createChannelMerger(); | |
49 | |
50 Should('merger.channelCount', merger.channelCount).beEqualTo(1); | |
51 | |
52 Should('merger.channelCount = 3', function () { | |
53 merger.channelCount = 3; | |
54 }).throw('InvalidStateError'); | |
55 | |
56 Should('merger.channelCountMode', merger.channelCountMode).beEqualTo('expl
icit'); | |
57 | |
58 Should('merger.channelCountMode = "max"', function () { | |
59 merger.channelCountMode = 'max'; | |
60 }).throw('InvalidStateError'); | |
61 | |
62 done(); | |
63 }); | |
64 | |
65 audit.defineTask('finish', function (done) { | |
66 finishJSTest(); | |
67 done(); | |
68 }); | |
69 | |
70 audit.runTasks( | |
71 'exceptions-channels', | |
72 'exceptions-properties', | |
73 'finish' | |
74 ); | |
75 | |
76 successfullyParsed = true; | |
77 </script> | |
78 </body> | |
79 | |
80 </html> | |
OLD | NEW |