audiobuffer-getChannelData.html (2071B)
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <title> 5 Test AudioBuffer.getChannelData() Returns the Same Object 6 </title> 7 <script src="/resources/testharness.js"></script> 8 <script src="/resources/testharnessreport.js"></script> 9 <script src="/webaudio/resources/audit-util.js"></script> 10 <script src="/webaudio/resources/audit.js"></script> 11 <script src="/webaudio/resources/audioparam-testing.js"></script> 12 </head> 13 <body> 14 <script id="layout-test-code"> 15 let sampleRate = 48000; 16 let renderDuration = 0.5; 17 18 let audit = Audit.createTaskRunner(); 19 20 audit.define('buffer-eq', (task, should) => { 21 // Verify that successive calls to getChannelData return the same 22 // buffer. 23 let context = new AudioContext(); 24 let channelCount = 2; 25 let frameLength = 1000; 26 let buffer = 27 context.createBuffer(channelCount, frameLength, context.sampleRate); 28 29 for (let c = 0; c < channelCount; ++c) { 30 let a = buffer.getChannelData(c); 31 let b = buffer.getChannelData(c); 32 33 let message = 'buffer.getChannelData(' + c + ')'; 34 should(a === b, message + ' === ' + message).beEqualTo(true); 35 } 36 37 task.done(); 38 }); 39 40 audit.define('buffer-not-eq', (task, should) => { 41 let context = new AudioContext(); 42 let channelCount = 2; 43 let frameLength = 1000; 44 let buffer1 = 45 context.createBuffer(channelCount, frameLength, context.sampleRate); 46 let buffer2 = 47 context.createBuffer(channelCount, frameLength, context.sampleRate); 48 let success = true; 49 50 for (let c = 0; c < channelCount; ++c) { 51 let a = buffer1.getChannelData(c); 52 let b = buffer2.getChannelData(c); 53 54 let message = 'getChannelData(' + c + ')'; 55 should(a === b, 'buffer1.' + message + ' === buffer2.' + message) 56 .beEqualTo(false) && 57 success; 58 } 59 60 task.done(); 61 }); 62 63 audit.run(); 64 </script> 65 </body> 66 </html>