Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(546)

Side by Side Diff: third_party/WebKit/LayoutTests/webaudio/AudioParam/audioparam-setValueCurve-copy.html

Issue 2895963003: Apply layout-test-tidy to LayoutTests/webaudio (Closed)
Patch Set: Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <!doctype html> 1 <!DOCTYPE html>
2 <html> 2 <html>
3 <head> 3 <head>
4 <title>
5 Test setValueCurveAtTime Copies the Curve Data
6 </title>
4 <script src="../../resources/testharness.js"></script> 7 <script src="../../resources/testharness.js"></script>
5 <script src="../../resources/testharnessreport.js"></script> 8 <script src="../../resources/testharnessreport.js"></script>
6 <script src="../resources/audit-util.js"></script> 9 <script src="../resources/audit-util.js"></script>
7 <script src="../resources/audit.js"></script> 10 <script src="../resources/audit.js"></script>
8 <script src="../resources/panner-formulas.js"></script> 11 <script src="../resources/panner-formulas.js"></script>
9 <title>Test setValueCurveAtTime Copies the Curve Data</title>
10 </head> 12 </head>
13 <body>
14 <script id="layout-test-code">
15 let sampleRate = 48000;
16 let renderFrames = 1024;
17 let renderDuration = renderFrames / sampleRate;
11 18
12 <body> 19 let audit = Audit.createTaskRunner();
13 <script>
14
15 var sampleRate = 48000;
16 var renderFrames = 1024;
17 var renderDuration = renderFrames / sampleRate;
18
19 var audit = Audit.createTaskRunner();
20 20
21 // Test that changing the curve array to setValueCurveAtTime doesn't 21 // Test that changing the curve array to setValueCurveAtTime doesn't
22 // change the automation output. 22 // change the automation output.
23 audit.define("test-copy", (task, should) => { 23 audit.define('test-copy', (task, should) => {
24 // Two-channel context; channel 0 is the test result, and channel 1 is 24 // Two-channel context; channel 0 is the test result, and channel 1 is
25 // the expected result. 25 // the expected result.
26 var context = new OfflineAudioContext(2, renderFrames, sampleRate); 26 let context = new OfflineAudioContext(2, renderFrames, sampleRate);
27 27
28 var source = context.createBufferSource(); 28 let source = context.createBufferSource();
29 source.buffer = createConstantBuffer(context, 1, 1); 29 source.buffer = createConstantBuffer(context, 1, 1);
30 source.loop = true; 30 source.loop = true;
31 31
32 // Create two gain nodes. gainRef is the reference with the expected 32 // Create two gain nodes. gainRef is the reference with the expected
33 // automation results. gainTest is the test which will have the curve 33 // automation results. gainTest is the test which will have the curve
34 // modified. 34 // modified.
35 var gainTest = context.createGain(); 35 let gainTest = context.createGain();
36 var gainRef = context.createGain(); 36 let gainRef = context.createGain();
37 37
38 var merger = context.createChannelMerger(2); 38 let merger = context.createChannelMerger(2);
39 39
40 // The actual curve data can be anything, but we use this for 40 // The actual curve data can be anything, but we use this for
41 // simplicity. 41 // simplicity.
42 var curveData = [1, 0]; 42 let curveData = [1, 0];
43 var curveRef = Float32Array.from(curveData); 43 let curveRef = Float32Array.from(curveData);
44 var curveTest = Float32Array.from(curveData); 44 let curveTest = Float32Array.from(curveData);
45 45
46 // Create the graph. 46 // Create the graph.
47 source.connect(gainTest); 47 source.connect(gainTest);
48 source.connect(gainRef); 48 source.connect(gainRef);
49 gainTest.connect(merger, 0, 0); 49 gainTest.connect(merger, 0, 0);
50 gainRef.connect(merger, 0, 1); 50 gainRef.connect(merger, 0, 1);
51 merger.connect(context.destination); 51 merger.connect(context.destination);
52 52
53 // Initialize the gains. 53 // Initialize the gains.
54 gainTest.gain.setValueAtTime(0, 0); 54 gainTest.gain.setValueAtTime(0, 0);
55 gainRef.gain.setValueAtTime(0, 0); 55 gainRef.gain.setValueAtTime(0, 0);
56 56
57 // Set up the value curve. At this point curveTest and curveRef are the 57 // Set up the value curve. At this point curveTest and curveRef are the
58 // same. 58 // same.
59 gainTest.gain.setValueCurveAtTime(curveTest, 0, renderDuration); 59 gainTest.gain.setValueCurveAtTime(curveTest, 0, renderDuration);
60 gainRef.gain.setValueCurveAtTime(curveRef, 0, renderDuration); 60 gainRef.gain.setValueCurveAtTime(curveRef, 0, renderDuration);
61 61
62 // After rendering has started, modify curveTest. 62 // After rendering has started, modify curveTest.
63 context.suspend(128 / sampleRate).then(function () { 63 context.suspend(128 / sampleRate)
64 // Change the values of curve now. Any transformation is ok as long 64 .then(function() {
65 // as curveTest changes. We do this to make it really obvious. 65 // Change the values of curve now. Any transformation is ok as
66 for (var k = 0; k < curveTest.length; ++k) 66 // long as curveTest changes. We do this to make it really
67 curveTest[k] = 100 * curveTest[k] + 1; 67 // obvious.
68 }).then(context.resume.bind(context)); 68 for (let k = 0; k < curveTest.length; ++k)
69 curveTest[k] = 100 * curveTest[k] + 1;
70 })
71 .then(context.resume.bind(context));
69 72
70 // Start the test! 73 // Start the test!
71 source.start(); 74 source.start();
72 75
73 context.startRendering().then(function (resultBuffer) { 76 context.startRendering()
74 var testData = resultBuffer.getChannelData(0); 77 .then(function(resultBuffer) {
75 var refData = resultBuffer.getChannelData(1); 78 let testData = resultBuffer.getChannelData(0);
79 let refData = resultBuffer.getChannelData(1);
76 80
77 // The test result and the reference should be identical since 81 // The test result and the reference should be identical since
78 // changing the curve data should not affect the automation. 82 // changing the curve data should not affect the automation.
79 should(testData, "setValueCurve output").beEqualToArray(refData); 83 should(testData, 'setValueCurve output').beEqualToArray(refData);
80 }).then(() => task.done()); 84 })
85 .then(() => task.done());
81 }); 86 });
82 87
83 audit.run(); 88 audit.run();
84 </script> 89 </script>
85 </body> 90 </body>
86 </html> 91 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698