| OLD | NEW |
| (Empty) | |
| 1 // Copyright (c) 2016 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. |
| 4 |
| 5 #include "chrome/browser/extensions/extension_with_management_policy_apitest.h" |
| 6 |
| 7 #include "chrome/browser/extensions/api/permissions/permissions_api.h" |
| 8 #include "chrome/browser/extensions/extension_apitest.h" |
| 9 #include "chrome/browser/extensions/extension_management_test_util.h" |
| 10 #include "chrome/browser/profiles/profile.h" |
| 11 #include "chrome/browser/ui/browser.h" |
| 12 #include "components/policy/core/browser/browser_policy_connector.h" |
| 13 #include "components/policy/core/common/mock_configuration_policy_provider.h" |
| 14 #include "extensions/browser/extension_prefs.h" |
| 15 #include "extensions/common/permissions/permission_set.h" |
| 16 #include "extensions/common/switches.h" |
| 17 #include "net/dns/mock_host_resolver.h" |
| 18 |
| 19 ExtensionApiTestWithManagementPolicy::ExtensionApiTestWithManagementPolicy() |
| 20 : ExtensionApiTest() {} |
| 21 |
| 22 ExtensionApiTestWithManagementPolicy::~ExtensionApiTestWithManagementPolicy() {} |
| 23 |
| 24 |
| 25 void ExtensionApiTestWithManagementPolicy::SetUpInProcessBrowserTestFixture() { |
| 26 ExtensionApiTest::SetUpInProcessBrowserTestFixture(); |
| 27 embedded_test_server()->RegisterRequestMonitor( |
| 28 base::Bind(&ExtensionApiTestWithManagementPolicy::MonitorRequestHandler, |
| 29 base::Unretained(this))); |
| 30 EXPECT_CALL(policy_provider_, IsInitializationComplete(testing::_)) |
| 31 .WillRepeatedly(testing::Return(true)); |
| 32 policy_provider_.SetAutoRefresh(); |
| 33 policy::BrowserPolicyConnector::SetPolicyProviderForTesting( |
| 34 &policy_provider_); |
| 35 |
| 36 } |
| 37 |
| 38 void ExtensionApiTestWithManagementPolicy::MonitorRequestHandler( |
| 39 const net::test_server::HttpRequest& request) { |
| 40 auto host = request.headers.find("Host"); |
| 41 if (host != request.headers.end()) { |
| 42 ManagementPolicyRequestLog log; |
| 43 size_t delimiter_pos = host->second.find(":"); |
| 44 log.host = host->second.substr(0, delimiter_pos); |
| 45 request_log_.push_back(log); |
| 46 } |
| 47 } |
| 48 |
| 49 bool ExtensionApiTestWithManagementPolicy::BrowsedTo(const char* test_host) { |
| 50 for (auto it = request_log_.begin(); it != request_log_.end(); ++it) { |
| 51 if (it->host == test_host) |
| 52 return true; |
| 53 } |
| 54 return false; |
| 55 } |
| 56 |
| 57 void ExtensionApiTestWithManagementPolicy::ClearRequestLog() { |
| 58 request_log_.clear(); |
| 59 } |
| 60 |
| OLD | NEW |