4 <script src="../fast/js/resources/js-test-pre.js"></script>
8 description("Basic tests for AudioBuffer.");
10 var sampleRate = 44100.0
11 var lengthInSeconds = 2;
12 var numberOfChannels = 4;
14 var context = new webkitAudioContext();
15 var buffer = context.createBuffer(numberOfChannels, sampleRate * lengthInSeconds, sampleRate);
17 if (buffer.sampleRate === sampleRate)
18 testPassed("sampleRate has been set correctly.");
20 testFailed("sampleRate should be set correctly.");
22 if (buffer.length === sampleRate * lengthInSeconds)
23 testPassed("length has been set correctly.");
25 testFailed("length should be set correctly");
27 if (buffer.duration === lengthInSeconds)
28 testPassed("duration has been set correctly.");
30 testFailed("duration should be set correctly.");
32 if (buffer.numberOfChannels === numberOfChannels)
33 testPassed("numberOfChannels has been set correctly.");
35 testFailed("numberOfChannels should be set correctly.");
37 for (var index = 0; index < buffer.numberOfChannels; ++index) {
38 if (buffer.getChannelData(index) instanceof window.Float32Array)
39 testPassed("getChannelData(" + index + ") returns a Float32Array object.");
41 testFailed("getChannelData(" + index + ") should return a Float32Array object.");
45 buffer.getChannelData(buffer.numberOfChannels);
46 testFailed("Exception should be thrown when index is not less than numberOfChannels.");
48 testPassed("Exception has been thrown correctly when index is not less than numberOfChannels.");
53 <script src="../fast/js/resources/js-test-post.js"></script>