OLD | NEW |
---|---|
(Empty) | |
1 <!DOCTYPE html> | |
2 <script src="../../resources/testharness.js"></script> | |
3 <script src="../../resources/testharnessreport.js"></script> | |
4 <script src="../../resources/bluetooth/bluetooth-helpers.js"></script> | |
5 <script> | |
6 'use strict'; | |
7 promise_test(() => { | |
ortuno
2016/07/31 18:00:05
Please put each test in a separate file.
scheib
2016/08/02 03:24:34
Done.
| |
8 return setBluetoothFakeAdapter('EmptyNameHeartRateAdapter') | |
9 .then(() => requestDeviceWithKeyDown({ | |
10 filters: [{services: ['heart_rate']}], | |
11 optionalServices: ['generic_access']})) | |
12 .then(device => { | |
13 assert_equals(device.name, ''); | |
14 return device.gatt.connect(); | |
15 }) | |
16 .then(gattServer => gattServer.getPrimaryService('generic_access')) | |
ortuno
2016/07/31 18:00:05
Why do you need to read the characteristic's value
scheib
2016/08/02 03:24:34
Done.
| |
17 .then(service => service.getCharacteristic('gap.device_name')) | |
18 .then(characteristic => characteristic.readValue()) | |
19 .then(value => { | |
20 let decoder = new TextDecoder('utf-8'); | |
21 let value_str = decoder.decode(value); | |
22 assert_equals(value_str, ''); | |
23 }); | |
24 }, 'An empty name device can be obtained by advertised service UUID.'); | |
25 | |
26 promise_test(() => { | |
27 return setBluetoothFakeAdapter('EmptyNameHeartRateAdapter') | |
28 .then(() => requestDeviceWithKeyDown({ | |
29 filters: [{name: ''}], | |
30 optionalServices: ['generic_access']})) | |
31 .then(device => { | |
32 assert_equals(device.name, ''); | |
33 return device.gatt.connect(); | |
34 }) | |
35 .then(gattServer => gattServer.getPrimaryService('generic_access')) | |
ortuno
2016/07/31 18:00:05
Same here. Not sure why you need to read the name.
scheib
2016/08/02 03:24:34
Done.
| |
36 .then(service => service.getCharacteristic('gap.device_name')) | |
37 .then(characteristic => characteristic.readValue()) | |
38 .then(value => { | |
39 let decoder = new TextDecoder('utf-8'); | |
40 let value_str = decoder.decode(value); | |
41 assert_equals(value_str, ''); | |
42 }); | |
43 }, 'An empty name device can be obtained by empty name filter.'); | |
44 | |
45 promise_test(t => { | |
46 return setBluetoothFakeAdapter('EmptyNameHeartRateAdapter') | |
47 .then(() => promise_rejects( | |
48 t, 'NotFoundError', requestDeviceWithKeyDown({ | |
49 filters: [{ | |
50 name: 'a', | |
51 services: ['heart_rate'] | |
52 }]}))); | |
53 }, 'An empty name device is not matched by a filter with a name.'); | |
54 | |
55 promise_test(t => { | |
56 return setBluetoothFakeAdapter('EmptyNameHeartRateAdapter') | |
57 .then(() => promise_rejects( | |
58 t, 'NotFoundError', requestDeviceWithKeyDown({ | |
59 filters: [{ | |
60 namePrefix: 'a', | |
61 services: ['heart_rate'] | |
62 }]}))); | |
63 }, 'An empty name device is not matched by a filter with a namePrefix.'); | |
64 | |
65 promise_test(t => { | |
66 return setBluetoothFakeAdapter('HeartRateAdapter') | |
67 .then(() => promise_rejects( | |
68 t, 'NotFoundError', requestDeviceWithKeyDown({ | |
69 filters: [{ | |
70 name: '', | |
71 services: ['heart_rate'] | |
72 }]}))); | |
73 }, 'A named device is not matched by a filter with an empty name.'); | |
74 | |
75 </script> | |
76 | |
OLD | NEW |