OLD | NEW |
(Empty) | |
| 1 <!DOCTYPE html> |
| 2 <script src="../resources/testharness.js"></script> |
| 3 <script src="../resources/testharness-helpers.js"></script> |
| 4 <script src="../resources/testharnessreport.js"></script> |
| 5 <script src="resources/bluetooth-helpers.js"></script> |
| 6 <script> |
| 7 'use strict'; |
| 8 |
| 9 test(t => { assert_true(window.testRunner instanceof Object); t.done(); }, |
| 10 'window.testRunner is required for the following tests.'); |
| 11 |
| 12 promise_test(() => { |
| 13 testRunner.setBluetoothMockDataSet('HeartRateAdapter'); |
| 14 return assert_promise_rejects_with_message( |
| 15 requestDeviceWithKeyDown( |
| 16 {filters: [{services: ['human_interface_device']}]}), |
| 17 new DOMException( |
| 18 'requestDevice() called with a filter containing a blacklisted UUID. ' + |
| 19 'https://goo.gl/4NeimX', |
| 20 'SecurityError'), |
| 21 'Requesting blacklisted service rejects.'); |
| 22 }, 'Reject with SecurityError if requesting a blacklisted service.'); |
| 23 |
| 24 promise_test(() => { |
| 25 testRunner.setBluetoothMockDataSet('HeartRateAndHIDAdapter'); |
| 26 return requestDeviceWithKeyDown( |
| 27 { |
| 28 filters: [{services: ['heart_rate']}], |
| 29 optionalServices: ['human_interface_device'] |
| 30 }) |
| 31 .then(device => device.gatt.connect()) |
| 32 .then(gattServer => { |
| 33 return assert_promise_rejects_with_message( |
| 34 gattServer.getPrimaryService('human_interface_device'), |
| 35 new DOMException( |
| 36 'Origin is not allowed to access the service. Remember to add the ' + |
| 37 'service to a filter or to optionalServices in requestDevice().', |
| 38 'SecurityError'), |
| 39 'Blacklisted service not accessible.'); |
| 40 }); |
| 41 }, 'Blacklisted UUID in optionalServices is removed and access not granted.'); |
| 42 </script> |
OLD | NEW |