| <!DOCTYPE html> |
| <html> |
| <body> |
| <script src="../resources/js-test.js"></script> |
| <script> |
| description("Tests the AudioProcessingEvent constructor"); |
| |
| shouldThrowErrorName("event = new AudioProcessingEvent;", "TypeError"); |
| shouldThrowErrorName("event = new AudioProcessingEvent('foo');", "TypeError"); |
| |
| let context = new AudioContext; |
| shouldNotThrow("iBuffer = context.createBuffer(3, 200, 47000);"); |
| shouldNotThrow("oBuffer = context.createBuffer(2, 100, 46000);"); |
| shouldNotThrow("wrongBuffer = context.createBufferSource();"); |
| |
| shouldThrowErrorName("event = new AudioProcessingEvent('foo', { inputBuffer: iBuffer, outputBuffer: oBuffer });", "TypeError"); |
| shouldThrowErrorName("event = new AudioProcessingEvent('foo', { playbackTime: 5, inputBuffer: iBuffer });", "TypeError"); |
| shouldThrowErrorName("event = new AudioProcessingEvent('foo', { playbackTime: 5, outputBuffer: oBuffer });", "TypeError"); |
| shouldThrowErrorName("event = new AudioProcessingEvent('foo', { playbackTime: 5, inputBuffer: null, outputBuffer: oBuffer });", "TypeError"); |
| shouldThrowErrorName("event = new AudioProcessingEvent('foo', { playbackTime: 5, inputBuffer: iBuffer, outputBuffer: null });", "TypeError"); |
| shouldThrowErrorName("event = new AudioProcessingEvent('foo', { playbackTime: 5, inputBuffer: wrongBuffer, outputBuffer: oBuffer });", "TypeError"); |
| shouldThrowErrorName("event = new AudioProcessingEvent('foo', { playbackTime: 5, inputBuffer: iBuffer, outputBuffer: wrongBuffer });", "TypeError"); |
| |
| shouldNotThrow("event = new AudioProcessingEvent('foo', { playbackTime: 5, inputBuffer: iBuffer, outputBuffer: oBuffer, bubbles: true });"); |
| shouldBeEqualToString("event.type", "foo"); |
| shouldBeTrue("event.bubbles"); |
| shouldBeFalse("event.cancelable"); |
| shouldBeFalse("event.composed"); |
| shouldBeFalse("event.isTrusted"); |
| shouldBe("event.playbackTime", "5"); |
| shouldBe("event.inputBuffer.length", "iBuffer.length"); |
| shouldBe("event.inputBuffer.duration", "iBuffer.duration"); |
| shouldBe("event.inputBuffer.sampleRate", "iBuffer.sampleRate"); |
| shouldBe("event.outputBuffer.length", "oBuffer.length"); |
| shouldBe("event.outputBuffer.duration", "oBuffer.duration"); |
| shouldBe("event.outputBuffer.sampleRate", "oBuffer.sampleRate"); |
| |
| </script> |
| </body> |
| </html> |