| 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 |