Backed out changeset 48baafc34055 (bug 1789166) for causing mochitests failures....
[gecko.git] / testing / web-platform / tests / webusb / usbEndpoint.https.any.js
blobc987e4c33359f00c2a89e2d92e5e21fd9b71ab17
1 // META: script=/resources/test-only-api.js
2 // META: script=/webusb/resources/fake-devices.js
3 // META: script=/webusb/resources/usb-helpers.js
4 'use strict';
6 usb_test(async () => {
7   let { device } = await getFakeDevice();
8   let configuration = new USBConfiguration(
9       device, device.configurations[1].configurationValue);
10   let usbInterface = new USBInterface(
11       configuration, configuration.interfaces[0].interfaceNumber);
12   let alternateInterface = new USBAlternateInterface(
13       usbInterface, usbInterface.alternates[1].alternateSetting);
14   let inEndpoint = new USBEndpoint(
15       alternateInterface, alternateInterface.endpoints[0].endpointNumber, 'in');
16   let outEndpoint = new USBEndpoint(
17       alternateInterface,
18       alternateInterface.endpoints[1].endpointNumber,
19       'out');
20   assertDeviceInfoEquals(
21       inEndpoint,
22       fakeDeviceInit.configurations[1].interfaces[0].alternates[1]
23           .endpoints[0]);
24   assertDeviceInfoEquals(
25       outEndpoint,
26       fakeDeviceInit.configurations[1].interfaces[0].alternates[1]
27           .endpoints[1]);
28 }, 'Can construct a USBEndpoint.');
30 usb_test(async () => {
31   let { device } = await getFakeDevice();
32   let configuration = new USBConfiguration(
33       device, device.configurations[1].configurationValue);
34   let usbInterface = new USBInterface(
35       configuration, configuration.interfaces[0].interfaceNumber);
36   let alternateInterface = new USBAlternateInterface(
37       usbInterface, usbInterface.alternates[1].alternateSetting);
38   try {
39     let endpoint = new USBEndpoint(
40         alternateInterface, alternateInterface.endpoints.length, 'in');
41     assert_unreached('USBEndpoint should reject an invalid endpoint number');
42   } catch (error) {
43     assert_equals(error.name, 'RangeError');
44   }
45 }, 'Constructing a USBEndpoint with an invalid endpoint number  throws a ' +
46     'range error.');