Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(68)

Side by Side Diff: third_party/WebKit/LayoutTests/bluetooth/getPrimaryService/device-disconnects-before.html

Issue 2183903002: bluetooth: Reject getPrimaryService(s) if frame is not connected (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@my-origin
Patch Set: Address jyasskin's comments Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 <!DOCTYPE html> 1 <!DOCTYPE html>
2 <script src="../../resources/testharness.js"></script> 2 <script src="../../resources/testharness.js"></script>
3 <script src="../../resources/testharnessreport.js"></script> 3 <script src="../../resources/testharnessreport.js"></script>
4 <script src="../../resources/bluetooth/bluetooth-helpers.js"></script> 4 <script src="../../resources/bluetooth/bluetooth-helpers.js"></script>
5 <script> 5 <script>
6 'use strict'; 6 'use strict';
7 promise_test(t => { 7 promise_test(t => {
8 return setBluetoothFakeAdapter('DisconnectingHeartRateAdapter') 8 return setBluetoothFakeAdapter('DisconnectingHeartRateAdapter')
9 .then(() => requestDeviceWithKeyDown({ 9 .then(() => requestDeviceWithKeyDown({
10 filters: [{services: ['heart_rate']}], 10 filters: [{services: ['heart_rate']}],
11 optionalServices: [request_disconnection_service_uuid] 11 optionalServices: [request_disconnection_service_uuid]
12 })) 12 }))
13 .then(device => { 13 .then(device => {
14 return device.gatt.connect() 14 return device.gatt.connect()
15 .then(gattServer => gattServer.getPrimaryService(request_disconnection_s ervice_uuid)) 15 .then(gattServer => gattServer.getPrimaryService(request_disconnection_s ervice_uuid))
16 .then(service => service.getCharacteristic(request_disconnection_charact eristic_uuid)) 16 .then(service => service.getCharacteristic(request_disconnection_charact eristic_uuid))
17 .then(requestDisconnection => { 17 .then(requestDisconnection => requestDisconnection.writeValue(new Uint8A rray([0])))
18 // This promise hangs unless gattserverdisconnected is fired. 18 .then(() => assert_promise_rejects_with_message(
19 let disconnected = eventPromise(device, 'gattserverdisconnected'); 19 device.gatt.getPrimaryService('heart_rate'),
20 return Promise.all([requestDisconnection.writeValue(new Uint8Array([0] )), 20 new DOMException('GATT Server is disconnected. Cannot retrieve service s.',
21 disconnected]); 21 'NetworkError')));
22 }).then(([, disconnected]) => assert_true(disconnected.bubbles));
23 }); 22 });
24 }, 'A device disconnecting while connected should fire the gattserverdisconnect ed event.'); 23 }, 'Device disconnects before getPrimaryService. Reject with NetworkError.');
25 </script> 24 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698