| OLD | NEW |
| 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/mojo-helpers.js"></script> | 4 <script src="../resources/mojo-helpers.js"></script> |
| 5 <script src="resources/fake-devices.js"></script> | 5 <script src="resources/fake-devices.js"></script> |
| 6 <script src="resources/usb-helpers.js"></script> | 6 <script src="resources/usb-helpers.js"></script> |
| 7 <script> | 7 <script> |
| 8 'use strict'; | 8 'use strict'; |
| 9 | 9 |
| 10 usb_test(usb => { | 10 usb_test(usb => { |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 42 return callWithKeyDown(() => navigator.usb.requestDevice({ filters: [] }) | 42 return callWithKeyDown(() => navigator.usb.requestDevice({ filters: [] }) |
| 43 .then(device => { | 43 .then(device => { |
| 44 usb.assertDeviceInfoEquals(device, usb.fakeDevices[0]); | 44 usb.assertDeviceInfoEquals(device, usb.fakeDevices[0]); |
| 45 }) | 45 }) |
| 46 ); | 46 ); |
| 47 }, 'requestDevice returns the device chosen by the user'); | 47 }, 'requestDevice returns the device chosen by the user'); |
| 48 | 48 |
| 49 usb_test(usb => { | 49 usb_test(usb => { |
| 50 let promise = new Promise((resolve, reject) => { | 50 let promise = new Promise((resolve, reject) => { |
| 51 navigator.usb.addEventListener('connect', e => { | 51 navigator.usb.addEventListener('connect', e => { |
| 52 usb.assertDeviceInfoEquals(e.device, usb.fakeDevices[0]); | 52 assert_true(e instanceof USBConnectionEvent); |
| 53 resolve(); | 53 resolve(e.device); |
| 54 }); | 54 }); |
| 55 }); | 55 }); |
| 56 | 56 |
| 57 usb.mockDeviceManager.addMockDevice(usb.fakeDevices[0]); | 57 usb.mockDeviceManager.addMockDevice(usb.fakeDevices[0]); |
| 58 return promise; | 58 return promise.then(device => { |
| 59 usb.assertDeviceInfoEquals(device, usb.fakeDevices[0]); |
| 60 return device.open().then(() => device.close()); |
| 61 }); |
| 59 }, 'onconnect event is trigged by adding a device'); | 62 }, 'onconnect event is trigged by adding a device'); |
| 60 | 63 |
| 61 usb_test(usb => { | 64 usb_test(usb => { |
| 62 let promise = new Promise((resolve, reject) => { | 65 let promise = new Promise((resolve, reject) => { |
| 63 navigator.usb.addEventListener('disconnect', e => { | 66 navigator.usb.addEventListener('disconnect', e => { |
| 64 usb.assertDeviceInfoEquals(e.device, usb.fakeDevices[0]); | 67 assert_true(e instanceof USBConnectionEvent); |
| 65 resolve(); | 68 resolve(e.device); |
| 66 }); | 69 }); |
| 67 }); | 70 }); |
| 68 | 71 |
| 69 usb.mockDeviceManager.addMockDevice(usb.fakeDevices[0]); | 72 usb.mockDeviceManager.addMockDevice(usb.fakeDevices[0]); |
| 70 usb.mockDeviceManager.removeMockDevice(usb.fakeDevices[0]); | 73 usb.mockDeviceManager.removeMockDevice(usb.fakeDevices[0]); |
| 71 return promise; | 74 return promise.then(device => { |
| 75 usb.assertDeviceInfoEquals(device, usb.fakeDevices[0]); |
| 76 return device.open().then(() => { |
| 77 assert_unreachable('should not be able to open a disconnected device'); |
| 78 }, error => { |
| 79 assert_equals(error.code, DOMException.NOT_FOUND_ERR); |
| 80 }); |
| 81 }); |
| 72 }, 'ondisconnect event is triggered by removing a device'); | 82 }, 'ondisconnect event is triggered by removing a device'); |
| 73 </script> | 83 </script> |
| OLD | NEW |