Index: third_party/WebKit/LayoutTests/webaudio/ChannelMerger/audiochannelmerger-disconnect.html |
diff --git a/third_party/WebKit/LayoutTests/webaudio/ChannelMerger/audiochannelmerger-disconnect.html b/third_party/WebKit/LayoutTests/webaudio/ChannelMerger/audiochannelmerger-disconnect.html |
index 7a7e39e2a93c5e6e053d03cb784228c8d7ab0106..f4f1c88a7234e23e0a4c296175cfb77f525543d0 100644 |
--- a/third_party/WebKit/LayoutTests/webaudio/ChannelMerger/audiochannelmerger-disconnect.html |
+++ b/third_party/WebKit/LayoutTests/webaudio/ChannelMerger/audiochannelmerger-disconnect.html |
@@ -1,75 +1,81 @@ |
<!DOCTYPE html> |
<html> |
+ <head> |
+ <title> |
+ audiochannelmerger-disconnect.html |
+ </title> |
+ <script src="../../resources/testharness.js"></script> |
+ <script src="../../resources/testharnessreport.js"></script> |
+ <script src="../resources/audit-util.js"></script> |
+ <script src="../resources/audit.js"></script> |
+ </head> |
+ <body> |
+ <script id="layout-test-code"> |
+ let renderQuantum = 128; |
-<head> |
- <script src="../../resources/testharness.js"></script> |
- <script src="../../resources/testharnessreport.js"></script> |
- <script src="../resources/audit-util.js"></script> |
- <script src="../resources/audit.js"></script> |
-</head> |
+ let numberOfChannels = 2; |
+ let sampleRate = 44100; |
+ let renderDuration = 0.5; |
+ let disconnectTime = 0.5 * renderDuration; |
-<body> |
- <script> |
+ let audit = Audit.createTaskRunner(); |
- var renderQuantum = 128; |
+ // Task: Check if the merger outputs a silent channel when an input is |
+ // disconnected. |
+ audit.define('silent-disconnect', (task, should) => { |
+ let context = new OfflineAudioContext( |
+ numberOfChannels, renderDuration * sampleRate, sampleRate); |
+ let merger = context.createChannelMerger(); |
+ let source1 = context.createBufferSource(); |
+ let source2 = context.createBufferSource(); |
- var numberOfChannels = 2; |
- var sampleRate = 44100; |
- var renderDuration = 0.5; |
- var disconnectTime = 0.5 * renderDuration; |
+ // Create and assign a constant buffer. |
+ let bufferDCOffset = createConstantBuffer(context, 1, 1); |
+ source1.buffer = source2.buffer = bufferDCOffset; |
+ source1.loop = source2.loop = true; |
- var audit = Audit.createTaskRunner(); |
+ // Connect the output of source into the 4th input of merger. The merger |
+ // should produce 6 channel output. |
+ source1.connect(merger, 0, 0); |
+ source2.connect(merger, 0, 1); |
+ merger.connect(context.destination); |
+ source1.start(); |
+ source2.start(); |
- // Task: Check if the merger outputs a silent channel when an input is |
- // disconnected. |
- audit.define('silent-disconnect', (task, should) => { |
- var context = new OfflineAudioContext(numberOfChannels, renderDuration * sampleRate, sampleRate); |
- var merger = context.createChannelMerger(); |
- var source1 = context.createBufferSource(); |
- var source2 = context.createBufferSource(); |
- |
- // Create and assign a constant buffer. |
- var bufferDCOffset = createConstantBuffer(context, 1, 1); |
- source1.buffer = source2.buffer = bufferDCOffset; |
- source1.loop = source2.loop = true; |
- |
- // Connect the output of source into the 4th input of merger. The merger |
- // should produce 6 channel output. |
- source1.connect(merger, 0, 0); |
- source2.connect(merger, 0, 1); |
- merger.connect(context.destination); |
- source1.start(); |
- source2.start(); |
- |
- // Schedule the disconnection of |source2| at the half of render duration. |
- context.suspend(disconnectTime).then(function () { |
- source2.disconnect(); |
- context.resume(); |
- }); |
- |
- context.startRendering().then(function (buffer) { |
- // The entire first channel of the output should be 1. |
- should(buffer.getChannelData(0), 'Channel #0').beConstantValueOf(1); |
- |
- // Calculate the first zero index in the second channel. |
- var channel1 = buffer.getChannelData(1); |
- var disconnectIndex = disconnectTime * sampleRate; |
- disconnectIndex -= (disconnectIndex) % renderQuantum; |
- var firstZeroIndex = channel1.findIndex(function (element, index) { |
- if (element === 0) |
- return index; |
+ // Schedule the disconnection of |source2| at the half of render |
+ // duration. |
+ context.suspend(disconnectTime).then(function() { |
+ source2.disconnect(); |
+ context.resume(); |
}); |
- // The second channel should contain 1, and 0 after the disconnection. |
- should(channel1, 'Channel #1').containValues([1, 0]); |
- should(firstZeroIndex, 'The index of first zero in the channel #1') |
- .beEqualTo(disconnectIndex); |
+ context.startRendering() |
+ .then(function(buffer) { |
+ // The entire first channel of the output should be 1. |
+ should(buffer.getChannelData(0), 'Channel #0') |
+ .beConstantValueOf(1); |
- }).then(() => task.done()); |
- }); |
+ // Calculate the first zero index in the second channel. |
+ let channel1 = buffer.getChannelData(1); |
+ let disconnectIndex = disconnectTime * sampleRate; |
+ disconnectIndex -= (disconnectIndex) % renderQuantum; |
+ let firstZeroIndex = channel1.findIndex(function(element, index) { |
+ if (element === 0) |
+ return index; |
+ }); |
- audit.run(); |
- </script> |
-</body> |
+ // The second channel should contain 1, and 0 after the |
+ // disconnection. |
+ should(channel1, 'Channel #1').containValues([1, 0]); |
+ should( |
+ firstZeroIndex, 'The index of first zero in the channel #1') |
+ .beEqualTo(disconnectIndex); |
+ |
+ }) |
+ .then(() => task.done()); |
+ }); |
+ audit.run(); |
+ </script> |
+ </body> |
</html> |