Index: chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc |
diff --git a/chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc b/chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc |
index ddd6cb8957531a8b6c00a4f6c600fb4849e6b2ff..f10fe938396f34791f08543fe05d60b8468faa5f 100644 |
--- a/chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc |
+++ b/chrome/browser/page_load_metrics/page_load_metrics_browsertest.cc |
@@ -4,8 +4,11 @@ |
#include "base/macros.h" |
#include "base/test/histogram_tester.h" |
+#include "chrome/browser/page_load_metrics/metrics_web_contents_observer.h" |
#include "chrome/browser/page_load_metrics/observers/core_page_load_metrics_observer.h" |
#include "chrome/browser/page_load_metrics/observers/document_write_page_load_metrics_observer.h" |
+#include "chrome/browser/ui/browser.h" |
+#include "chrome/browser/ui/tabs/tab_strip_model.h" |
#include "chrome/common/url_constants.h" |
#include "chrome/test/base/in_process_browser_test.h" |
#include "chrome/test/base/ui_test_utils.h" |
@@ -35,6 +38,22 @@ IN_PROC_BROWSER_TEST_F(MetricsWebContentsObserverBrowserTest, NoNavigation) { |
histogram_tester_.ExpectTotalCount(internal::kHistogramFirstLayout, 0); |
} |
+IN_PROC_BROWSER_TEST_F(MetricsWebContentsObserverBrowserTest, GetAllObservers) { |
+ ASSERT_TRUE(embedded_test_server()->Start()); |
+ |
+ ASSERT_FALSE( |
+ page_load_metrics::MetricsWebContentsObserver::GetAllObservers().empty()); |
+ |
+ TabStripModel* tab_strip_model = browser()->tab_strip_model(); |
+ content::WebContentsDestroyedWatcher destroyed_watcher( |
+ tab_strip_model->GetActiveWebContents()); |
+ tab_strip_model->CloseAllTabs(); |
+ destroyed_watcher.Wait(); |
+ |
+ ASSERT_TRUE( |
+ page_load_metrics::MetricsWebContentsObserver::GetAllObservers().empty()); |
+} |
+ |
IN_PROC_BROWSER_TEST_F(MetricsWebContentsObserverBrowserTest, NewPage) { |
ASSERT_TRUE(embedded_test_server()->Start()); |