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

Side by Side Diff: third_party/WebKit/LayoutTests/bluetooth/notifications/gc-with-pending-start.html

Issue 1858103004: bluetooth: Separate notification tests (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@bluetooth-mojo-notifications
Patch Set: Merge Created 4 years, 8 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(() => { 7 promise_test(() => {
8 let start_promise;
8 return setBluetoothFakeAdapter('HeartRateAdapter') 9 return setBluetoothFakeAdapter('HeartRateAdapter')
9 .then(() => requestDeviceWithKeyDown({ 10 .then(() => requestDeviceWithKeyDown({
10 filters: [{services: ['heart_rate']}]})) 11 filters: [{services: ['heart_rate']}]}))
11 .then(device => device.gatt.connect()) 12 .then(device => device.gatt.connect())
12 .then(gattServer => gattServer.getPrimaryService('heart_rate')) 13 .then(gattServer => gattServer.getPrimaryService('heart_rate'))
13 .then(service => service.getCharacteristic('heart_rate_measurement')) 14 .then(service => service.getCharacteristic('heart_rate_measurement'))
14 .then(characteristic => { 15 .then(characteristic => {
15 return setBluetoothFakeAdapter('EmptyAdapter') 16 start_promise = characteristic.startNotifications();
16 .then(() => assert_promise_rejects_with_message( 17 // We intentionally don't return the promise so that 'characteristic' goes
17 characteristic.startNotifications(), 18 // out of scope while the request is still pending.
18 new DOMException( 19 })
19 'Bluetooth Device is no longer in range.', 'NetworkError'), 20 .then(() => runGarbageCollection())
20 'Device went out of range.')); 21 .then(() => start_promise);
21 }); 22 // TODO(ortuno): Assert that notifications are not active.
22 }, 'Device goes out of range. Reject with NetworkError.'); 23 // http://crbug.com/600762
24 // Objects will no longer get garbage collected once we implement the
25 // bluetooth tree.
26 // https://crbug.com/495270
27 }, 'Object gets garbage collected while start request is pending. Make ' +
28 'sure we don\' crash.');
23 </script> 29 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698