1 // META: script=/webusb/resources/fake-devices.js
2 // META: script=/webusb/resources/usb-helpers.js
6 let { device } = await getFakeDevice();
7 let configuration = new USBConfiguration(
8 device, device.configurations[1].configurationValue);
9 let usbInterface = new USBInterface(
10 configuration, configuration.interfaces[0].interfaceNumber);
11 let alternateInterface = new USBAlternateInterface(
12 usbInterface, usbInterface.alternates[1].alternateSetting);
13 assertDeviceInfoEquals(
15 fakeDeviceInit.configurations[1].interfaces[0].alternates[1]);
16 }, 'Can construct a USBAlternateInterface.');
18 usb_test(async () => {
19 let { device } = await getFakeDevice();
20 let configuration = new USBConfiguration(
21 device, device.configurations[1].configurationValue);
22 let usbInterface = new USBInterface(
23 configuration, configuration.interfaces[0].interfaceNumber);
25 let alternateInterface = new USBAlternateInterface(
26 usbInterface, usbInterface.alternates.length);
28 'USBAlternateInterface should reject an invalid alternate setting');
30 assert_equals(error.name, 'RangeError');
32 }, 'Constructing a USBAlternateInterface with an invalid alternate setting ' +
33 'throws a range error.');