Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(471)

Side by Side Diff: chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_observer_unittest.cc

Issue 2152683004: Refactor PageLoadMetricsObserver completion callback policy (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@relevantloads
Patch Set: fix metric Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_ observer.h" 5 #include "chrome/browser/page_load_metrics/observers/from_gws_page_load_metrics_ observer.h"
6 6
7 #include "base/macros.h" 7 #include "base/macros.h"
8 #include "base/memory/ptr_util.h" 8 #include "base/memory/ptr_util.h"
9 #include "chrome/browser/page_load_metrics/observers/page_load_metrics_observer_ test_harness.h" 9 #include "chrome/browser/page_load_metrics/observers/page_load_metrics_observer_ test_harness.h"
10 #include "components/page_load_metrics/browser/page_load_metrics_util.h" 10 #include "components/page_load_metrics/browser/page_load_metrics_util.h"
(...skipping 656 matching lines...) Expand 10 before | Expand all | Expand 10 after
667 NavigateAndCommit(GURL("https://example.test")); 667 NavigateAndCommit(GURL("https://example.test"));
668 SimulateTimingWithFirstPaint(); 668 SimulateTimingWithFirstPaint();
669 // Simulate user interaction. 669 // Simulate user interaction.
670 SimulateMouseEvent(); 670 SimulateMouseEvent();
671 // Simulate closing the tab. 671 // Simulate closing the tab.
672 DeleteContents(); 672 DeleteContents();
673 histogram_tester().ExpectTotalCount( 673 histogram_tester().ExpectTotalCount(
674 internal::kHistogramFromGWSAbortCloseBeforeInteraction, 0); 674 internal::kHistogramFromGWSAbortCloseBeforeInteraction, 0);
675 } 675 }
676 676
677 TEST_F(FromGWSPageLoadMetricsObserverTest, Intent) {
678 NavigateAndCommit(GURL(kGoogleSearchResultsUrl));
679 NavigateAndCommit(GURL("intent://en.m.wikipedia.org/wiki/Test"));
680 SimulateTimingWithFirstPaint();
681 // Simulate closing the tab.
682 DeleteContents();
683 histogram_tester().ExpectTotalCount(
684 internal::kHistogramFromGWSAbortCloseBeforeInteraction, 0);
685 }
686
677 TEST_F(FromGWSPageLoadMetricsLoggerTest, IsGoogleSearchHostname) { 687 TEST_F(FromGWSPageLoadMetricsLoggerTest, IsGoogleSearchHostname) {
678 struct { 688 struct {
679 bool expected_result; 689 bool expected_result;
680 const char* url; 690 const char* url;
681 } test_cases[] = { 691 } test_cases[] = {
682 {true, "www.google.com"}, 692 {true, "www.google.com"},
683 {true, "www.google.co.uk"}, 693 {true, "www.google.co.uk"},
684 {true, "www.google.co.in"}, 694 {true, "www.google.co.in"},
685 {false, "other.google.com"}, 695 {false, "other.google.com"},
686 {false, "other.www.google.com"}, 696 {false, "other.www.google.com"},
(...skipping 136 matching lines...) Expand 10 before | Expand all | Expand 10 after
823 for (const auto& test : test_cases) { 833 for (const auto& test : test_cases) {
824 EXPECT_EQ(test.expected_result, 834 EXPECT_EQ(test.expected_result,
825 FromGWSPageLoadMetricsLogger::QueryContainsComponentPrefix( 835 FromGWSPageLoadMetricsLogger::QueryContainsComponentPrefix(
826 test.query, test.component)) 836 test.query, test.component))
827 << "For query: " << test.query << " with component: " << test.component; 837 << "For query: " << test.query << " with component: " << test.component;
828 } 838 }
829 } 839 }
830 840
831 TEST_F(FromGWSPageLoadMetricsLoggerTest, Basic) { 841 TEST_F(FromGWSPageLoadMetricsLoggerTest, Basic) {
832 FromGWSPageLoadMetricsLogger logger; 842 FromGWSPageLoadMetricsLogger logger;
833 ASSERT_FALSE(logger.ShouldLogMetrics(GURL(kExampleUrl))); 843 ASSERT_FALSE(logger.ShouldLogPostCommitMetrics(GURL(kExampleUrl)));
834 } 844 }
835 845
836 TEST_F(FromGWSPageLoadMetricsLoggerTest, NoPreviousPage) { 846 TEST_F(FromGWSPageLoadMetricsLoggerTest, NoPreviousPage) {
837 FromGWSPageLoadMetricsLogger logger; 847 FromGWSPageLoadMetricsLogger logger;
838 logger.SetPreviouslyCommittedUrl(GURL()); 848 logger.SetPreviouslyCommittedUrl(GURL());
839 logger.set_navigation_initiated_via_link(true); 849 logger.set_navigation_initiated_via_link(true);
840 ASSERT_FALSE(logger.ShouldLogMetrics(GURL(kExampleUrl))); 850 ASSERT_FALSE(logger.ShouldLogPostCommitMetrics(GURL(kExampleUrl)));
841 } 851 }
842 852
843 TEST_F(FromGWSPageLoadMetricsLoggerTest, NavigationNotInitiatedViaLink) { 853 TEST_F(FromGWSPageLoadMetricsLoggerTest, NavigationNotInitiatedViaLink) {
844 FromGWSPageLoadMetricsLogger logger; 854 FromGWSPageLoadMetricsLogger logger;
845 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl)); 855 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl));
846 logger.set_navigation_initiated_via_link(false); 856 logger.set_navigation_initiated_via_link(false);
847 ASSERT_FALSE(logger.ShouldLogMetrics(GURL(kExampleUrl))); 857 ASSERT_FALSE(logger.ShouldLogPostCommitMetrics(GURL(kExampleUrl)));
848 }
849
850 TEST_F(FromGWSPageLoadMetricsLoggerTest, ProvisionalNonHttpOrHttpsScheme) {
Charlie Harrison 2016/07/18 20:02:18 Looks like the test you added doesn't cover the sa
Bryan McQuade 2016/07/19 12:55:38 Ah, you mean it not being a provisional load? I ad
851 FromGWSPageLoadMetricsLogger logger;
852 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl));
853 logger.SetProvisionalUrl(GURL("intent://foo"));
854 ASSERT_FALSE(logger.ShouldLogMetrics(GURL::EmptyGURL()));
855 } 858 }
856 859
857 TEST_F(FromGWSPageLoadMetricsLoggerTest, ProvisionalFromGWS) { 860 TEST_F(FromGWSPageLoadMetricsLoggerTest, ProvisionalFromGWS) {
858 FromGWSPageLoadMetricsLogger logger; 861 FromGWSPageLoadMetricsLogger logger;
859 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl)); 862 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl));
860 logger.SetProvisionalUrl(GURL(kGoogleSearchResultsUrl)); 863 logger.SetProvisionalUrl(GURL(kGoogleSearchResultsUrl));
861 ASSERT_FALSE(logger.ShouldLogMetrics(GURL::EmptyGURL())); 864 ASSERT_FALSE(logger.ShouldLogFailedProvisionalLoadMetrics());
862 } 865 }
863 866
864 TEST_F(FromGWSPageLoadMetricsLoggerTest, ProvisionalNotFromGWS) { 867 TEST_F(FromGWSPageLoadMetricsLoggerTest, ProvisionalNotFromGWS) {
865 FromGWSPageLoadMetricsLogger logger; 868 FromGWSPageLoadMetricsLogger logger;
866 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl)); 869 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl));
867 logger.SetProvisionalUrl(GURL(kExampleUrl)); 870 logger.SetProvisionalUrl(GURL(kExampleUrl));
868 ASSERT_TRUE(logger.ShouldLogMetrics(GURL::EmptyGURL())); 871 ASSERT_TRUE(logger.ShouldLogFailedProvisionalLoadMetrics());
869 }
870
871 TEST_F(FromGWSPageLoadMetricsLoggerTest, ProvisionalIntent) {
872 FromGWSPageLoadMetricsLogger logger;
873 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl));
874 logger.SetProvisionalUrl(GURL("intent://en.m.wikipedia.org/wiki/Test"));
875 ASSERT_FALSE(logger.ShouldLogMetrics(GURL::EmptyGURL()));
876 } 872 }
877 873
878 TEST_F(FromGWSPageLoadMetricsLoggerTest, ProvisionalIgnoredAfterCommit1) { 874 TEST_F(FromGWSPageLoadMetricsLoggerTest, ProvisionalIgnoredAfterCommit1) {
879 FromGWSPageLoadMetricsLogger logger; 875 FromGWSPageLoadMetricsLogger logger;
880 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl)); 876 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl));
881 logger.SetProvisionalUrl(GURL(kExampleUrl)); 877 logger.SetProvisionalUrl(GURL(kExampleUrl));
882 logger.set_navigation_initiated_via_link(true); 878 logger.set_navigation_initiated_via_link(true);
883 ASSERT_FALSE(logger.ShouldLogMetrics(GURL(kGoogleSearchResultsUrl))); 879 ASSERT_FALSE(
880 logger.ShouldLogPostCommitMetrics(GURL(kGoogleSearchResultsUrl)));
884 } 881 }
885 882
886 TEST_F(FromGWSPageLoadMetricsLoggerTest, ProvisionalIgnoredAfterCommit2) { 883 TEST_F(FromGWSPageLoadMetricsLoggerTest, ProvisionalIgnoredAfterCommit2) {
887 FromGWSPageLoadMetricsLogger logger; 884 FromGWSPageLoadMetricsLogger logger;
888 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl)); 885 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl));
889 logger.SetProvisionalUrl(GURL(kGoogleSearchResultsUrl)); 886 logger.SetProvisionalUrl(GURL(kGoogleSearchResultsUrl));
890 logger.set_navigation_initiated_via_link(true); 887 logger.set_navigation_initiated_via_link(true);
891 ASSERT_TRUE(logger.ShouldLogMetrics(GURL(kExampleUrl))); 888 ASSERT_TRUE(logger.ShouldLogPostCommitMetrics(GURL(kExampleUrl)));
892 } 889 }
893 890
894 TEST_F(FromGWSPageLoadMetricsLoggerTest, NavigationFromSearch) { 891 TEST_F(FromGWSPageLoadMetricsLoggerTest, NavigationFromSearch) {
895 FromGWSPageLoadMetricsLogger logger; 892 FromGWSPageLoadMetricsLogger logger;
896 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl)); 893 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl));
897 logger.set_navigation_initiated_via_link(true); 894 logger.set_navigation_initiated_via_link(true);
898 ASSERT_TRUE(logger.ShouldLogMetrics(GURL(kExampleUrl))); 895 ASSERT_TRUE(logger.ShouldLogPostCommitMetrics(GURL(kExampleUrl)));
899 } 896 }
900 897
901 TEST_F(FromGWSPageLoadMetricsLoggerTest, NavigationToSearchHostname) { 898 TEST_F(FromGWSPageLoadMetricsLoggerTest, NavigationToSearchHostname) {
902 FromGWSPageLoadMetricsLogger logger; 899 FromGWSPageLoadMetricsLogger logger;
903 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl)); 900 logger.SetPreviouslyCommittedUrl(GURL(kGoogleSearchResultsUrl));
904 logger.set_navigation_initiated_via_link(true); 901 logger.set_navigation_initiated_via_link(true);
905 ASSERT_FALSE(logger.ShouldLogMetrics(GURL("https://www.google.com/about/"))); 902 ASSERT_FALSE(
903 logger.ShouldLogPostCommitMetrics(GURL("https://www.google.com/about/")));
906 } 904 }
907 905
908 TEST_F(FromGWSPageLoadMetricsLoggerTest, NavigationFromSearchRedirector) { 906 TEST_F(FromGWSPageLoadMetricsLoggerTest, NavigationFromSearchRedirector) {
909 FromGWSPageLoadMetricsLogger logger; 907 FromGWSPageLoadMetricsLogger logger;
910 logger.SetPreviouslyCommittedUrl( 908 logger.SetPreviouslyCommittedUrl(
911 GURL("https://www.google.com/url?source=web")); 909 GURL("https://www.google.com/url?source=web"));
912 logger.set_navigation_initiated_via_link(true); 910 logger.set_navigation_initiated_via_link(true);
913 ASSERT_TRUE(logger.ShouldLogMetrics(GURL(kExampleUrl))); 911 ASSERT_TRUE(logger.ShouldLogPostCommitMetrics(GURL(kExampleUrl)));
914 } 912 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698