diff options
author | reillyg <reillyg@chromium.org> | 2016-03-15 12:47:06 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-03-15 19:48:11 +0000 |
commit | cc9b0c5fa36368bb012b4b4d572ada52ceb1146b (patch) | |
tree | 5cd24491c7188fb4702d69a9e08053ad3c53eb16 /third_party/WebKit/LayoutTests/usb/resources/usb-helpers.js | |
parent | 8b58c0d445772371cba4da0000f78917a12c79bc (diff) | |
download | chromium_src-cc9b0c5fa36368bb012b4b4d572ada52ceb1146b.zip chromium_src-cc9b0c5fa36368bb012b4b4d572ada52ceb1146b.tar.gz chromium_src-cc9b0c5fa36368bb012b4b4d572ada52ceb1146b.tar.bz2 |
Track USB device configuration state in Blink.
Blink now tracks the currently selected device configuration and can
thus provide it as an IDL attribute without a getConfiguration() method
which has been removed.
This continues the trend of being able to handle errors in Blink before
calling methods on the Mojo interface.
BUG=593164
R=juncai@chromium.org
TBR=dgozman@chromium.org
Review URL: https://codereview.chromium.org/1784733002
Cr-Commit-Position: refs/heads/master@{#381288}
Diffstat (limited to 'third_party/WebKit/LayoutTests/usb/resources/usb-helpers.js')
-rw-r--r-- | third_party/WebKit/LayoutTests/usb/resources/usb-helpers.js | 29 |
1 files changed, 20 insertions, 9 deletions
diff --git a/third_party/WebKit/LayoutTests/usb/resources/usb-helpers.js b/third_party/WebKit/LayoutTests/usb/resources/usb-helpers.js index e2148c6..faf30ac 100644 --- a/third_party/WebKit/LayoutTests/usb/resources/usb-helpers.js +++ b/third_party/WebKit/LayoutTests/usb/resources/usb-helpers.js @@ -160,9 +160,8 @@ function usbMocks(mojo) { claimInterface(interfaceNumber) { assert_true(this.opened_); - - if (this.currentConfiguration_ === undefined) - return Promise.resolve({ success: false }); + assert_true(this.currentConfiguration_ !== undefined, + 'device configured'); if (this.claimedInterfaces_.has(interfaceNumber)) return Promise.resolve({ success: false }); @@ -178,9 +177,8 @@ function usbMocks(mojo) { releaseInterface(interfaceNumber) { assert_true(this.opened_); - - if (this.currentConfiguration_ === undefined) - return Promise.resolve({ success: false }); + assert_true(this.currentConfiguration_ !== undefined, + 'device configured'); if (this.claimedInterfaces_.has(interfaceNumber)) { this.claimedInterfaces_.delete(interfaceNumber); @@ -192,9 +190,8 @@ function usbMocks(mojo) { setInterfaceAlternateSetting(interfaceNumber, alternateSetting) { assert_true(this.opened_); - - if (this.currentConfiguration_ === undefined) - return Promise.resolve({ success: false }); + assert_true(this.currentConfiguration_ !== undefined, + 'device configured'); if (!this.claimedInterfaces_.has(interfaceNumber)) return Promise.resolve({ success: false }); @@ -220,12 +217,16 @@ function usbMocks(mojo) { clearHalt(endpoint) { assert_true(this.opened_); + assert_true(this.currentConfiguration_ !== undefined, + 'device configured'); // TODO(reillyg): Check that endpoint is valid. return Promise.resolve({ success: true }); } controlTransferIn(params, length, timeout) { assert_true(this.opened_); + assert_true(this.currentConfiguration_ !== undefined, + 'device configured'); return Promise.resolve({ status: device.TransferStatus.OK, data: [length >> 8, length & 0xff, params.request, params.value >> 8, @@ -235,6 +236,8 @@ function usbMocks(mojo) { controlTransferOut(params, data, timeout) { assert_true(this.opened_); + assert_true(this.currentConfiguration_ !== undefined, + 'device configured'); return Promise.resolve({ status: device.TransferStatus.OK, bytesWritten: data.byteLength @@ -243,6 +246,8 @@ function usbMocks(mojo) { genericTransferIn(endpointNumber, length, timeout) { assert_true(this.opened_); + assert_true(this.currentConfiguration_ !== undefined, + 'device configured'); // TODO(reillyg): Check that endpoint is valid. let data = new Array(length); for (let i = 0; i < length; ++i) @@ -255,6 +260,8 @@ function usbMocks(mojo) { genericTransferOut(endpointNumber, data, timeout) { assert_true(this.opened_); + assert_true(this.currentConfiguration_ !== undefined, + 'device configured'); // TODO(reillyg): Check that endpoint is valid. return Promise.resolve({ status: device.TransferStatus.OK, @@ -264,6 +271,8 @@ function usbMocks(mojo) { isochronousTransferIn(endpointNumber, packetLengths, timeout) { assert_true(this.opened_); + assert_true(this.currentConfiguration_ !== undefined, + 'device configured'); // TODO(reillyg): Check that endpoint is valid. let data = new Array(packetLengths.reduce((a, b) => a + b, 0)); let dataOffset = 0; @@ -282,6 +291,8 @@ function usbMocks(mojo) { isochronousTransferOut(endpointNumber, data, packetLengths, timeout) { assert_true(this.opened_); + assert_true(this.currentConfiguration_ !== undefined, + 'device configured'); // TODO(reillyg): Check that endpoint is valid. let packets = new Array(packetLengths.length); for (let i = 0; i < packetLengths.length; ++i) { |