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

Side by Side Diff: third_party/WebKit/LayoutTests/bluetooth/requestDevice.html

Issue 1926813004: Replace assert_promise_rejects with upstream promise_rejects. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: update testharness.js and rebase Created 4 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/testharness-helpers.js"></script> 3 <script src="../resources/testharness-helpers.js"></script>
jsbell 2016/04/29 17:39:07 This include isn't needed any more, is it? (appli
4 <script src="../resources/testharnessreport.js"></script> 4 <script src="../resources/testharnessreport.js"></script>
5 <script src="../resources/bluetooth/bluetooth-helpers.js"></script> 5 <script src="../resources/bluetooth/bluetooth-helpers.js"></script>
6 <script> 6 <script>
7 'use strict'; 7 'use strict';
8 8
9 test(t => { assert_true(window.testRunner instanceof Object); t.done(); }, 9 test(t => { assert_true(window.testRunner instanceof Object); t.done(); },
10 'window.testRunner is required for the following tests.'); 10 'window.testRunner is required for the following tests.');
11 11
12 promise_test(() => { 12 promise_test(() => {
13 testRunner.setBluetoothManualChooser(true); 13 testRunner.setBluetoothManualChooser(true);
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
75 requestDeviceWithKeyDown({filters: [{services: [heart_rate.alias]}]}), 75 requestDeviceWithKeyDown({filters: [{services: [heart_rate.alias]}]}),
76 requestDeviceWithKeyDown({filters: [{services: [heart_rate.name]}]}), 76 requestDeviceWithKeyDown({filters: [{services: [heart_rate.name]}]}),
77 requestDeviceWithKeyDown({filters: [{services: [heart_rate.uuid]}]}) 77 requestDeviceWithKeyDown({filters: [{services: [heart_rate.uuid]}]})
78 ])).then(devices => { 78 ])).then(devices => {
79 devices.forEach(device => { 79 devices.forEach(device => {
80 assert_equals(device.constructor.name, 'BluetoothDevice'); 80 assert_equals(device.constructor.name, 'BluetoothDevice');
81 }); 81 });
82 }); 82 });
83 }, 'Mock will resolve.'); 83 }, 'Mock will resolve.');
84 84
85 promise_test(() => { 85 promise_test(t => {
86 return setBluetoothFakeAdapter('HeartRateAdapter') 86 return setBluetoothFakeAdapter('HeartRateAdapter')
87 .then(() => assert_promise_rejects( 87 .then(() => promise_rejects(t,
88 'SecurityError',
88 navigator.bluetooth.requestDevice({ 89 navigator.bluetooth.requestDevice({
89 filters: [{services: ['heart_rate']}]}), 90 filters: [{services: ['heart_rate']}]})));
90 new DOMException('', 'SecurityError')));
91 }, 'Requires a user gesture.'); 91 }, 'Requires a user gesture.');
92 92
93 promise_test(() => { 93 promise_test(t => {
94 return setBluetoothFakeAdapter('HeartRateAdapter') 94 return setBluetoothFakeAdapter('HeartRateAdapter')
95 .then(() => callWithKeyDown(() => { 95 .then(() => callWithKeyDown(() => {
96 var first = navigator.bluetooth.requestDevice({ 96 var first = navigator.bluetooth.requestDevice({
97 filters: [{services: ['heart_rate']}]}); 97 filters: [{services: ['heart_rate']}]});
98 var second = navigator.bluetooth.requestDevice({ 98 var second = navigator.bluetooth.requestDevice({
99 filters: [{services: ['heart_rate']}]}); 99 filters: [{services: ['heart_rate']}]});
100 return Promise.all([ 100 return Promise.all([
101 first.then(device => assert_equals( 101 first.then(device => assert_equals(
102 device.constructor.name, 'BluetoothDevice')), 102 device.constructor.name, 'BluetoothDevice')),
103 assert_promise_rejects(second, new DOMException('', 'SecurityError')), 103 promise_rejects(t, 'SecurityError', second),
104 ]); 104 ]);
105 })); 105 }));
106 }, 'Consumes a user gesture.'); 106 }, 'Consumes a user gesture.');
107 107
108 promise_test(() => { 108 promise_test(() => {
109 return setBluetoothFakeAdapter('HeartRateAdapter') 109 return setBluetoothFakeAdapter('HeartRateAdapter')
110 .then(() => Promise.all([ 110 .then(() => Promise.all([
111 requestDeviceWithKeyDown({filters: [{services: [heart_rate.alias]}]}), 111 requestDeviceWithKeyDown({filters: [{services: [heart_rate.alias]}]}),
112 requestDeviceWithKeyDown({filters: [{services: [heart_rate.name]}]}), 112 requestDeviceWithKeyDown({filters: [{services: [heart_rate.name]}]}),
113 requestDeviceWithKeyDown({filters: [{services: [heart_rate.uuid]}]}) 113 requestDeviceWithKeyDown({filters: [{services: [heart_rate.uuid]}]})
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
187 filters: [{services: ['glucose']}], 187 filters: [{services: ['glucose']}],
188 optionalServices: ['tx_power']})) 188 optionalServices: ['tx_power']}))
189 .then(device => { 189 .then(device => {
190 assert_equals(device.uuids.length, 2); 190 assert_equals(device.uuids.length, 2);
191 assert_in_array(BluetoothUUID.getService('glucose'), device.uuids); 191 assert_in_array(BluetoothUUID.getService('glucose'), device.uuids);
192 assert_in_array(BluetoothUUID.getService('tx_power'), device.uuids); 192 assert_in_array(BluetoothUUID.getService('tx_power'), device.uuids);
193 }); 193 });
194 }, 'We should only see UUID\'s that we\'ve been given permission for.') 194 }, 'We should only see UUID\'s that we\'ve been given permission for.')
195 195
196 196
197 promise_test(() => { 197 promise_test(t => {
198 // Both devices support the Generic Access service, but things need to 198 // Both devices support the Generic Access service, but things need to
199 // support both services to pass the filter, and neither has a Battery 199 // support both services to pass the filter, and neither has a Battery
200 // service. 200 // service.
201 return setBluetoothFakeAdapter('GlucoseHeartRateAdapter') 201 return setBluetoothFakeAdapter('GlucoseHeartRateAdapter')
202 .then(() => assert_promise_rejects( 202 .then(() => promise_rejects(t, 'NotFoundError',
203 requestDeviceWithKeyDown({ 203 requestDeviceWithKeyDown({
204 filters: [{services: ['heart_rate', 'battery_service']}] 204 filters: [{services: ['heart_rate', 'battery_service']}]
205 }), new DOMException('', 'NotFoundError'))); 205 })));
206 }, 'Too-strict filters do prevent matching.'); 206 }, 'Too-strict filters do prevent matching.');
207 207
208 promise_test(() => { 208 promise_test(() => {
209 testRunner.setBluetoothManualChooser(true); 209 testRunner.setBluetoothManualChooser(true);
210 210
211 // Open the chooser, looking for a Heart Rate device. 211 // Open the chooser, looking for a Heart Rate device.
212 let requestDevicePromise = 212 let requestDevicePromise =
213 setBluetoothFakeAdapter('SecondDiscoveryFindsHeartRateAdapter') 213 setBluetoothFakeAdapter('SecondDiscoveryFindsHeartRateAdapter')
214 .then(() => requestDeviceWithKeyDown({ 214 .then(() => requestDeviceWithKeyDown({
215 filters: [{services: ['heart_rate']}] 215 filters: [{services: ['heart_rate']}]
(...skipping 18 matching lines...) Expand all
234 assert_true(idsByName.has('Heart Rate Device')); 234 assert_true(idsByName.has('Heart Rate Device'));
235 assert_equals(events[2], 'discovery-idle'); 235 assert_equals(events[2], 'discovery-idle');
236 236
237 // Select it and let the test complete. 237 // Select it and let the test complete.
238 testRunner.sendBluetoothManualChooserEvent('selected', 238 testRunner.sendBluetoothManualChooserEvent('selected',
239 idsByName.get('Heart Rate Device' )); 239 idsByName.get('Heart Rate Device' ));
240 return requestDevicePromise; 240 return requestDevicePromise;
241 }).then(device => assert_equals(device.name, 'Heart Rate Device')); 241 }).then(device => assert_equals(device.name, 'Heart Rate Device'));
242 }, 'The chooser can restart the BT scan.'); 242 }, 'The chooser can restart the BT scan.');
243 </script> 243 </script>
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698