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

Side by Side Diff: third_party/WebKit/LayoutTests/webaudio/AudioContext/audiocontext-close.html

Issue 2708953003: Move task.describe descriptions to audit.define (Closed)
Patch Set: Address review comments. Created 3 years, 10 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>Test AudioContext.close()</title> 4 <title>Test AudioContext.close()</title>
5 <script src="../../resources/testharness.js"></script> 5 <script src="../../resources/testharness.js"></script>
6 <script src="../../resources/testharnessreport.js"></script> 6 <script src="../../resources/testharnessreport.js"></script>
7 <script src="../resources/audit-util.js"></script> 7 <script src="../resources/audit-util.js"></script>
8 <script src="../resources/audit.js"></script> 8 <script src="../resources/audit.js"></script>
9 </head> 9 </head>
10 10
11 <body> 11 <body>
12 <script> 12 <script>
13 let context; 13 let context;
14 let destination; 14 let destination;
15 let offline; 15 let offline;
16 let osc; 16 let osc;
17 let gain; 17 let gain;
18 let offlinePromise; 18 let offlinePromise;
19 let wave = new Float32Array(1); 19 let wave = new Float32Array(1);
20 20
21 let audit = Audit.createTaskRunner(); 21 let audit = Audit.createTaskRunner();
22 22
23 // Task: test online context (1). 23 // Task: test online context (1).
24 audit.define('test-online-context-1', function (task, should) { 24 audit.define({
25 task.describe("Test online context 1"); 25 label: 'test-online-context-1',
26 description: "Test online context 1"
27 }, function (task, should) {
26 // Create a context and verify that the various states are correct and 28 // Create a context and verify that the various states are correct and
27 // that close() exists. 29 // that close() exists.
28 should(() => context = new AudioContext(), 30 should(() => context = new AudioContext(),
29 "context = new AudioContext()") 31 "context = new AudioContext()")
30 .notThrow(); 32 .notThrow();
31 should(context.state, "context.state") 33 should(context.state, "context.state")
32 .beEqualTo("running"); 34 .beEqualTo("running");
33 35
34 // Create gain and oscillator for testing later. 36 // Create gain and oscillator for testing later.
35 should(() => osc = context.createOscillator(), 37 should(() => osc = context.createOscillator(),
(...skipping 13 matching lines...) Expand all
49 should(() => gain.disconnect(destination), 51 should(() => gain.disconnect(destination),
50 "gain.disconnect(destination) after close") 52 "gain.disconnect(destination) after close")
51 .notThrow(); 53 .notThrow();
52 }); 54 });
53 should(promise, "context.close()") 55 should(promise, "context.close()")
54 .beResolved() 56 .beResolved()
55 .then(task.done.bind(this)); 57 .then(task.done.bind(this));
56 }); 58 });
57 59
58 // Task: test online context (2). 60 // Task: test online context (2).
59 audit.define('test-online-context-2', function (task, should) { 61 audit.define({
60 task.describe("Test closed online context 2"); 62 label: 'test-online-context-2',
63 description: "Test closed online context 2"
64 }, function (task, should) {
61 // Context is closed, so verify that we cannot create any more nodes, 65 // Context is closed, so verify that we cannot create any more nodes,
62 // nor connect any. 66 // nor connect any.
63 should(() => context.createAnalyser(), "context.createAnalyser()") 67 should(() => context.createAnalyser(), "context.createAnalyser()")
64 .throw("InvalidStateError"); 68 .throw("InvalidStateError");
65 should(() => context.createBiquadFilter(), 69 should(() => context.createBiquadFilter(),
66 "context.createBiquadFilter()") 70 "context.createBiquadFilter()")
67 .throw("InvalidStateError"); 71 .throw("InvalidStateError");
68 72
69 // createBuffer is an exception because it's not really tied in any way 73 // createBuffer is an exception because it's not really tied in any way
70 // to an audio context. And it's useful to be able to create a buffer 74 // to an audio context. And it's useful to be able to create a buffer
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
114 .throw("InvalidStateError"); 118 .throw("InvalidStateError");
115 should(() => gain.disconnect(), "gain.disconnect()").notThrow(); 119 should(() => gain.disconnect(), "gain.disconnect()").notThrow();
116 120
117 // Can't resume a context that is closed (released). 121 // Can't resume a context that is closed (released).
118 should(context.resume(), "context.resume()") 122 should(context.resume(), "context.resume()")
119 .beRejected() 123 .beRejected()
120 .then(task.done.bind(task)); 124 .then(task.done.bind(task));
121 }); 125 });
122 126
123 // Task: test online context (3). 127 // Task: test online context (3).
124 audit.define('test-online-context-3', function (task, should) { 128 audit.define({
125 task.describe("Close an online context again"); 129 label: 'test-online-context-3',
130 description: "Close an online context again"
131 }, function (task, should) {
126 // Try closing the context again. The promise should be rejected. 132 // Try closing the context again. The promise should be rejected.
127 should(context.close(), "context.close() again") 133 should(context.close(), "context.close() again")
128 .beRejected() 134 .beRejected()
129 .then(() => { 135 .then(() => {
130 // Finally, run GC. The context should be gone, but this seems 136 // Finally, run GC. The context should be gone, but this seems
131 // difficult to verify. 137 // difficult to verify.
132 if (window.gc) 138 if (window.gc)
133 gc(); 139 gc();
134 should(context.destination, "context.destination") 140 should(context.destination, "context.destination")
135 .beEqualTo(null); 141 .beEqualTo(null);
136 }) 142 })
137 .then(task.done.bind(task)); 143 .then(task.done.bind(task));
138 }); 144 });
139 145
140 // Task: test online context (4). 146 // Task: test online context (4).
141 audit.define('test-online-context-4', function (task, should) { 147 audit.define({
142 task.describe("Test closed online context 4"); 148 label: 'test-online-context-4',
149 description: "Test closed online context 4"
150 }, function (task, should) {
143 // Create a context and verify that its sampleRate and baseLatency return 151 // Create a context and verify that its sampleRate and baseLatency return
144 // valid values whether it's open or closed. 152 // valid values whether it's open or closed.
145 should(() => context = new AudioContext(), 153 should(() => context = new AudioContext(),
146 "context = new AudioContext()") 154 "context = new AudioContext()")
147 .notThrow(); 155 .notThrow();
148 should(context.sampleRate, "context.sampleRate") 156 should(context.sampleRate, "context.sampleRate")
149 .beGreaterThan("0"); 157 .beGreaterThan("0");
150 should(context.sampleRate, "context.baseLatency") 158 should(context.sampleRate, "context.baseLatency")
151 .beGreaterThan("0"); 159 .beGreaterThan("0");
152 160
153 should(context.close(), "context.close()") 161 should(context.close(), "context.close()")
154 .beResolved() 162 .beResolved()
155 .then(() => { 163 .then(() => {
156 should(context.sampleRate, "context.sampleRate") 164 should(context.sampleRate, "context.sampleRate")
157 .beGreaterThan("0"); 165 .beGreaterThan("0");
158 should(context.sampleRate, "context.baseLatency") 166 should(context.sampleRate, "context.baseLatency")
159 .beGreaterThan("0"); 167 .beGreaterThan("0");
160 }) 168 })
161 .then(task.done.bind(task)); 169 .then(task.done.bind(task));
162 }); 170 });
163 171
164 // Task: test offline context (1). 172 // Task: test offline context (1).
165 audit.define('test-offline-context-1', function (task, should) { 173 audit.define({
166 task.describe("Test offline context"); 174 label: 'test-offline-context-1',
175 description: "Test offline context"
176 }, function (task, should) {
167 // For an offline context, verify that close is not defined. 177 // For an offline context, verify that close is not defined.
168 should(() => offline = new OfflineAudioContext(1, 1000, 48000), 178 should(() => offline = new OfflineAudioContext(1, 1000, 48000),
169 "offline = new OfflineAudioContext(1, 1000, 48000)") 179 "offline = new OfflineAudioContext(1, 1000, 48000)")
170 .notThrow(); 180 .notThrow();
171 should(offline.state, "offline.state") 181 should(offline.state, "offline.state")
172 .beEqualTo("suspended"); 182 .beEqualTo("suspended");
173 should(offline.close, "offline.close") 183 should(offline.close, "offline.close")
174 .beEqualTo(undefined); 184 .beEqualTo(undefined);
175 task.done(); 185 task.done();
176 }); 186 });
177 187
178 audit.run(); 188 audit.run();
179 </script> 189 </script>
180 </body> 190 </body>
181 </html> 191 </html>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698