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

Unified Diff: chrome/browser/extensions/extension_with_management_policy_apitest.cc

Issue 2934583002: Reland: chrome.webRequest support for ExtensionSettings (Closed)
Patch Set: Fix flaky test ExtensionApiTestWithManagementPolicy.InitiatorProtectedByPolicy Created 3 years, 6 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
Index: chrome/browser/extensions/extension_with_management_policy_apitest.cc
diff --git a/chrome/browser/extensions/extension_with_management_policy_apitest.cc b/chrome/browser/extensions/extension_with_management_policy_apitest.cc
index 3cce777284e06d2bc196b03ccb3fa69d81dca117..3b77f73d5e6f344e9b2a1dd59f5eeb5622d81c1b 100644
--- a/chrome/browser/extensions/extension_with_management_policy_apitest.cc
+++ b/chrome/browser/extensions/extension_with_management_policy_apitest.cc
@@ -14,6 +14,9 @@ ExtensionApiTestWithManagementPolicy::~ExtensionApiTestWithManagementPolicy() {}
void ExtensionApiTestWithManagementPolicy::SetUpInProcessBrowserTestFixture() {
ExtensionApiTest::SetUpInProcessBrowserTestFixture();
+ embedded_test_server()->RegisterRequestMonitor(
+ base::Bind(&ExtensionApiTestWithManagementPolicy::MonitorRequestHandler,
+ base::Unretained(this)));
EXPECT_CALL(policy_provider_, IsInitializationComplete(testing::_))
.WillRepeatedly(testing::Return(true));
policy_provider_.SetAutoRefresh();
@@ -25,3 +28,26 @@ void ExtensionApiTestWithManagementPolicy::SetUpOnMainThread() {
ExtensionApiTest::SetUpOnMainThread();
host_resolver()->AddRule("*", "127.0.0.1");
}
+
+void ExtensionApiTestWithManagementPolicy::MonitorRequestHandler(
+ const net::test_server::HttpRequest& request) {
+ auto host = request.headers.find("Host");
+ if (host != request.headers.end()) {
+ ManagementPolicyRequestLog log;
+ size_t delimiter_pos = host->second.find(":");
+ log.host = host->second.substr(0, delimiter_pos);
+ request_log_.push_back(log);
+ }
+}
+
+bool ExtensionApiTestWithManagementPolicy::BrowsedTo(
+ const std::string& test_host) {
+ return std::find_if(request_log_.begin(), request_log_.end(),
+ [test_host](const ManagementPolicyRequestLog& log) {
+ return log.host == test_host;
+ }) != request_log_.end();
+}
+
+void ExtensionApiTestWithManagementPolicy::ClearRequestLog() {
+ request_log_.clear();
+}

Powered by Google App Engine
This is Rietveld 408576698