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

Side by Side Diff: third_party/WebKit/LayoutTests/bluetooth/characteristic/startNotifications/gen-gatt-op-garbage-collection-ran-during-success.html

Issue 2729433002: bluetooth: Better disconnected error messages for GATT operations. (Closed)
Patch Set: rebase Created 3 years, 9 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 <!-- Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py --> 1 <!-- Generated by //third_party/WebKit/LayoutTests/bluetooth/generate.py -->
2 <!DOCTYPE html> 2 <!DOCTYPE html>
3 <script src="../../../resources/testharness.js"></script> 3 <script src="../../../resources/testharness.js"></script>
4 <script src="../../../resources/testharnessreport.js"></script> 4 <script src="../../../resources/testharnessreport.js"></script>
5 <script src="../../../resources/bluetooth/bluetooth-helpers.js"></script> 5 <script src="../../../resources/bluetooth/bluetooth-helpers.js"></script>
6 <script> 6 <script>
7 'use strict'; 7 'use strict';
8 promise_test(() => { 8 promise_test(() => {
9 let val = new Uint8Array([1]); 9 let val = new Uint8Array([1]);
10 let promise; 10 let promise;
11 return setBluetoothFakeAdapter('DisconnectingHealthThermometerAdapter') 11 return setBluetoothFakeAdapter('DisconnectingHealthThermometerAdapter')
12 .then(() => requestDeviceWithKeyDown({ 12 .then(() => requestDeviceWithKeyDown({
13 filters: [{services: ['health_thermometer']}]})) 13 filters: [{services: ['health_thermometer']}]}))
14 .then(device => device.gatt.connect()) 14 .then(device => device.gatt.connect())
15 .then(gattServer => gattServer.getPrimaryService('health_thermometer')) 15 .then(gattServer => gattServer.getPrimaryService('health_thermometer'))
16 .then(service => service.getCharacteristic('measurement_interval')) 16 .then(service => service.getCharacteristic('measurement_interval'))
17 .then(measurement_interval => { 17 .then(measurement_interval => {
18 promise = assert_promise_rejects_with_message( 18 promise = assert_promise_rejects_with_message(
19 measurement_interval.startNotifications(), 19 measurement_interval.startNotifications(),
20 new DOMException( 20 new DOMException(
21 'GATT Server disconnected while performing a GATT operation.', 21 'GATT Server is disconnected. Cannot perform GATT operations. ' +
22 '(Re)connect first with `device.gatt.connect`.',
22 'NetworkError')); 23 'NetworkError'));
23 // Disconnect called to clear attributeInstanceMap and allow the 24 // Disconnect called to clear attributeInstanceMap and allow the
24 // object to get garbage collected. 25 // object to get garbage collected.
25 measurement_interval.service.device.gatt.disconnect(); 26 measurement_interval.service.device.gatt.disconnect();
26 }) 27 })
27 .then(runGarbageCollection) 28 .then(runGarbageCollection)
28 .then(() => promise); 29 .then(() => promise);
29 }, 'Garbage collection ran during a startNotifications call that succeeds. ' + 30 }, 'Garbage collection ran during a startNotifications call that succeeds. ' +
30 'Should not crash.'); 31 'Should not crash.');
31 32
32 </script> 33 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698