| OLD | NEW |
| 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})), |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 163 function checkOnChangeIsCalledAndReadingIsValid(sensor) { | 163 function checkOnChangeIsCalledAndReadingIsValid(sensor) { |
| 164 let sensorObject = new sensorType({frequency: 60}); | 164 let sensorObject = new sensorType({frequency: 60}); |
| 165 sensorObject.start(); | 165 sensorObject.start(); |
| 166 let testPromise = sensor.mockSensorProvider.getCreatedSensor() | 166 let testPromise = sensor.mockSensorProvider.getCreatedSensor() |
| 167 .then(mockSensor => { | 167 .then(mockSensor => { |
| 168 return mockSensor.setUpdateSensorReadingFunction(updateReading); | 168 return mockSensor.setUpdateSensorReadingFunction(updateReading); |
| 169 }) | 169 }) |
| 170 .then((mockSensor) => { | 170 .then((mockSensor) => { |
| 171 return new Promise((resolve, reject) => { | 171 return new Promise((resolve, reject) => { |
| 172 let wrapper = new CallbackWrapper(() => { | 172 let wrapper = new CallbackWrapper(() => { |
| 173 assert_true(verifyReading(sensorObject.reading)); | 173 assert_true(verifyReading(sensorObject)); |
| 174 sensorObject.stop(); | 174 sensorObject.stop(); |
| 175 assert_equals(sensorObject.reading, null); | 175 assert_true(verifyReading(sensorObject, true /*should be null*/)); |
| 176 resolve(mockSensor); | 176 resolve(mockSensor); |
| 177 }, reject); | 177 }, reject); |
| 178 | 178 |
| 179 sensorObject.onchange = wrapper.callback; | 179 sensorObject.onchange = wrapper.callback; |
| 180 sensorObject.onerror = reject; | 180 sensorObject.onerror = reject; |
| 181 }); | 181 }); |
| 182 }) | 182 }) |
| 183 .then(mockSensor => { return mockSensor.removeConfigurationCalled(); }); | 183 .then(mockSensor => { return mockSensor.removeConfigurationCalled(); }); |
| 184 | 184 |
| 185 return testPromise; | 185 return testPromise; |
| (...skipping 11 matching lines...) Expand all Loading... |
| 197 sensor_test(sensor => { | 197 sensor_test(sensor => { |
| 198 let sensorObject = new sensorType; | 198 let sensorObject = new sensorType; |
| 199 sensorObject.start(); | 199 sensorObject.start(); |
| 200 let testPromise = sensor.mockSensorProvider.getCreatedSensor() | 200 let testPromise = sensor.mockSensorProvider.getCreatedSensor() |
| 201 .then(mockSensor => { | 201 .then(mockSensor => { |
| 202 return mockSensor.setUpdateSensorReadingFunction(updateReading); | 202 return mockSensor.setUpdateSensorReadingFunction(updateReading); |
| 203 }) | 203 }) |
| 204 .then(mockSensor => { | 204 .then(mockSensor => { |
| 205 return new Promise((resolve, reject) => { | 205 return new Promise((resolve, reject) => { |
| 206 let wrapper = new CallbackWrapper(() => { | 206 let wrapper = new CallbackWrapper(() => { |
| 207 assert_true(verifyReading(sensorObject.reading)); | 207 assert_true(verifyReading(sensorObject)); |
| 208 resolve(mockSensor); | 208 resolve(mockSensor); |
| 209 }, reject); | 209 }, reject); |
| 210 | 210 |
| 211 sensorObject.onchange = wrapper.callback; | 211 sensorObject.onchange = wrapper.callback; |
| 212 sensorObject.onerror = reject; | 212 sensorObject.onerror = reject; |
| 213 }); | 213 }); |
| 214 }) | 214 }) |
| 215 .then(mockSensor => { | 215 .then(mockSensor => { |
| 216 testRunner.setPageVisibility('hidden'); | 216 testRunner.setPageVisibility('hidden'); |
| 217 return mockSensor.suspendCalled(); | 217 return mockSensor.suspendCalled(); |
| (...skipping 21 matching lines...) Expand all Loading... |
| 239 | 239 |
| 240 let sensor2 = new sensorType({frequency: 20}); | 240 let sensor2 = new sensorType({frequency: 20}); |
| 241 sensor2.start(); | 241 sensor2.start(); |
| 242 let testPromise = sensor.mockSensorProvider.getCreatedSensor() | 242 let testPromise = sensor.mockSensorProvider.getCreatedSensor() |
| 243 .then(mockSensor => { | 243 .then(mockSensor => { |
| 244 return mockSensor.setUpdateSensorReadingFunction(updateReading); | 244 return mockSensor.setUpdateSensorReadingFunction(updateReading); |
| 245 }) | 245 }) |
| 246 .then((mockSensor) => { | 246 .then((mockSensor) => { |
| 247 return new Promise((resolve, reject) => { | 247 return new Promise((resolve, reject) => { |
| 248 let wrapper = new CallbackWrapper(() => { | 248 let wrapper = new CallbackWrapper(() => { |
| 249 // Reading value is correct. | 249 // Reading values are correct for both sensors. |
| 250 assert_true(verifyReading(sensor1.reading)); | 250 assert_true(verifyReading(sensor1)); |
| 251 assert_true(verifyReading(sensor2)); |
| 251 | 252 |
| 252 // Both sensors share the same reading instance. | 253 // After first sensor stops its reading values are null, |
| 253 let reading = sensor1.reading; | 254 // reading values for the second sensor sensor remain. |
| 254 assert_equals(reading, sensor2.reading); | |
| 255 | |
| 256 // After first sensor stops its reading is null, reading for secon
d | |
| 257 // sensor sensor remains. | |
| 258 sensor1.stop(); | 255 sensor1.stop(); |
| 259 assert_equals(sensor1.reading, null); | 256 assert_true(verifyReading(sensor1, true /*should be null*/)); |
| 260 assert_true(verifyReading(sensor2.reading)); | 257 assert_true(verifyReading(sensor2)); |
| 261 | 258 |
| 262 sensor2.stop(); | 259 sensor2.stop(); |
| 263 assert_equals(sensor2.reading, null); | 260 assert_true(verifyReading(sensor2, true /*should be null*/)); |
| 264 | 261 |
| 265 // Cached reading remains. | |
| 266 assert_true(verifyReading(reading)); | |
| 267 resolve(mockSensor); | 262 resolve(mockSensor); |
| 268 }, reject); | 263 }, reject); |
| 269 | 264 |
| 270 sensor1.onchange = wrapper.callback; | 265 sensor1.onchange = wrapper.callback; |
| 271 sensor1.onerror = reject; | 266 sensor1.onerror = reject; |
| 272 sensor2.onerror = reject; | 267 sensor2.onerror = reject; |
| 273 }); | 268 }); |
| 274 }) | 269 }) |
| 275 .then(mockSensor => { return mockSensor.removeConfigurationCalled(); }); | 270 .then(mockSensor => { return mockSensor.removeConfigurationCalled(); }); |
| 276 | 271 |
| (...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 330 | 325 |
| 331 sensor_test(sensor => { | 326 sensor_test(sensor => { |
| 332 return checkFrequencyHintWorks(sensor); | 327 return checkFrequencyHintWorks(sensor); |
| 333 }, 'Test that frequency hint works (onchange reporting).'); | 328 }, 'Test that frequency hint works (onchange reporting).'); |
| 334 | 329 |
| 335 sensor_test(sensor => { | 330 sensor_test(sensor => { |
| 336 sensor.mockSensorProvider.setContinuousReportingMode(); | 331 sensor.mockSensorProvider.setContinuousReportingMode(); |
| 337 return checkFrequencyHintWorks(sensor); | 332 return checkFrequencyHintWorks(sensor); |
| 338 }, 'Test that frequency hint works (continuous reporting).'); | 333 }, 'Test that frequency hint works (continuous reporting).'); |
| 339 } | 334 } |
| OLD | NEW |