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

Unified 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 side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/LayoutTests/bluetooth/notifications/gc-with-pending-start.html
diff --git a/third_party/WebKit/LayoutTests/bluetooth/notifications/device-goes-out-of-range.html b/third_party/WebKit/LayoutTests/bluetooth/notifications/gc-with-pending-start.html
similarity index 50%
copy from third_party/WebKit/LayoutTests/bluetooth/notifications/device-goes-out-of-range.html
copy to third_party/WebKit/LayoutTests/bluetooth/notifications/gc-with-pending-start.html
index 1d5add9481b730d551aac048f1dc532cf6113511..d3db2f8e3aa22f707289e005c8d8d398c1a18b4f 100644
--- a/third_party/WebKit/LayoutTests/bluetooth/notifications/device-goes-out-of-range.html
+++ b/third_party/WebKit/LayoutTests/bluetooth/notifications/gc-with-pending-start.html
@@ -5,6 +5,7 @@
<script>
'use strict';
promise_test(() => {
+ let start_promise;
return setBluetoothFakeAdapter('HeartRateAdapter')
.then(() => requestDeviceWithKeyDown({
filters: [{services: ['heart_rate']}]}))
@@ -12,12 +13,17 @@ promise_test(() => {
.then(gattServer => gattServer.getPrimaryService('heart_rate'))
.then(service => service.getCharacteristic('heart_rate_measurement'))
.then(characteristic => {
- return setBluetoothFakeAdapter('EmptyAdapter')
- .then(() => assert_promise_rejects_with_message(
- characteristic.startNotifications(),
- new DOMException(
- 'Bluetooth Device is no longer in range.', 'NetworkError'),
- 'Device went out of range.'));
- });
-}, 'Device goes out of range. Reject with NetworkError.');
+ start_promise = characteristic.startNotifications();
+ // We intentionally don't return the promise so that 'characteristic' goes
+ // out of scope while the request is still pending.
+ })
+ .then(() => runGarbageCollection())
+ .then(() => start_promise);
+ // TODO(ortuno): Assert that notifications are not active.
+ // http://crbug.com/600762
+ // Objects will no longer get garbage collected once we implement the
+ // bluetooth tree.
+ // https://crbug.com/495270
+}, 'Object gets garbage collected while start request is pending. Make ' +
+ 'sure we don\' crash.');
</script>

Powered by Google App Engine
This is Rietveld 408576698