Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(90)

Unified Diff: chrome/browser/usb/usb_browsertest.cc

Issue 2815003005: Integrate WebUSB with Feature Policy (Closed)
Patch Set: Rebased Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/browser/DEPS ('k') | chrome/browser/usb/usb_chooser_controller.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/usb/usb_browsertest.cc
diff --git a/chrome/browser/usb/usb_browsertest.cc b/chrome/browser/usb/usb_browsertest.cc
index 6578749f16f634793abaf5f6d2dd3fdb3fb35d8f..011ac3566a35000db173d29d707aa254dbfa03ac 100644
--- a/chrome/browser/usb/usb_browsertest.cc
+++ b/chrome/browser/usb/usb_browsertest.cc
@@ -19,7 +19,6 @@
#include "device/usb/mock_usb_device.h"
#include "device/usb/mock_usb_service.h"
#include "device/usb/public/interfaces/chooser_service.mojom.h"
-#include "device/usb/webusb_descriptors.h"
#include "mojo/public/cpp/bindings/strong_binding.h"
#include "services/service_manager/public/cpp/bind_source_info.h"
#include "services/service_manager/public/cpp/binder_registry.h"
@@ -104,14 +103,6 @@ class WebUsbTest : public InProcessBrowserTest {
scoped_refptr<MockUsbDevice> mock_device(
new MockUsbDevice(0, 0, "Test Manufacturer", "Test Device", "123456"));
device_client_->usb_service()->AddDevice(mock_device);
-
- mock_device =
- new MockUsbDevice(1, 0, "Test Manufacturer", "Test Device", "ABCDEF");
- auto allowed_origins = base::MakeUnique<device::WebUsbAllowedOrigins>();
- allowed_origins->origins.push_back(
- embedded_test_server()->GetURL("localhost", "/").GetOrigin());
- mock_device->set_webusb_allowed_origins(std::move(allowed_origins));
- device_client_->usb_service()->AddDevice(mock_device);
}
private:
@@ -131,18 +122,7 @@ IN_PROC_BROWSER_TEST_F(WebUsbTest, RequestAndGetDevices) {
render_frame_host->GetInterfaceRegistry()->AddInterface(
base::Bind(&FakeChooserService::Create, render_frame_host));
- // The mock device with vendorId == 0 has no WebUSB allowed origin descriptor
- // but because this is a top level frame it will be allowed.
std::string result;
- EXPECT_TRUE(content::ExecuteScriptAndExtractString(
- web_contents,
- "navigator.usb.requestDevice({ filters: [ { vendorId: 0 } ] })"
- " .then(device => {"
- " domAutomationController.send(device.serialNumber);"
- " });",
- &result));
- EXPECT_EQ("123456", result);
-
EXPECT_TRUE(content::ExecuteScriptAndExtractString(
web_contents,
"navigator.usb.getDevices()"
@@ -150,48 +130,19 @@ IN_PROC_BROWSER_TEST_F(WebUsbTest, RequestAndGetDevices) {
" domAutomationController.send(devices.length.toString());"
" });",
&result));
- EXPECT_EQ("1", result);
-}
-
-IN_PROC_BROWSER_TEST_F(WebUsbTest, RequestAndGetDevicesInIframe) {
- ui_test_utils::NavigateToURL(
- browser(),
- embedded_test_server()->GetURL("localhost", "/page_with_iframe.html"));
- content::WebContents* web_contents =
- browser()->tab_strip_model()->GetActiveWebContents();
- RenderFrameHost* main_frame = web_contents->GetMainFrame();
- EXPECT_THAT(main_frame->GetLastCommittedOrigin().Serialize(),
- testing::StartsWith("http://localhost:"));
- RenderFrameHost* embedded_frame = ChildFrameAt(main_frame, 0);
- EXPECT_THAT(embedded_frame->GetLastCommittedOrigin().Serialize(),
- testing::StartsWith("http://localhost:"));
-
- embedded_frame->GetInterfaceRegistry()->AddInterface(
- base::Bind(&FakeChooserService::Create, embedded_frame));
+ EXPECT_EQ("0", result);
- // The mock device with vendorId == 0 has no allowed origin descriptor so an
- // embedded frame will not be able to select it.
- std::string result;
EXPECT_TRUE(content::ExecuteScriptAndExtractString(
- embedded_frame,
+ web_contents,
"navigator.usb.requestDevice({ filters: [ { vendorId: 0 } ] })"
- " .catch(e => { domAutomationController.send(e.toString()); });",
- &result));
- EXPECT_EQ("NotFoundError: No device selected.", result);
-
- // The mock device with vendorId == 1 does however have the embedded test
- // server listed as an allowed origin.
- EXPECT_TRUE(content::ExecuteScriptAndExtractString(
- embedded_frame,
- "navigator.usb.requestDevice({ filters: [ { vendorId: 1 } ] })"
" .then(device => {"
" domAutomationController.send(device.serialNumber);"
" });",
&result));
- EXPECT_EQ("ABCDEF", result);
+ EXPECT_EQ("123456", result);
EXPECT_TRUE(content::ExecuteScriptAndExtractString(
- embedded_frame,
+ web_contents,
"navigator.usb.getDevices()"
" .then(devices => {"
" domAutomationController.send(devices.length.toString());"
« no previous file with comments | « chrome/browser/DEPS ('k') | chrome/browser/usb/usb_chooser_controller.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698