#include "chrome/renderer/chrome_render_frame_observer.h"
#include <string>
#include <tuple>
#include "base/command_line.h"
#include "base/functional/bind.h"
#include "base/functional/callback.h"
#include "base/run_loop.h"
#include "base/strings/strcat.h"
#include "base/strings/utf_string_conversions.h"
#include "base/test/metrics/histogram_tester.h"
#include "base/test/scoped_feature_list.h"
#include "chrome/common/chrome_switches.h"
#include "chrome/test/base/chrome_render_view_test.h"
#include "components/no_state_prefetch/renderer/no_state_prefetch_helper.h"
#include "components/optimization_guide/content/renderer/page_text_agent.h"
#include "components/safe_browsing/content/renderer/phishing_classifier/scorer.h"
#include "components/safe_browsing/core/common/proto/client_model.pb.h"
#include "components/translate/content/common/translate.mojom.h"
#include "components/translate/content/renderer/translate_agent.h"
#include "components/translate/core/common/translate_constants.h"
#include "components/translate/core/common/translate_util.h"
#include "content/public/renderer/render_frame.h"
#include "mojo/public/cpp/bindings/pending_receiver.h"
#include "mojo/public/cpp/bindings/pending_remote.h"
#include "mojo/public/cpp/bindings/receiver.h"
#include "mojo/public/cpp/bindings/receiver_set.h"
#include "mojo/public/cpp/bindings/remote.h"
#include "third_party/blink/public/common/associated_interfaces/associated_interface_provider.h"
#include "third_party/blink/public/platform/browser_interface_broker_proxy.h"
#include "third_party/blink/public/web/web_frame_widget.h"
#include "third_party/blink/public/web/web_local_frame.h"
#include "third_party/blink/public/web/web_view.h"
namespace {
class FakeContentTranslateDriver
: public translate::mojom::ContentTranslateDriver { … };
class TestOptGuideConsumer
: public optimization_guide::mojom::PageTextConsumer { … };
}
class ChromeRenderFrameObserverTest : public ChromeRenderViewTest { … };
TEST_F(ChromeRenderFrameObserverTest, CapturePageTextCalled) { … }
TEST_F(ChromeRenderFrameObserverTest, CapturePageTextNotCalledForSubframe) { … }
TEST_F(ChromeRenderFrameObserverTest,
CapturePageTextNotCalledForUpcomingNavigation) { … }
TEST_F(ChromeRenderFrameObserverTest,
CapturePageTextNotCalledForViewSourceMode) { … }
TEST_F(ChromeRenderFrameObserverTest,
CapturePageTextNotCalledForUnreachableURL) { … }
TEST_F(ChromeRenderFrameObserverTest,
CapturePageTextNotCalledForNoStatePrefetch) { … }
TEST_F(ChromeRenderFrameObserverTest, OptGuideGetsText) { … }