Roll src/third_party/skia ef6c50a:d0fff5b
[chromium-blink-merge.git] / content / test / content_browser_sanity_checker.cc
blob3f8ed02b88ecdfe971539115338081f3158cbca1
1 // Copyright 2014 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.
5 #include "content/test/content_browser_sanity_checker.h"
7 #include "base/bind.h"
8 #include "content/browser/web_contents/web_contents_impl.h"
9 #include "content/test/web_contents_observer_sanity_checker.h"
11 namespace content {
13 namespace {
14 bool g_sanity_checks_already_enabled = false;
17 ContentBrowserSanityChecker::ContentBrowserSanityChecker() {
18 CHECK(!g_sanity_checks_already_enabled)
19 << "Tried to enable ContentBrowserSanityChecker, but it's already been "
20 << "enabled.";
21 g_sanity_checks_already_enabled = true;
23 creation_hook_ =
24 base::Bind(&ContentBrowserSanityChecker::OnWebContentsCreated,
25 base::Unretained(this));
26 WebContentsImpl::FriendZone::AddCreatedCallbackForTesting(creation_hook_);
29 ContentBrowserSanityChecker::~ContentBrowserSanityChecker() {
30 WebContentsImpl::FriendZone::RemoveCreatedCallbackForTesting(creation_hook_);
31 g_sanity_checks_already_enabled = false;
34 void ContentBrowserSanityChecker::OnWebContentsCreated(
35 WebContents* web_contents) {
36 WebContentsObserverSanityChecker::Enable(web_contents);
39 } // namespace content