26 lines
955 B
JavaScript
26 lines
955 B
JavaScript
// META: script=/resources/test-only-api.js
|
|
// META: script=/webusb/resources/fake-devices.js
|
|
// META: script=/webusb/resources/usb-helpers.js
|
|
'use strict';
|
|
|
|
usb_test(async () => {
|
|
const {device} = await getFakeDevice();
|
|
await device.open();
|
|
|
|
for (const configuration of device.configurations) {
|
|
await device.selectConfiguration(configuration.configurationValue);
|
|
assert_equals(device.configuration, configuration);
|
|
|
|
for (const interfaceObj of configuration.interfaces) {
|
|
await device.claimInterface(interfaceObj.interfaceNumber);
|
|
|
|
for (const alternate of interfaceObj.alternates) {
|
|
await device.selectAlternateInterface(
|
|
interfaceObj.interfaceNumber, alternate.alternateSetting);
|
|
assert_equals(interfaceObj.alternate, alternate);
|
|
}
|
|
await device.releaseInterface(interfaceObj.interfaceNumber);
|
|
}
|
|
}
|
|
await device.close();
|
|
}, '[SameObject] test for instances within USBDevice.');
|