| Index: third_party/WebKit/LayoutTests/webaudio/resources/audiobuffersource-testing.js
|
| diff --git a/third_party/WebKit/LayoutTests/webaudio/resources/audiobuffersource-testing.js b/third_party/WebKit/LayoutTests/webaudio/resources/audiobuffersource-testing.js
|
| index dd48ac0c95b1431f838961406810e53c9b5b384f..5bf64a128da087b71d1e1342b92564f0a7f7d5ec 100644
|
| --- a/third_party/WebKit/LayoutTests/webaudio/resources/audiobuffersource-testing.js
|
| +++ b/third_party/WebKit/LayoutTests/webaudio/resources/audiobuffersource-testing.js
|
| @@ -9,13 +9,12 @@ function createTestBuffer(context, sampleFrameLength) {
|
| return audioBuffer;
|
| }
|
|
|
| -function checkSingleTest(renderedBuffer, i) {
|
| +function checkSingleTest(renderedBuffer, i, should) {
|
| var renderedData = renderedBuffer.getChannelData(0);
|
| var offsetFrame = i * testSpacingFrames;
|
|
|
| var test = tests[i];
|
| var expected = test.expected;
|
| - var success = true;
|
| var description;
|
|
|
| if (test.description) {
|
| @@ -37,47 +36,21 @@ function checkSingleTest(renderedBuffer, i) {
|
| framesToTest = test.durationFrames;
|
|
|
| // Verify that the output matches
|
| - for (var j = 0; j < framesToTest; ++j) {
|
| - if (expected[j] != renderedData[offsetFrame + j]) {
|
| - // Copy from Float32Array to regular JavaScript array for error message.
|
| - var renderedArray = new Array();
|
| - for (var j = 0; j < test.renderFrames; ++j)
|
| - renderedArray[j] = renderedData[offsetFrame + j];
|
| -
|
| - var s = description + ": expected: " + expected + " actual: " + renderedArray;
|
| - success = false;
|
| - Should(s, success).beEqualTo(true);
|
| - break;
|
| - }
|
| - }
|
| + var prefix = "Case " + i + ": ";
|
| + should(renderedData.slice(offsetFrame, offsetFrame + framesToTest),
|
| + prefix + description)
|
| + .beEqualToArray(expected);
|
|
|
| // Verify that we get all zeroes after the buffer (or duration) has passed.
|
| - for (var j = framesToTest; j < testSpacingFrames; ++j) {
|
| - if (renderedData[offsetFrame + j]) {
|
| - // Copy from Float32Array to regular JavaScript array for error message.
|
| - var renderedArray = new Array();
|
| - for (var j = framesToTest; j < testSpacingFrames; ++j)
|
| - renderedArray[j - framesToTest] = renderedData[offsetFrame + j];
|
| -
|
| - var s = description + ": expected: all zeroes actual: " + renderedArray;
|
| - success = false;
|
| - Should(s, success).beEqualTo(true);
|
| - break;
|
| - }
|
| - }
|
| -
|
| - Should("", success)
|
| - .summarize(description, description);
|
| -
|
| - return success;
|
| + should(renderedData.slice(offsetFrame + framesToTest, offsetFrame +
|
| + testSpacingFrames),
|
| + prefix + description + ": tail")
|
| + .beConstantValueOf(0);
|
| }
|
|
|
| -function checkAllTests(event) {
|
| - var renderedBuffer = event.renderedBuffer;
|
| +function checkAllTests(renderedBuffer, should) {
|
| for (var i = 0; i < tests.length; ++i)
|
| - checkSingleTest(renderedBuffer, i);
|
| -
|
| - finishJSTest();
|
| + checkSingleTest(renderedBuffer, i, should);
|
| }
|
|
|
|
|
|
|