mirror of
https://github.com/servo/servo.git
synced 2025-08-06 06:00:15 +01:00
Update web-platform-tests to revision b'b728032f59a396243864b0f8584e7211e3632005'
This commit is contained in:
parent
ace9b32b1c
commit
df68c4e5d1
15632 changed files with 514865 additions and 155000 deletions
|
@ -33,10 +33,9 @@ function runGenericSensorTests(sensorName,
|
|||
throw new TypeError('readingData.expectedReadings must be an array of ' +
|
||||
'arrays.');
|
||||
}
|
||||
if (readings.length != expectedReadings.length) {
|
||||
throw new TypeError('readingData.readings and ' +
|
||||
'readingData.expectedReadings must have the same ' +
|
||||
'length.');
|
||||
if (readings.length < expectedReadings.length) {
|
||||
throw new TypeError('readingData.readings\' length must be bigger than ' +
|
||||
'or equal to readingData.expectedReadings\' length.');
|
||||
}
|
||||
if (expectedRemappedReadings &&
|
||||
!validateReadingFormat(expectedRemappedReadings)) {
|
||||
|
@ -44,8 +43,8 @@ function runGenericSensorTests(sensorName,
|
|||
'array of arrays.');
|
||||
}
|
||||
if (expectedRemappedReadings &&
|
||||
readings.length != expectedRemappedReadings.length) {
|
||||
throw new TypeError('readingData.readings and ' +
|
||||
expectedReadings.length != expectedRemappedReadings.length) {
|
||||
throw new TypeError('readingData.expectedReadings and ' +
|
||||
'readingData.expectedRemappedReadings must have the same ' +
|
||||
'length.');
|
||||
}
|
||||
|
@ -205,7 +204,7 @@ function runGenericSensorTests(sensorName,
|
|||
assert_false(sensor.hasReading);
|
||||
|
||||
const mockSensor = await sensorProvider.getCreatedSensor(sensorName);
|
||||
await mockSensor.setSensorReading(readings);
|
||||
mockSensor.setSensorReading(readings);
|
||||
|
||||
await sensorWatcher.wait_for("reading");
|
||||
const expected = new RingBuffer(expectedReadings).next().value;
|
||||
|
@ -229,7 +228,7 @@ function runGenericSensorTests(sensorName,
|
|||
sensor2.start();
|
||||
|
||||
const mockSensor = await sensorProvider.getCreatedSensor(sensorName);
|
||||
await mockSensor.setSensorReading(readings);
|
||||
mockSensor.setSensorReading(readings);
|
||||
|
||||
await Promise.all([sensorWatcher1.wait_for("reading"),
|
||||
sensorWatcher2.wait_for("reading")]);
|
||||
|
@ -248,6 +247,8 @@ function runGenericSensorTests(sensorName,
|
|||
assert_true(verificationFunction(expected, sensor2, /*isNull=*/true));
|
||||
}, `${sensorName}: sensor reading is correct.`);
|
||||
|
||||
// Tests that readings maps to expectedReadings correctly. Due to threshold
|
||||
// check and rounding some values might be discarded or changed.
|
||||
sensor_test(async (t, sensorProvider) => {
|
||||
assert_implements(sensorName in self, `${sensorName} is not supported.`);
|
||||
const sensor = new sensorType();
|
||||
|
@ -257,6 +258,26 @@ function runGenericSensorTests(sensorName,
|
|||
const mockSensor = await sensorProvider.getCreatedSensor(sensorName);
|
||||
await mockSensor.setSensorReading(readings);
|
||||
|
||||
for (let expectedReading of expectedReadings) {
|
||||
await sensorWatcher.wait_for("reading");
|
||||
assert_true(sensor.hasReading, "hasReading");
|
||||
assert_true(verificationFunction(expectedReading, sensor),
|
||||
"verification");
|
||||
}
|
||||
|
||||
sensor.stop();
|
||||
}, `${sensorName}: Test that readings are all mapped to expectedReadings\
|
||||
correctly.`);
|
||||
|
||||
sensor_test(async (t, sensorProvider) => {
|
||||
assert_implements(sensorName in self, `${sensorName} is not supported.`);
|
||||
const sensor = new sensorType();
|
||||
const sensorWatcher = new EventWatcher(t, sensor, ["reading", "error"]);
|
||||
sensor.start();
|
||||
|
||||
const mockSensor = await sensorProvider.getCreatedSensor(sensorName);
|
||||
mockSensor.setSensorReading(readings);
|
||||
|
||||
await sensorWatcher.wait_for("reading");
|
||||
const cachedTimeStamp1 = sensor.timestamp;
|
||||
|
||||
|
@ -316,7 +337,7 @@ function runGenericSensorTests(sensorName,
|
|||
sensor.start();
|
||||
|
||||
const mockSensor = await sensorProvider.getCreatedSensor(sensorName);
|
||||
await mockSensor.setSensorReading(readings);
|
||||
mockSensor.setSensorReading(readings);
|
||||
|
||||
const expectedBuffer = new RingBuffer(expectedReadings);
|
||||
await sensorWatcher.wait_for("reading");
|
||||
|
@ -353,7 +374,7 @@ function runGenericSensorTests(sensorName,
|
|||
// sensor.start();
|
||||
|
||||
// const mockSensor = await sensorProvider.getCreatedSensor(sensorName);
|
||||
// await mockSensor.setSensorReading(readings);
|
||||
// mockSensor.setSensorReading(readings);
|
||||
|
||||
// await sensorWatcher.wait_for("reading");
|
||||
// const expected = new RingBuffer(expectedReadings).next().value;
|
||||
|
@ -382,7 +403,7 @@ function runGenericSensorTests(sensorName,
|
|||
await eventWatcher.wait_for("activate");
|
||||
|
||||
const mockSensor = await sensorProvider.getCreatedSensor(sensorName);
|
||||
await mockSensor.setSensorReading(readings);
|
||||
mockSensor.setSensorReading(readings);
|
||||
|
||||
// We need |fastSensorFrequency| because 60Hz might be higher than a sensor
|
||||
// type's maximum allowed frequency.
|
||||
|
@ -407,6 +428,45 @@ function runGenericSensorTests(sensorName,
|
|||
}, "Sampling frequency has dropped to slowSensor's requested frequency");
|
||||
}, `${sensorName}: frequency hint works.`);
|
||||
|
||||
sensor_test(async (t, sensorProvider) => {
|
||||
assert_implements(sensorName in self, `${sensorName} is not supported.`);
|
||||
|
||||
const sensor1 = new sensorType();
|
||||
const sensor2 = new sensorType();
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
sensor1.addEventListener('reading', () => {
|
||||
sensor2.addEventListener('activate', () => {
|
||||
try {
|
||||
assert_true(sensor1.activated);
|
||||
assert_true(sensor1.hasReading);
|
||||
assert_false(verificationFunction(null, sensor1, /*isNull=*/true));
|
||||
assert_not_equals(sensor1.timestamp, null);
|
||||
|
||||
assert_true(sensor2.activated);
|
||||
assert_false(verificationFunction(null, sensor2, /*isNull=*/true));
|
||||
assert_not_equals(sensor2.timestamp, null);
|
||||
} catch (e) {
|
||||
reject(e);
|
||||
}
|
||||
}, { once: true });
|
||||
sensor2.addEventListener('reading', () => {
|
||||
try {
|
||||
assert_true(sensor2.activated);
|
||||
assert_true(sensor2.hasReading);
|
||||
assert_sensor_equals(sensor1, sensor2);
|
||||
resolve();
|
||||
} catch (e) {
|
||||
reject(e);
|
||||
}
|
||||
}, { once: true });
|
||||
sensor2.start();
|
||||
}, { once: true });
|
||||
sensor1.start();
|
||||
});
|
||||
}, `${sensorName}: Readings delivered by shared platform sensor are\
|
||||
immediately accessible to all sensors.`);
|
||||
|
||||
// Re-enable after https://github.com/w3c/sensors/issues/361 is fixed.
|
||||
// test(() => {
|
||||
// assert_throws_dom("NotSupportedError",
|
||||
|
@ -452,7 +512,7 @@ function runGenericSensorTests(sensorName,
|
|||
sensor2.start();
|
||||
|
||||
const mockSensor = await sensorProvider.getCreatedSensor(sensorName);
|
||||
await mockSensor.setSensorReading(readings);
|
||||
mockSensor.setSensorReading(readings);
|
||||
|
||||
await Promise.all([sensorWatcher1.wait_for("reading"),
|
||||
sensorWatcher2.wait_for("reading")]);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue