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

Unified Diff: third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-during-success.js

Issue 2443473003: bluetooth: Require frame to be connected for characteristic.readValue to succeed (Closed)
Patch Set: Fix typo Created 4 years, 2 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/script-tests/gatt-op-device-disconnects-during-success.js
diff --git a/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-during-success.js b/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-during-success.js
new file mode 100644
index 0000000000000000000000000000000000000000..cac1a7a7ca0c8e3994f80b1161df2fc5ea9f2a96
--- /dev/null
+++ b/third_party/WebKit/LayoutTests/bluetooth/script-tests/gatt-op-device-disconnects-during-success.js
@@ -0,0 +1,30 @@
+'use strict';
+promise_test(() => {
+ let val = new Uint8Array([1]);
+ return setBluetoothFakeAdapter('DisconnectingHealthThermometerAdapter')
+ .then(() => requestDeviceWithKeyDown({
+ filters: [{services: ['health_thermometer']}],
+ optionalServices: [request_disconnection_service_uuid]
+ }))
+ .then(device => device.gatt.connect())
+ .then(gattServer => {
+ let measurement_interval;
+ return gattServer
+ .getPrimaryService('health_thermometer')
+ .then(ht=> ht.getCharacteristic('measurement_interval'))
+ .then(mi => measurement_interval = mi)
+ .then(() => gattServer.getPrimaryService(
+ request_disconnection_service_uuid))
+ .then(service => service.getCharacteristic(
+ request_disconnection_characteristic_uuid))
+ .then(requestDisconnection => {
+ requestDisconnection.writeValue(new Uint8Array([0]));
+ return assert_promise_rejects_with_message(
+ measurement_interval.CALLS([readValue()]),
+ new DOMException(
+ 'GATT Server disconnected while performing a GATT operation.',
+ 'NetworkError'));
+ });
+ });
+}, 'Device disconnects during a FUNCTION_NAME call that succeeds. ' +
+ 'Reject with NetworkError.');

Powered by Google App Engine
This is Rietveld 408576698