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

Side by Side Diff: third_party/WebKit/LayoutTests/bluetooth/characteristic/readValue/add-multiple-event-listeners.html

Issue 2825393004: bluetooth: Check the order of event and promise resolution for readValue (Closed)
Patch Set: Address moar feedback Created 3 years, 7 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 return setBluetoothFakeAdapter('HeartRateAdapter') 8 return setBluetoothFakeAdapter('HeartRateAdapter')
9 .then(() => requestDeviceWithKeyDown({ 9 .then(() => requestDeviceWithKeyDown({
10 filters: [{services: ['heart_rate']}]})) 10 filters: [{services: ['heart_rate']}]}))
11 .then(device => device.gatt.connect()) 11 .then(device => device.gatt.connect())
12 .then(gattServer => gattServer.getPrimaryService('heart_rate')) 12 .then(gattServer => gattServer.getPrimaryService('heart_rate'))
13 .then(service => service.getCharacteristic('body_sensor_location')) 13 .then(service => service.getCharacteristic('body_sensor_location'))
14 .then(characteristic => { 14 .then(characteristic => {
15 return assert_event_fires_after_promise(characteristic, 15 return assert_promise_resolves_after_event(characteristic,
16 'readValue', 16 'readValue',
17 'characteristicvaluechanged', 17 'characteristicvaluechanged',
18 3 /* attach 3 listeners */, 18 3 /* attach 3 listeners */);
19 true /* ignore_event_promise_order */);
20 }).then(results => { 19 }).then(results => {
21 let read_value = results[0].buffer; 20 let read_value = results[0].buffer;
22 let event_values = results.slice(1).map(v => v.buffer); 21 let event_values = results.slice(1).map(v => v.buffer);
23 for (let event_value of event_values) { 22 for (let event_value of event_values) {
24 // TODO(ortuno): The DataView used to resolve the promise 23 assert_equals(event_value, read_value);
25 // should be the same DataView as the one saved in the
26 // characteristic.
27 // http://crbug.com/543347
28 // assert_equals(event.target.value, value);
29 assert_array_equals(event_value, read_value); 24 assert_array_equals(event_value, read_value);
30 } 25 }
31 }); 26 });
32 }, 'Add multiple event listeners then readValue().'); 27 }, 'Add multiple event listeners then readValue().');
33 </script> 28 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698