Index: third_party/WebKit/LayoutTests/webaudio/unit-tests/audit.html |
diff --git a/third_party/WebKit/LayoutTests/webaudio/unit-tests/audit.html b/third_party/WebKit/LayoutTests/webaudio/unit-tests/audit.html |
index a219d301159a2e44e14dbfcbab73a9d29b5d1db8..49472d0d21095c298ab27c6fad49595b27db3396 100644 |
--- a/third_party/WebKit/LayoutTests/webaudio/unit-tests/audit.html |
+++ b/third_party/WebKit/LayoutTests/webaudio/unit-tests/audit.html |
@@ -1,135 +1,162 @@ |
<!DOCTYPE html> |
<html> |
-<head> |
- <title>audit.js: basic tests</title> |
- <script src="../../resources/testharness.js"></script> |
- <script src="../../resources/testharnessreport.js"></script> |
- <script src="../resources/audit.js"></script> |
-</head> |
-<body> |
- <script> |
- var audit = Audit.createTaskRunner({ requireResultFile: true }); |
- |
- |
- // Basic assertion testing. |
- audit.define({ |
- label: 'basic', |
- description: 'Simple unit tests for basic assertions.' |
- }, function (task, should) { |
- should(OfflineAudioContext, 'OfflineAudioContext').exist(); |
- should(function () { var foo1 = 0; }, 'Setting foo1 to 0').notThrow(); |
- should(function () { var foo2 = bar; }).throw(); |
- should(function () { var foo3 = bar; }).throw('ReferenceError'); |
- should(function () { var foo4 = bar; }).throw(null); |
- should(function () { var foo5 = bar; }).throw(undefined); |
- should(() => { should(); }, 'Calling should() with no argument') |
- .throw('Error'); |
- should(3 < 5, '3 < 5').beTrue(); |
- should(false).beFalse(); |
- should(1).beEqualTo(1) |
- should(1).notBeEqualTo(2) |
- should(typeof AudioContext.prototype).beEqualTo('object'); |
- should(2).beGreaterThan(1); |
- should(2).beGreaterThanOrEqualTo(2); |
- should(1).beLessThan(2); |
- should(1).beLessThanOrEqualTo(1); |
- should(should(1).beEqualTo(1), 'should(1).beEqualTo(1)').beTrue(); |
- should(true, 'The message is').message('truthful!', 'false!'); |
- |
- should(BaseAudioContext.prototype, 'BaseAudioContext.prototype') |
- .haveOwnProperty('createGain'); |
- should(BaseAudioContext.prototype, 'BaseAudioContext.prototype') |
- .notHaveOwnProperty('startRendering'); |
- |
- let ac = new AudioContext(); |
- let sourceNode = new AudioBufferSourceNode(ac); |
- should(sourceNode, 'An AudioBufferSourceNode') |
- .inheritFrom('AudioScheduledSourceNode'); |
- should(sourceNode, 'An AudioBufferSourceNode') |
- .inheritFrom('AudioNode'); |
- |
- let oac = new OfflineAudioContext(1, 128, 44100); |
- Promise.all([ |
- should(oac.startRendering(), 'Start OAC rendering').beResolved(), |
- should(oac.decodeAudioData(), 'Decoding audio data with no argument') |
- .beRejected(), |
- should(oac.suspend(), 'Suspending OAC with no argument') |
- .beRejectedWith('TypeError') |
- ]).then(task.done.bind(task)); |
- } |
- ); |
- |
- |
- // Advanced, mostly array-based numerical testing. Note that some codes |
- // are commented out to avoid the trybot failure. These failures are |
- // intentional, to demonstrate how the detailed failure report works. |
- audit.define({ |
- label: 'numerical', |
- description: 'Numerical assertion unit test.' |
- }, function (task, should) { |
- should(2.3).beCloseTo(2, { threshold: 0.3 }); |
- should([1, 1, 1]).beConstantValueOf(1); |
- should([1, 0, 1]).notBeConstantValueOf(1); |
- should([1, 0, 0, 1]).notBeConstantValueOf(1); |
- should([1, 1, 1]).beEqualToArray([1, 1, 1]); |
- should([1, 1, 1, 1, 2, 2, 3, 3, 3]) |
- .containValues([1, 2, 3], 'one, two, three'); |
- should([0.5, 0.5, 0.55, 0.5, 0.45, 0.5]).notGlitch(0.06); |
+ <head> |
+ <title> |
+ audit.js: basic tests |
+ </title> |
+ <script src="../../resources/testharness.js"></script> |
+ <script src="../../resources/testharnessreport.js"></script> |
+ <script src="../resources/audit.js"></script> |
+ </head> |
+ <body> |
+ <script id="layout-test-code"> |
+ let audit = Audit.createTaskRunner({requireResultFile: true}); |
+ |
+ |
+ // Basic assertion testing. |
+ audit.define( |
+ { |
+ label: 'basic', |
+ description: 'Simple unit tests for basic assertions.' |
+ }, |
+ function(task, should) { |
+ should(OfflineAudioContext, 'OfflineAudioContext').exist(); |
+ should(function() { |
+ let foo1 = 0; |
+ }, 'Setting foo1 to 0').notThrow(); |
+ should(function() { |
+ let foo2 = bar; |
+ }).throw(); |
+ should(function() { |
+ let foo3 = bar; |
+ }).throw('ReferenceError'); |
+ should(function() { |
+ let foo4 = bar; |
+ }).throw(null); |
+ should(function() { |
+ let foo5 = bar; |
+ }).throw(undefined); |
+ should(() => { |
+ should(); |
+ }, 'Calling should() with no argument').throw('Error'); |
+ should(3 < 5, '3 < 5').beTrue(); |
+ should(false).beFalse(); |
+ should(1).beEqualTo(1) |
+ should(1).notBeEqualTo(2) |
+ should(typeof AudioContext.prototype).beEqualTo('object'); |
+ should(2).beGreaterThan(1); |
+ should(2).beGreaterThanOrEqualTo(2); |
+ should(1).beLessThan(2); |
+ should(1).beLessThanOrEqualTo(1); |
+ should(should(1).beEqualTo(1), 'should(1).beEqualTo(1)').beTrue(); |
+ should(true, 'The message is').message('truthful!', 'false!'); |
+ |
+ should(BaseAudioContext.prototype, 'BaseAudioContext.prototype') |
+ .haveOwnProperty('createGain'); |
+ should(BaseAudioContext.prototype, 'BaseAudioContext.prototype') |
+ .notHaveOwnProperty('startRendering'); |
+ |
+ let ac = new AudioContext(); |
+ let sourceNode = new AudioBufferSourceNode(ac); |
+ should(sourceNode, 'An AudioBufferSourceNode') |
+ .inheritFrom('AudioScheduledSourceNode'); |
+ should(sourceNode, 'An AudioBufferSourceNode') |
+ .inheritFrom('AudioNode'); |
+ |
+ let oac = new OfflineAudioContext(1, 128, 44100); |
+ Promise |
+ .all([ |
+ should(oac.startRendering(), 'Start OAC rendering') |
+ .beResolved(), |
+ should( |
+ oac.decodeAudioData(), |
+ 'Decoding audio data with no argument') |
+ .beRejected(), |
+ should(oac.suspend(), 'Suspending OAC with no argument') |
+ .beRejectedWith('TypeError') |
+ ]) |
+ .then(task.done.bind(task)); |
+ }); |
+ |
+ |
+ // Advanced, mostly array-based numerical testing. Note that some codes |
+ // are commented out to avoid the trybot failure. These failures are |
+ // intentional, to demonstrate how the detailed failure report works. |
+ audit.define( |
+ {label: 'numerical', description: 'Numerical assertion unit test.'}, |
+ function(task, should) { |
+ should(2.3).beCloseTo(2, {threshold: 0.3}); |
+ should([1, 1, 1]).beConstantValueOf(1); |
+ should([1, 0, 1]).notBeConstantValueOf(1); |
+ should([1, 0, 0, 1]).notBeConstantValueOf(1); |
+ should([1, 1, 1]).beEqualToArray([1, 1, 1]); |
+ should([ |
+ 1, 1, 1, 1, 2, 2, 3, 3, 3 |
+ ]).containValues([1, 2, 3], 'one, two, three'); |
+ should([0.5, 0.5, 0.55, 0.5, 0.45, 0.5]).notGlitch(0.06); |
+ task.done(); |
+ }); |
+ |
+ audit.define( |
+ { |
+ label: 'numerical typed arrays', |
+ description: 'Numerical assertion unit test with typed arrays.' |
+ }, |
+ function(task, should) { |
+ let testValues = [1, 2, 3]; |
+ should(Uint8Array.from(testValues), 'Uint8Array') |
+ .beEqualToArray(testValues); |
+ should(Float32Array.from(testValues), 'Float32Array') |
+ .beEqualToArray(testValues); |
+ should(Float64Array.from(testValues), 'Float64Array') |
+ .beEqualToArray(testValues); |
+ task.done(); |
+ }); |
+ |
+ // Test Audit.loadFileFromUrl() within |should| assertion. |
+ // See: crbug.com/701813 |
+ audit.define( |
+ { |
+ label: 'load-file-in-should', |
+ description: |
+ 'Test Audit.loadFileFromUrl() within |should| assertion.' |
+ }, |
+ (task, should) => { |
+ let url = '../resources/hyper-reality/laughter.wav'; |
+ let promise = should( |
+ Audit.loadFileFromUrl(url), |
+ 'Loading file within should().beResolved()') |
+ .beResolved(); |
+ promise.then(() => {task.done()}); |
+ }); |
+ |
+ |
+ // The task headline needs to be printed even if there is no description |
+ // is given. |
+ audit.define('dummy-label-string', function(task) { |
task.done(); |
- } |
- ); |
- |
- audit.define({ |
- label: 'numerical typed arrays', |
- description: 'Numerical assertion unit test with typed arrays.' |
- }, function (task, should) { |
- let testValues = [1,2,3]; |
- should(Uint8Array.from(testValues), 'Uint8Array').beEqualToArray(testValues); |
- should(Float32Array.from(testValues), 'Float32Array').beEqualToArray(testValues); |
- should(Float64Array.from(testValues), 'Float64Array').beEqualToArray(testValues); |
- task.done(); |
- }); |
- |
- // Test Audit.loadFileFromUrl() within |should| assertion. |
- // See: crbug.com/701813 |
- audit.define({ |
- label: 'load-file-in-should', |
- description: 'Test Audit.loadFileFromUrl() within |should| assertion.' |
- }, (task, should) => { |
- let url = '../resources/hyper-reality/laughter.wav'; |
- let promise = should(Audit.loadFileFromUrl(url), |
- 'Loading file within should().beResolved()') |
- .beResolved(); |
- promise.then(() => { task.done() }); |
- } |
- ); |
- |
- |
- // The task headline needs to be printed even if there is no description is |
- // given. |
- audit.define('dummy-label-string', function (task) { |
- task.done(); |
- }); |
- |
- |
- // Test the same thing in a differen way. |
- audit.define({ label: 'dummy-label-object' }, function (task) { |
- task.done(); |
- }); |
- |
- |
- // This task is defined, but you can selectively opt it out when the task |
- // runs. If you would like to see how failure cases get printed, include |
- // this task and launch the task runner. |
- audit.define('empty', function (task, should) { |
- task.done(); |
- }); |
- |
- |
- // You can enumerate tasks you want to execute in the order, or simply pass |
- // no argument to run all the defined tasks. |
- audit.run('numerical', 'numerical typed arrays', 'basic', |
- 'load-file-in-should', 'dummy-label-string', 'dummy-label-object'); |
- </script> |
-</body> |
+ }); |
+ |
+ |
+ // Test the same thing in a differen way. |
+ audit.define({label: 'dummy-label-object'}, function(task) { |
+ task.done(); |
+ }); |
+ |
+ |
+ // This task is defined, but you can selectively opt it out when the task |
+ // runs. If you would like to see how failure cases get printed, include |
+ // this task and launch the task runner. |
+ audit.define('empty', function(task, should) { |
+ task.done(); |
+ }); |
+ |
+ |
+ // You can enumerate tasks you want to execute in the order, or simply |
+ // pass no argument to run all the defined tasks. |
+ audit.run( |
+ 'numerical', 'numerical typed arrays', 'basic', 'load-file-in-should', |
+ 'dummy-label-string', 'dummy-label-object'); |
+ </script> |
+ </body> |
</html> |