OLD | NEW |
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 src="../../../resources/bluetooth/web-bluetooth-test.js"></script> | |
6 <script src="../../../resources/mojo-helpers.js"></script> | |
7 <script> | 5 <script> |
8 'use strict'; | 6 'use strict'; |
9 promise_test(() => { | 7 promise_test(() => { |
10 return getDiscoveredHealthThermometerDevice() | 8 return setBluetoothFakeAdapter('DisconnectingHealthThermometerAdapter') |
11 .then(([device, fake_peripheral]) => { | 9 .then(() => requestDeviceWithKeyDown({ |
12 return fake_peripheral.setNextGATTConnectionResponse({code: HCI_SUCCESS}) | 10 filters: [{services: ['health_thermometer']}]})) |
13 .then(() => { | 11 .then(device => { |
14 // Don't return the promise and let |device| go out of scope | 12 device.gatt.connect(); |
15 // so that it gets garbage collected. | |
16 device.gatt.connect(); | |
17 }); | |
18 }) | 13 }) |
19 .then(runGarbageCollection) | 14 .then(runGarbageCollection); |
20 }, 'Garbage Collection ran during a connect call that succeeds. ' + | 15 }, 'Garbage Collection ran during a connect call that succeeds. ' + |
21 'Should not crash.'); | 16 'Should not crash.'); |
22 </script> | 17 </script> |
OLD | NEW |