1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57
|
// Copyright 2012 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_TEST_BASE_CHROME_RENDER_VIEW_TEST_H_
#define CHROME_TEST_BASE_CHROME_RENDER_VIEW_TEST_H_
#include <memory>
#include "base/memory/raw_ptr.h"
#include "content/public/test/render_view_test.h"
#include "services/service_manager/public/cpp/binder_registry.h"
#include "third_party/blink/public/common/associated_interfaces/associated_interface_registry.h"
class ChromeContentRendererClient;
namespace autofill {
class AutofillAgent;
class TestPasswordAutofillAgent;
class PasswordGenerationAgent;
} // namespace autofill
// This test fixture emulates a single RenderView within the main test process.
// Since it does everything in a single process, tests based on this fixture do
// not cover code related to Chrome's multiprocess architecture, such as
// sandboxing. InProcessBrowserTest is a better fixture for integration tests
// that care about multiple processes.
class ChromeRenderViewTest : public content::RenderViewTest {
public:
ChromeRenderViewTest();
~ChromeRenderViewTest() override;
protected:
// testing::Test
void SetUp() override;
void TearDown() override;
content::ContentClient* CreateContentClient() override;
content::ContentBrowserClient* CreateContentBrowserClient() override;
content::ContentRendererClient* CreateContentRendererClient() override;
// Called from SetUp(). Override to register mojo interfaces.
virtual void RegisterMainFrameRemoteInterfaces();
// Initializes commonly needed global state and renderer client parts.
// Use when overriding CreateContentRendererClient.
void InitChromeContentRendererClient(ChromeContentRendererClient* client);
raw_ptr<autofill::TestPasswordAutofillAgent> password_autofill_agent_ =
nullptr;
raw_ptr<autofill::PasswordGenerationAgent> password_generation_ = nullptr;
raw_ptr<autofill::AutofillAgent> autofill_agent_ = nullptr;
std::unique_ptr<service_manager::BinderRegistry> registry_;
blink::AssociatedInterfaceRegistry associated_interfaces_;
};
#endif // CHROME_TEST_BASE_CHROME_RENDER_VIEW_TEST_H_
|