| OLD | NEW |
| 1 <!doctype html> | 1 <!DOCTYPE html> |
| 2 <html> | 2 <html> |
| 3 <head> | 3 <head> |
| 4 <title>Test Onended Event Listener</title> | 4 <title> |
| 5 Test Onended Event Listener |
| 6 </title> |
| 5 <script src="../../resources/testharness.js"></script> | 7 <script src="../../resources/testharness.js"></script> |
| 6 <script src="../../resources/testharnessreport.js"></script> | 8 <script src="../../resources/testharnessreport.js"></script> |
| 7 <script src="../resources/audit-util.js"></script> | 9 <script src="../resources/audit-util.js"></script> |
| 8 <script src="../resources/audit.js"></script> | 10 <script src="../resources/audit.js"></script> |
| 9 </head> | 11 </head> |
| 12 <body> |
| 13 <script id="layout-test-code"> |
| 14 let sampleRate = 44100; |
| 15 let renderLengthSeconds = 1; |
| 16 let renderLengthFrames = renderLengthSeconds * sampleRate; |
| 10 | 17 |
| 11 <body> | 18 // Length of the source buffer. Anything less than the render length is |
| 12 <script> | 19 // fine. |
| 20 let sourceBufferLengthFrames = renderLengthFrames / 8; |
| 21 // When to stop the oscillator. Anything less than the render time is |
| 22 // fine. |
| 23 let stopTime = renderLengthSeconds / 8; |
| 13 | 24 |
| 14 var sampleRate = 44100; | 25 let audit = Audit.createTaskRunner(); |
| 15 var renderLengthSeconds = 1; | |
| 16 var renderLengthFrames = renderLengthSeconds * sampleRate; | |
| 17 | 26 |
| 18 // Length of the source buffer. Anything less than the render length is f
ine. | 27 audit.define('absn-set-onended', (task, should) => { |
| 19 var sourceBufferLengthFrames = renderLengthFrames / 8; | 28 // Test that the onended event for an AudioBufferSourceNode is fired |
| 20 // When to stop the oscillator. Anything less than the render time is fin
e. | 29 // when it is set directly. |
| 21 var stopTime = renderLengthSeconds / 8; | 30 let context = |
| 22 | 31 new OfflineAudioContext(1, renderLengthFrames, sampleRate); |
| 23 var audit = Audit.createTaskRunner(); | 32 let buffer = context.createBuffer( |
| 24 | 33 1, sourceBufferLengthFrames, context.sampleRate); |
| 25 audit.define("absn-set-onended", (task, should) => { | 34 let source = context.createBufferSource(); |
| 26 // Test that the onended event for an AudioBufferSourceNode is fired whe
n it is set | |
| 27 // directly. | |
| 28 var context = new OfflineAudioContext(1, renderLengthFrames, sampleRate)
; | |
| 29 var buffer = context.createBuffer(1, sourceBufferLengthFrames, context.s
ampleRate); | |
| 30 var source = context.createBufferSource(); | |
| 31 source.buffer = buffer; | 35 source.buffer = buffer; |
| 32 source.connect(context.destination); | 36 source.connect(context.destination); |
| 33 source.onended = function (e) { | 37 source.onended = function(e) { |
| 34 should(true, "AudioBufferSource.onended called when ended set directly
") | 38 should( |
| 35 .beEqualTo(true); | 39 true, 'AudioBufferSource.onended called when ended set directly') |
| 40 .beEqualTo(true); |
| 36 }; | 41 }; |
| 37 source.start(); | 42 source.start(); |
| 38 context.startRendering().then(() => task.done()); | 43 context.startRendering().then(() => task.done()); |
| 39 }); | 44 }); |
| 40 | 45 |
| 41 audit.define("absn-add-listener", (task, should) => { | 46 audit.define('absn-add-listener', (task, should) => { |
| 42 // Test that the onended event for an AudioBufferSourceNode is fired whe
n | 47 // Test that the onended event for an AudioBufferSourceNode is fired |
| 43 // addEventListener is used to set the handler. | 48 // when addEventListener is used to set the handler. |
| 44 var context = new OfflineAudioContext(1, renderLengthFrames, | 49 let context = |
| 45 sampleRate); | 50 new OfflineAudioContext(1, renderLengthFrames, sampleRate); |
| 46 var buffer = context.createBuffer(1, sourceBufferLengthFrames, | 51 let buffer = context.createBuffer( |
| 47 context.sampleRate); | 52 1, sourceBufferLengthFrames, context.sampleRate); |
| 48 var source = context.createBufferSource(); | 53 let source = context.createBufferSource(); |
| 49 source.buffer = buffer; | 54 source.buffer = buffer; |
| 50 source.connect(context.destination); | 55 source.connect(context.destination); |
| 51 source.addEventListener("ended", function (e) { | 56 source.addEventListener('ended', function(e) { |
| 52 should(true, | 57 should( |
| 53 "AudioBufferSource.onended called when using addEventListener" | 58 true, |
| 54 ) | 59 'AudioBufferSource.onended called when using addEventListener') |
| 55 .beEqualTo(true); | 60 .beEqualTo(true); |
| 56 }); | 61 }); |
| 57 source.start(); | 62 source.start(); |
| 58 context.startRendering().then(() => task.done()); | 63 context.startRendering().then(() => task.done()); |
| 59 }); | 64 }); |
| 60 | 65 |
| 61 audit.define("osc-set-onended", (task, should) => { | 66 audit.define('osc-set-onended', (task, should) => { |
| 62 // Test that the onended event for an OscillatorNode is fired when it is
set | 67 // Test that the onended event for an OscillatorNode is fired when it is |
| 63 // directly. | 68 // set directly. |
| 64 var context = new OfflineAudioContext(1, renderLengthFrames, sampleRate)
; | 69 let context = |
| 65 var source = context.createOscillator(); | 70 new OfflineAudioContext(1, renderLengthFrames, sampleRate); |
| 71 let source = context.createOscillator(); |
| 66 source.connect(context.destination); | 72 source.connect(context.destination); |
| 67 source.onended = function (e) { | 73 source.onended = function(e) { |
| 68 should(true, "Oscillator.onended called when ended set directly") | 74 should(true, 'Oscillator.onended called when ended set directly') |
| 69 .beEqualTo(true); | 75 .beEqualTo(true); |
| 70 }; | 76 }; |
| 71 source.start(); | 77 source.start(); |
| 72 source.stop(stopTime); | 78 source.stop(stopTime); |
| 73 context.startRendering().then(() => task.done()); | 79 context.startRendering().then(() => task.done()); |
| 74 }); | 80 }); |
| 75 | 81 |
| 76 audit.define("osc-add-listener", (task, should) => { | 82 audit.define('osc-add-listener', (task, should) => { |
| 77 // Test that the onended event for an OscillatorNode is fired when | 83 // Test that the onended event for an OscillatorNode is fired when |
| 78 // addEventListener is used to set the handler. | 84 // addEventListener is used to set the handler. |
| 79 var context = new OfflineAudioContext(1, renderLengthFrames, | 85 let context = |
| 80 sampleRate); | 86 new OfflineAudioContext(1, renderLengthFrames, sampleRate); |
| 81 var source = context.createOscillator(); | 87 let source = context.createOscillator(); |
| 82 source.connect(context.destination); | 88 source.connect(context.destination); |
| 83 source.addEventListener("ended", function (e) { | 89 source.addEventListener('ended', function(e) { |
| 84 should(true, | 90 should(true, 'Oscillator.onended called when using addEventListener') |
| 85 "Oscillator.onended called when using addEventListener") | 91 .beEqualTo(true); |
| 86 .beEqualTo(true); | |
| 87 }); | 92 }); |
| 88 source.start(); | 93 source.start(); |
| 89 source.stop(stopTime); | 94 source.stop(stopTime); |
| 90 context.startRendering().then(() => task.done()); | 95 context.startRendering().then(() => task.done()); |
| 91 }); | 96 }); |
| 92 | 97 |
| 93 audit.run(); | 98 audit.run(); |
| 94 </script> | 99 </script> |
| 95 </body> | 100 </body> |
| 96 </html> | 101 </html> |
| OLD | NEW |