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

Side by Side Diff: third_party/WebKit/LayoutTests/sensor/resources/generic-sensor-tests.js

Issue 2529343002: [sensors] Fix flakiness in generic sensors tests (Closed)
Patch Set: Fixes for review comments from Reilly Created 4 years 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
« no previous file with comments | « no previous file | third_party/WebKit/LayoutTests/sensor/resources/sensor-helpers.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 'use strict'; 1 'use strict';
2 2
3 // Run a set of tests for a given |sensorType|. |updateReading| is 3 // Run a set of tests for a given |sensorType|. |updateReading| is
4 // a called by the test to provide the mock values for sensor. |verifyReading| 4 // a called by the test to provide the mock values for sensor. |verifyReading|
5 // is called so that the value read in JavaScript are the values expected (the o nes 5 // is called so that the value read in JavaScript are the values expected (the o nes
6 // sent by |updateReading|). 6 // sent by |updateReading|).
7 function runGenericSensorTests(sensorType, updateReading, verifyReading) { 7 function runGenericSensorTests(sensorType, updateReading, verifyReading) {
8 test(() => assert_throws( 8 test(() => assert_throws(
9 new RangeError(), 9 new RangeError(),
10 () => new sensorType({frequency: -60})), 10 () => new sensorType({frequency: -60})),
11 'Test that negative frequency causes exception from constructor.'); 11 'Test that negative frequency causes exception from constructor.');
12 12
13 sensor_test(sensor => { 13 sensor_test(sensor => {
14 sensor.mockSensorProvider.setGetSensorShouldFail(true); 14 sensor.mockSensorProvider.setGetSensorShouldFail(true);
15 let sensorObject = new sensorType; 15 let sensorObject = new sensorType;
16 sensorObject.start(); 16 sensorObject.start();
17 return new Promise((resolve, reject) => { 17 return new Promise((resolve, reject) => {
18 let wrapper = new CallbackWrapper(event => { 18 let wrapper = new CallbackWrapper(event => {
19 assert_equals(sensorObject.state, 'errored'); 19 assert_equals(sensorObject.state, 'errored');
20 console.log(event.error.message);
21 assert_equals(event.error.name, 'NotFoundError'); 20 assert_equals(event.error.name, 'NotFoundError');
22 sensorObject.onerror = null; 21 sensorObject.onerror = null;
23 resolve(); 22 resolve();
24 }, reject); 23 }, reject);
25 24
26 sensorObject.onerror = wrapper.callback; 25 sensorObject.onerror = wrapper.callback;
27 }); 26 });
28 }, 'Test that "onerror" is send when sensor is not supported.'); 27 }, 'Test that "onerror" is send when sensor is not supported.');
29 28
30 sensor_test(sensor => { 29 sensor_test(sensor => {
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after
188 187
189 sensor_test(sensor => { 188 sensor_test(sensor => {
190 let sensorObject = new sensorType; 189 let sensorObject = new sensorType;
191 sensorObject.start(); 190 sensorObject.start();
192 let testPromise = sensor.mockSensorProvider.getCreatedSensor() 191 let testPromise = sensor.mockSensorProvider.getCreatedSensor()
193 .then(mockSensor => { 192 .then(mockSensor => {
194 return mockSensor.setUpdateSensorReadingFunction(updateReading); 193 return mockSensor.setUpdateSensorReadingFunction(updateReading);
195 }) 194 })
196 .then(mockSensor => { 195 .then(mockSensor => {
197 return new Promise((resolve, reject) => { 196 return new Promise((resolve, reject) => {
198 sensorObject.onchange = () => { 197 let wrapper = new CallbackWrapper(() => {
199 if (verifyReading(sensorObject.reading)) { 198 assert_true(verifyReading(sensorObject.reading));
200 resolve(mockSensor); 199 resolve(mockSensor);
201 } 200 }, reject);
202 } 201
203 sensorObject.onerror = reject; 202 sensorObject.onchange = wrapper.callback;
203 sensorObject.onerror = reject;
204 }); 204 });
205 }) 205 })
206 .then(mockSensor => { 206 .then(mockSensor => {
207 testRunner.setPageVisibility('hidden'); 207 testRunner.setPageVisibility('hidden');
208 return mockSensor.suspendCalled(); 208 return mockSensor.suspendCalled();
209 }) 209 })
210 .then(mockSensor => { 210 .then(mockSensor => {
211 testRunner.setPageVisibility('visible'); 211 testRunner.setPageVisibility('visible');
212 return mockSensor.resumeCalled(); 212 return mockSensor.resumeCalled();
213 }) 213 })
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
261 sensor1.onchange = wrapper.callback; 261 sensor1.onchange = wrapper.callback;
262 sensor1.onerror = reject; 262 sensor1.onerror = reject;
263 sensor2.onerror = reject; 263 sensor2.onerror = reject;
264 }); 264 });
265 }) 265 })
266 .then(mockSensor => { return mockSensor.removeConfigurationCalled(); }); 266 .then(mockSensor => { return mockSensor.removeConfigurationCalled(); });
267 267
268 return testPromise; 268 return testPromise;
269 }, 'Test that sensor reading is correct.'); 269 }, 'Test that sensor reading is correct.');
270 } 270 }
OLDNEW
« no previous file with comments | « no previous file | third_party/WebKit/LayoutTests/sensor/resources/sensor-helpers.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698