blob: b6d97a33c50eaa3ca31111b9569c891b9a0d5e29 [file] [log] [blame]
<!DOCTYPE html>
<script src="../../resources/testharness.js"></script>
<script src="../../resources/testharnessreport.js"></script>
<script src="../../resources/bluetooth/bluetooth-helpers.js"></script>
<script>
let matching_services = [heart_rate.uuid];
let matching_name = 'Heart Rate Device';
let matching_namePrefix = 'Heart';
let non_matching_services = ['battery_service'];
let non_matching_name = 'Some Device';
let non_matching_namePrefix = 'Some';
let test_specs = [{
filters: [{
services: non_matching_services,
name: non_matching_name,
namePrefix: non_matching_namePrefix
}]
}, {
filters: [{
services: matching_services,
name: non_matching_name,
namePrefix: non_matching_namePrefix
}]
}, {
filters: [{
services: non_matching_services,
name: matching_name,
namePrefix: non_matching_namePrefix
}]
}, {
filters: [{
services: matching_services,
name: matching_name,
namePrefix: non_matching_namePrefix
}]
}, {
filters: [{
services: non_matching_services,
name: non_matching_name,
namePrefix: matching_namePrefix
}]
}, {
filters: [{
services: matching_services,
name: non_matching_name,
namePrefix: matching_namePrefix
}]
}, {
filters: [{
services: non_matching_services,
name: matching_name,
namePrefix: matching_namePrefix
}]
}, {
filters: [{
services: non_matching_services,
}]
}, {
filters: [{
services: non_matching_services,
name: non_matching_name,
}]
}, {
filters: [{
services: non_matching_services,
namePrefix: non_matching_namePrefix
}]
}, {
filters: [{
name: non_matching_name,
}]
}, {
filters: [{
name: non_matching_name,
namePrefix: non_matching_namePrefix
}]
}, {
filters: [{
namePrefix: non_matching_namePrefix
}]
}];
bluetooth_test(t => {
return setBluetoothFakeAdapter('GlucoseHeartRateAdapter')
.then(() => {
let test_promises = Promise.resolve();
test_specs.forEach(args => {
test_promises = test_promises.then(() => promise_rejects(
t, 'NotFoundError', requestDeviceWithKeyDown(args)));
});
return test_promises;
});
}, 'If at least one filter member doesn\'t match the promise must reject.');
</script>