Chromium Code Reviews| Index: chrome/browser/extensions/extension_with_management_policy_apitest.h |
| diff --git a/chrome/browser/extensions/extension_with_management_policy_apitest.h b/chrome/browser/extensions/extension_with_management_policy_apitest.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..687287128caa894f90bd8afc8c0af18811ac5a1f |
| --- /dev/null |
| +++ b/chrome/browser/extensions/extension_with_management_policy_apitest.h |
| @@ -0,0 +1,45 @@ |
| +// Copyright 2016 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CHROME_BROWSER_EXTENSIONS_EXTENSION_WITH_MANAGEMENT_POLICY_APITEST_H_ |
| +#define CHROME_BROWSER_EXTENSIONS_EXTENSION_WITH_MANAGEMENT_POLICY_APITEST_H_ |
| + |
| +#include "chrome/browser/extensions/api/permissions/permissions_api.h" |
|
dcheng
2017/02/06 07:05:29
A lot of these headers look like they should be in
nrpeter
2017/02/06 22:53:15
Done.
|
| +#include "chrome/browser/extensions/extension_apitest.h" |
| +#include "chrome/browser/extensions/extension_management_test_util.h" |
| +#include "chrome/browser/profiles/profile.h" |
| +#include "chrome/browser/ui/browser.h" |
| +#include "components/policy/core/browser/browser_policy_connector.h" |
| +#include "components/policy/core/common/mock_configuration_policy_provider.h" |
| +#include "extensions/browser/extension_prefs.h" |
| +#include "extensions/common/permissions/permission_set.h" |
| +#include "extensions/common/switches.h" |
| +#include "net/dns/mock_host_resolver.h" |
| +#include "net/test/embedded_test_server/http_request.h" |
| + |
| +struct ManagementPolicyRequestLog { |
| + std::string all_headers; |
| + std::string host; |
| +}; |
| + |
| +// The ExtensionSettings policy affects host permissions which impacts several |
| +// API integration tests. This class enables easy declaration of |
| +// ExtensionSettings policies and functions commonly used during these tests. |
| +class ExtensionApiTestWithManagementPolicy : public ExtensionApiTest { |
| + public: |
| + ExtensionApiTestWithManagementPolicy(); |
| + ~ExtensionApiTestWithManagementPolicy() override; |
| + void SetUpInProcessBrowserTestFixture() override; |
| + |
| + protected: |
| + void MonitorRequestHandler(const net::test_server::HttpRequest& request); |
| + bool BrowsedTo(const char* test_host); |
| + void ClearRequestLog(); |
| + policy::MockConfigurationPolicyProvider policy_provider_; |
| + |
| + private: |
| + std::vector<ManagementPolicyRequestLog> request_log_; |
| +}; |
| + |
| +#endif // CHROME_BROWSER_EXTENSIONS_EXTENSION_WITH_MANAGEMENT_POLICY_APITEST_H_ |