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

Side by Side Diff: LayoutTests/bluetooth/readValue.html

Issue 1216203003: Replace all sequential_promise_tests (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@update-testharnessjs
Patch Set: Created 5 years, 5 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>
4 <script src="../resources/testharnessreport.js"></script> 3 <script src="../resources/testharnessreport.js"></script>
5 <script src="bluetooth-helpers.js"></script> 4 <script src="bluetooth-helpers.js"></script>
6 <script> 5 <script>
7 test(function(t) { assert_true(window.testRunner instanceof Object); t.done(); } , 6 test(function(t) { assert_true(window.testRunner instanceof Object); t.done(); } ,
8 'window.testRunner is required for the following tests.'); 7 'window.testRunner is required for the following tests.');
9 8
10 // Generic Access Service. 9 // Generic Access Service.
11 var serviceUUID = '00001800-0000-1000-8000-00805f9b34fb'; 10 var serviceUUID = '00001800-0000-1000-8000-00805f9b34fb';
12 // Device Name Characteristic. Belongs to Generic Access. 11 // Device Name Characteristic. Belongs to Generic Access.
13 var includedCharacteristicUUID = '00002a00-0000-1000-8000-00805f9b34fb'; 12 var includedCharacteristicUUID = '00002a00-0000-1000-8000-00805f9b34fb';
14 // Reconnection Address. Belongs to Generic Access. 13 // Reconnection Address. Belongs to Generic Access.
15 var unreadableCharacteristicUUID = '00002a03-0000-1000-8000-00805f9b34fb'; 14 var unreadableCharacteristicUUID = '00002a03-0000-1000-8000-00805f9b34fb';
16 15
17 sequential_promise_test(function() { 16 promise_test(function() {
18 testRunner.setBluetoothMockDataSet('ConnectableDeviceAdapter'); 17 testRunner.setBluetoothMockDataSet('ConnectableDeviceAdapter');
19 return navigator.bluetooth.requestDevice({ 18 return navigator.bluetooth.requestDevice({
20 filters: [{services: [serviceUUID]}] 19 filters: [{services: [serviceUUID]}]
21 }).then(function(device) { 20 }).then(function(device) {
22 return device.connectGATT(); 21 return device.connectGATT();
23 }).then(function(gattServer) { 22 }).then(function(gattServer) {
24 return gattServer.getPrimaryService(serviceUUID); 23 return gattServer.getPrimaryService(serviceUUID);
25 }).then(function(service) { 24 }).then(function(service) {
26 return service.getCharacteristic(includedCharacteristicUUID); 25 return service.getCharacteristic(includedCharacteristicUUID);
27 }).then(function(characteristic) { 26 }).then(function(characteristic) {
28 testRunner.setBluetoothMockDataSet('EmptyAdapter'); 27 testRunner.setBluetoothMockDataSet('EmptyAdapter');
29 return characteristic.readValue().then(function() { 28 return characteristic.readValue().then(function() {
30 assert_unreached('Device went out of range, should fail.'); 29 assert_unreached('Device went out of range, should fail.');
31 }, function(e) { 30 }, function(e) {
32 assert_equals(e.name, 'NetworkError'); 31 assert_equals(e.name, 'NetworkError');
33 assert_equals(e.message, 'Bluetooth Device is no longer in range.'); 32 assert_equals(e.message, 'Bluetooth Device is no longer in range.');
34 }); 33 });
35 }); 34 });
36 }, 'Device goes out of range. Reject with NetworkError.'); 35 }, 'Device goes out of range. Reject with NetworkError.');
37 36
38 sequential_promise_test(function() { 37 promise_test(function() {
39 testRunner.setBluetoothMockDataSet('ConnectableDeviceAdapter'); 38 testRunner.setBluetoothMockDataSet('ConnectableDeviceAdapter');
40 return navigator.bluetooth.requestDevice({ 39 return navigator.bluetooth.requestDevice({
41 filters: [{services: [serviceUUID]}] 40 filters: [{services: [serviceUUID]}]
42 }).then(function(device) { 41 }).then(function(device) {
43 return device.connectGATT(); 42 return device.connectGATT();
44 }).then(function(gattServer) { 43 }).then(function(gattServer) {
45 return gattServer.getPrimaryService(serviceUUID); 44 return gattServer.getPrimaryService(serviceUUID);
46 }).then(function(service) { 45 }).then(function(service) {
47 return service.getCharacteristic(unreadableCharacteristicUUID); 46 return service.getCharacteristic(unreadableCharacteristicUUID);
48 }).then(function(characteristic) { 47 }).then(function(characteristic) {
49 return characteristic.readValue().then(function() { 48 return characteristic.readValue().then(function() {
50 assert_unreached('Characteristic is unreadable. Should fail.'); 49 assert_unreached('Characteristic is unreadable. Should fail.');
51 }, function(e) { 50 }, function(e) {
52 assert_equals(e.name, 'NotSupportedError'); 51 assert_equals(e.name, 'NotSupportedError');
53 }); 52 });
54 }); 53 });
55 }, 'Characteristic is not readable. Reject with NetworkError.'); 54 }, 'Characteristic is not readable. Reject with NetworkError.');
56 55
57 // TODO(ortuno): Add a test for when a characterstics gets removed. 56 // TODO(ortuno): Add a test for when a characterstics gets removed.
58 // http://crbug.com/499552 57 // http://crbug.com/499552
59 58
60 sequential_promise_test(function() { 59 promise_test(function() {
61 testRunner.setBluetoothMockDataSet('ConnectableDeviceAdapter'); 60 testRunner.setBluetoothMockDataSet('ConnectableDeviceAdapter');
62 return navigator.bluetooth.requestDevice({ 61 return navigator.bluetooth.requestDevice({
63 filters: [{services: [serviceUUID]}] 62 filters: [{services: [serviceUUID]}]
64 }).then(function(device) { 63 }).then(function(device) {
65 return device.connectGATT(); 64 return device.connectGATT();
66 }).then(function(gattServer) { 65 }).then(function(gattServer) {
67 return gattServer.getPrimaryService(serviceUUID); 66 return gattServer.getPrimaryService(serviceUUID);
68 }).then(function(service) { 67 }).then(function(service) {
69 return service.getCharacteristic(includedCharacteristicUUID); 68 return service.getCharacteristic(includedCharacteristicUUID);
70 }).then(function(characteristic) { 69 }).then(function(characteristic) {
71 return characteristic.readValue(); 70 return characteristic.readValue();
72 }).then(function(value) { 71 }).then(function(value) {
73 var decoder = new TextDecoder('utf-8'); 72 var decoder = new TextDecoder('utf-8');
74 var value_str = decoder.decode(value); 73 var value_str = decoder.decode(value);
75 assert_equals(value_str, 'Empty Mock Device'); 74 assert_equals(value_str, 'Empty Mock Device');
76 }); 75 });
77 }, 'Request for characteristic. Should return right characteristic'); 76 }, 'Request for characteristic. Should return right characteristic');
78 </script> 77 </script>
OLDNEW
« no previous file with comments | « LayoutTests/bluetooth/idl-BluetoothDevice.html ('k') | LayoutTests/bluetooth/requestDevice.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698