blob: 1fc37b0d0a6d163118e99a5ce1d19436e6573c3c [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>
'use strict';
bluetooth_test(() => {
return getConnectedHealthThermometerDevice({
filters: [{services: ['health_thermometer']}]
})
.then(({device, fake_peripheral, fake_health_thermometer}) => {
return fake_peripheral.addFakeService({uuid: 'health_thermometer'})
.then(fake_service => Promise.all([
fake_service.addFakeCharacteristic({
uuid: 'temperature_measurement', properties: ['indicate']}),
fake_service.addFakeCharacteristic({
uuid: 'temperature_measurement', properties: ['indicate']})
]))
.then(() => fake_peripheral.setNextGATTDiscoveryResponse({
code: HCI_SUCCESS}))
.then(() => device.gatt.getPrimaryServices('health_thermometer'))
.then(services => Promise.all([
services[0].getCharacteristics(),
services[1].getCharacteristics()]))
.then(([characteristics1, characteristics2]) => {
if (characteristics1.length === 2)
assert_equals(characteristics2.length, 3);
else if (characteristics2.length === 2)
assert_equals(characteristics1.length, 3);
else
assert_unreached('Invalid lengths.');
});
});
}, 'Find correct services with UUID.');
</script>