blob: 457241d6d83df964568e4b52c7149d7aeefacccb [file] [log] [blame]
<!-- Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py -->
<!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';
promise_test(() => {
return setBluetoothFakeAdapter('HeartRateAdapter')
.then(() => requestDeviceWithKeyDown({
filters: [{services: ['heart_rate']}]}))
.then(device => device.gatt.connect())
.then(gattServer => gattServer.getPrimaryService('heart_rate'))
.then(service => Promise.all([
service.getCharacteristic('body_sensor_location'),
service.getCharacteristic('body_sensor_location')]))
.then(characteristics_arrays => {
// Convert to arrays if necessary.
for (let i = 0; i < characteristics_arrays.length; i++) {
characteristics_arrays[i] = [].concat(characteristics_arrays[i]);
}
for (let i = 1; i < characteristics_arrays.length; i++) {
assert_equals(characteristics_arrays[0].length,
characteristics_arrays[i].length);
}
let base_set = new Set(characteristics_arrays[0]);
for (let characteristics of characteristics_arrays) {
characteristics.forEach(
characteristic => assert_true(base_set.has(characteristic)));
}
});
}, 'Calls to getCharacteristic should return the same object.');
</script>