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

Side by Side Diff: chrome/browser/rlz/rlz_unittest.cc

Issue 292983003: Use different Access Point on iOS for phone and tablet (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 7 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
« no previous file with comments | « chrome/browser/rlz/rlz_mac.cc ('k') | chrome/browser/rlz/rlz_win.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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/rlz/rlz.h" 5 #include "chrome/browser/rlz/rlz.h"
6 6
7 #include "base/memory/scoped_ptr.h" 7 #include "base/memory/scoped_ptr.h"
8 #include "base/strings/utf_string_conversions.h" 8 #include "base/strings/utf_string_conversions.h"
9 #include "chrome/browser/chrome_notification_types.h" 9 #include "chrome/browser/chrome_notification_types.h"
10 #include "chrome/browser/google/google_util.h" 10 #include "chrome/browser/google/google_util.h"
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after
136 136
137 virtual bool SendFinancialPing(const std::string& brand, 137 virtual bool SendFinancialPing(const std::string& brand,
138 const base::string16& lang, 138 const base::string16& lang,
139 const base::string16& referral) OVERRIDE { 139 const base::string16& referral) OVERRIDE {
140 // Don't ping the server during tests, just pretend as if we did. 140 // Don't ping the server during tests, just pretend as if we did.
141 EXPECT_FALSE(brand.empty()); 141 EXPECT_FALSE(brand.empty());
142 pinged_brands_.insert(brand); 142 pinged_brands_.insert(brand);
143 143
144 // Set new access points RLZ string, like the actual server ping would have 144 // Set new access points RLZ string, like the actual server ping would have
145 // done. 145 // done.
146 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, 146 rlz_lib::SetAccessPointRlz(RLZTracker::ChromeOmnibox(),
147 kNewOmniboxRlzString); 147 kNewOmniboxRlzString);
148 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_HOME_PAGE, 148 rlz_lib::SetAccessPointRlz(RLZTracker::ChromeHomePage(),
149 kNewHomepageRlzString); 149 kNewHomepageRlzString);
150 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_APP_LIST, 150 rlz_lib::SetAccessPointRlz(RLZTracker::ChromeAppList(),
151 kNewAppListRlzString); 151 kNewAppListRlzString);
152 return true; 152 return true;
153 } 153 }
154 154
155 std::set<std::string> pinged_brands_; 155 std::set<std::string> pinged_brands_;
156 bool assume_not_ui_thread_; 156 bool assume_not_ui_thread_;
157 157
158 DISALLOW_COPY_AND_ASSIGN(TestRLZTracker); 158 DISALLOW_COPY_AND_ASSIGN(TestRLZTracker);
159 }; 159 };
160 160
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after
345 const char kHomepageFirstSeach[] = "CBF"; 345 const char kHomepageFirstSeach[] = "CBF";
346 346
347 const char kAppListInstall[] = "CCI"; 347 const char kAppListInstall[] = "CCI";
348 const char kAppListSetToGoogle[] = "CCS"; 348 const char kAppListSetToGoogle[] = "CCS";
349 const char kAppListFirstSearch[] = "CCF"; 349 const char kAppListFirstSearch[] = "CCF";
350 #endif 350 #endif
351 351
352 const base::TimeDelta kDelay = base::TimeDelta::FromMilliseconds(20); 352 const base::TimeDelta kDelay = base::TimeDelta::FromMilliseconds(20);
353 353
354 TEST_F(RlzLibTest, RecordProductEvent) { 354 TEST_F(RlzLibTest, RecordProductEvent) {
355 RLZTracker::RecordProductEvent(rlz_lib::CHROME, RLZTracker::CHROME_OMNIBOX, 355 RLZTracker::RecordProductEvent(rlz_lib::CHROME, RLZTracker::ChromeOmnibox(),
356 rlz_lib::FIRST_SEARCH); 356 rlz_lib::FIRST_SEARCH);
357 357
358 ExpectEventRecorded(kOmniboxFirstSearch, true); 358 ExpectEventRecorded(kOmniboxFirstSearch, true);
359 } 359 }
360 360
361 TEST_F(RlzLibTest, QuickStopAfterStart) { 361 TEST_F(RlzLibTest, QuickStopAfterStart) {
362 TestRLZTracker::InitRlzDelayed(true, false, kDelay, true, true, true); 362 TestRLZTracker::InitRlzDelayed(true, false, kDelay, true, true, true);
363 363
364 // Omnibox events. 364 // Omnibox events.
365 ExpectEventRecorded(kOmniboxInstall, false); 365 ExpectEventRecorded(kOmniboxInstall, false);
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
463 ExpectEventRecorded(kAppListInstall, true); 463 ExpectEventRecorded(kAppListInstall, true);
464 ExpectEventRecorded(kAppListSetToGoogle, false); 464 ExpectEventRecorded(kAppListSetToGoogle, false);
465 ExpectEventRecorded(kAppListFirstSearch, false); 465 ExpectEventRecorded(kAppListFirstSearch, false);
466 466
467 ExpectRlzPingSent(true); 467 ExpectRlzPingSent(true);
468 } 468 }
469 469
470 TEST_F(RlzLibTest, DelayedInitOnlyNoFirstRun) { 470 TEST_F(RlzLibTest, DelayedInitOnlyNoFirstRun) {
471 // Set some dummy RLZ strings to simulate that we already ran before and 471 // Set some dummy RLZ strings to simulate that we already ran before and
472 // performed a successful ping to the RLZ server. 472 // performed a successful ping to the RLZ server.
473 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, kOmniboxRlzString); 473 rlz_lib::SetAccessPointRlz(RLZTracker::ChromeOmnibox(), kOmniboxRlzString);
474 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_HOME_PAGE, kHomepageRlzString); 474 rlz_lib::SetAccessPointRlz(RLZTracker::ChromeHomePage(), kHomepageRlzString);
475 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_APP_LIST, kAppListRlzString); 475 rlz_lib::SetAccessPointRlz(RLZTracker::ChromeAppList(), kAppListRlzString);
476 476
477 TestRLZTracker::InitRlzDelayed(false, false, kDelay, true, true, true); 477 TestRLZTracker::InitRlzDelayed(false, false, kDelay, true, true, true);
478 InvokeDelayedInit(); 478 InvokeDelayedInit();
479 479
480 // Omnibox events. 480 // Omnibox events.
481 ExpectEventRecorded(kOmniboxInstall, true); 481 ExpectEventRecorded(kOmniboxInstall, true);
482 ExpectEventRecorded(kOmniboxSetToGoogle, false); 482 ExpectEventRecorded(kOmniboxSetToGoogle, false);
483 ExpectEventRecorded(kOmniboxFirstSearch, false); 483 ExpectEventRecorded(kOmniboxFirstSearch, false);
484 484
485 // Home page events. 485 // Home page events.
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after
716 // App list events. 716 // App list events.
717 ExpectEventRecorded(kAppListInstall, false); 717 ExpectEventRecorded(kAppListInstall, false);
718 ExpectEventRecorded(kAppListSetToGoogle, false); 718 ExpectEventRecorded(kAppListSetToGoogle, false);
719 ExpectEventRecorded(kAppListFirstSearch, true); 719 ExpectEventRecorded(kAppListFirstSearch, true);
720 720
721 ExpectRlzPingSent(false); 721 ExpectRlzPingSent(false);
722 } 722 }
723 723
724 TEST_F(RlzLibTest, GetAccessPointRlzOnIoThread) { 724 TEST_F(RlzLibTest, GetAccessPointRlzOnIoThread) {
725 // Set dummy RLZ string. 725 // Set dummy RLZ string.
726 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, kOmniboxRlzString); 726 rlz_lib::SetAccessPointRlz(RLZTracker::ChromeOmnibox(), kOmniboxRlzString);
727 727
728 base::string16 rlz; 728 base::string16 rlz;
729 729
730 tracker_.set_assume_not_ui_thread(true); 730 tracker_.set_assume_not_ui_thread(true);
731 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz)); 731 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::ChromeOmnibox(), &rlz));
732 EXPECT_STREQ(kOmniboxRlzString, base::UTF16ToUTF8(rlz).c_str()); 732 EXPECT_STREQ(kOmniboxRlzString, base::UTF16ToUTF8(rlz).c_str());
733 } 733 }
734 734
735 TEST_F(RlzLibTest, GetAccessPointRlzNotOnIoThread) { 735 TEST_F(RlzLibTest, GetAccessPointRlzNotOnIoThread) {
736 // Set dummy RLZ string. 736 // Set dummy RLZ string.
737 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, kOmniboxRlzString); 737 rlz_lib::SetAccessPointRlz(RLZTracker::ChromeOmnibox(), kOmniboxRlzString);
738 738
739 base::string16 rlz; 739 base::string16 rlz;
740 740
741 tracker_.set_assume_not_ui_thread(false); 741 tracker_.set_assume_not_ui_thread(false);
742 EXPECT_FALSE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz)); 742 EXPECT_FALSE(
743 RLZTracker::GetAccessPointRlz(RLZTracker::ChromeOmnibox(), &rlz));
743 } 744 }
744 745
745 TEST_F(RlzLibTest, GetAccessPointRlzIsCached) { 746 TEST_F(RlzLibTest, GetAccessPointRlzIsCached) {
746 // Set dummy RLZ string. 747 // Set dummy RLZ string.
747 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, kOmniboxRlzString); 748 rlz_lib::SetAccessPointRlz(RLZTracker::ChromeOmnibox(), kOmniboxRlzString);
748 749
749 base::string16 rlz; 750 base::string16 rlz;
750 751
751 tracker_.set_assume_not_ui_thread(false); 752 tracker_.set_assume_not_ui_thread(false);
752 EXPECT_FALSE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz)); 753 EXPECT_FALSE(
754 RLZTracker::GetAccessPointRlz(RLZTracker::ChromeOmnibox(), &rlz));
753 755
754 tracker_.set_assume_not_ui_thread(true); 756 tracker_.set_assume_not_ui_thread(true);
755 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz)); 757 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::ChromeOmnibox(), &rlz));
756 EXPECT_STREQ(kOmniboxRlzString, base::UTF16ToUTF8(rlz).c_str()); 758 EXPECT_STREQ(kOmniboxRlzString, base::UTF16ToUTF8(rlz).c_str());
757 759
758 tracker_.set_assume_not_ui_thread(false); 760 tracker_.set_assume_not_ui_thread(false);
759 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz)); 761 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::ChromeOmnibox(), &rlz));
760 EXPECT_STREQ(kOmniboxRlzString, base::UTF16ToUTF8(rlz).c_str()); 762 EXPECT_STREQ(kOmniboxRlzString, base::UTF16ToUTF8(rlz).c_str());
761 } 763 }
762 764
763 TEST_F(RlzLibTest, PingUpdatesRlzCache) { 765 TEST_F(RlzLibTest, PingUpdatesRlzCache) {
764 // Set dummy RLZ string. 766 // Set dummy RLZ string.
765 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, kOmniboxRlzString); 767 rlz_lib::SetAccessPointRlz(RLZTracker::ChromeOmnibox(), kOmniboxRlzString);
766 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_HOME_PAGE, kHomepageRlzString); 768 rlz_lib::SetAccessPointRlz(RLZTracker::ChromeHomePage(), kHomepageRlzString);
767 rlz_lib::SetAccessPointRlz(RLZTracker::CHROME_APP_LIST, kAppListRlzString); 769 rlz_lib::SetAccessPointRlz(RLZTracker::ChromeAppList(), kAppListRlzString);
768 770
769 base::string16 rlz; 771 base::string16 rlz;
770 772
771 // Prime the cache. 773 // Prime the cache.
772 tracker_.set_assume_not_ui_thread(true); 774 tracker_.set_assume_not_ui_thread(true);
773 775
774 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz)); 776 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::ChromeOmnibox(), &rlz));
775 EXPECT_STREQ(kOmniboxRlzString, base::UTF16ToUTF8(rlz).c_str()); 777 EXPECT_STREQ(kOmniboxRlzString, base::UTF16ToUTF8(rlz).c_str());
776 EXPECT_TRUE(RLZTracker::GetAccessPointRlz( 778 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(
777 RLZTracker::CHROME_HOME_PAGE, &rlz)); 779 RLZTracker::ChromeHomePage(), &rlz));
778 EXPECT_STREQ(kHomepageRlzString, base::UTF16ToUTF8(rlz).c_str()); 780 EXPECT_STREQ(kHomepageRlzString, base::UTF16ToUTF8(rlz).c_str());
779 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_APP_LIST, &rlz)); 781 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::ChromeAppList(), &rlz));
780 EXPECT_STREQ(kAppListRlzString, base::UTF16ToUTF8(rlz).c_str()); 782 EXPECT_STREQ(kAppListRlzString, base::UTF16ToUTF8(rlz).c_str());
781 783
782 // Make sure cache is valid. 784 // Make sure cache is valid.
783 tracker_.set_assume_not_ui_thread(false); 785 tracker_.set_assume_not_ui_thread(false);
784 786
785 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz)); 787 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::ChromeOmnibox(), &rlz));
786 EXPECT_STREQ(kOmniboxRlzString, base::UTF16ToUTF8(rlz).c_str()); 788 EXPECT_STREQ(kOmniboxRlzString, base::UTF16ToUTF8(rlz).c_str());
787 EXPECT_TRUE(RLZTracker::GetAccessPointRlz( 789 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(
788 RLZTracker::CHROME_HOME_PAGE, &rlz)); 790 RLZTracker::ChromeHomePage(), &rlz));
789 EXPECT_STREQ(kHomepageRlzString, base::UTF16ToUTF8(rlz).c_str()); 791 EXPECT_STREQ(kHomepageRlzString, base::UTF16ToUTF8(rlz).c_str());
790 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_APP_LIST, &rlz)); 792 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::ChromeAppList(), &rlz));
791 EXPECT_STREQ(kAppListRlzString, base::UTF16ToUTF8(rlz).c_str()); 793 EXPECT_STREQ(kAppListRlzString, base::UTF16ToUTF8(rlz).c_str());
792 794
793 // Perform ping. 795 // Perform ping.
794 tracker_.set_assume_not_ui_thread(true); 796 tracker_.set_assume_not_ui_thread(true);
795 TestRLZTracker::InitRlzDelayed(true, false, kDelay, true, true, false); 797 TestRLZTracker::InitRlzDelayed(true, false, kDelay, true, true, false);
796 InvokeDelayedInit(); 798 InvokeDelayedInit();
797 ExpectRlzPingSent(true); 799 ExpectRlzPingSent(true);
798 800
799 // Make sure cache is now updated. 801 // Make sure cache is now updated.
800 tracker_.set_assume_not_ui_thread(false); 802 tracker_.set_assume_not_ui_thread(false);
801 803
802 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_OMNIBOX, &rlz)); 804 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::ChromeOmnibox(), &rlz));
803 EXPECT_STREQ(kNewOmniboxRlzString, base::UTF16ToUTF8(rlz).c_str()); 805 EXPECT_STREQ(kNewOmniboxRlzString, base::UTF16ToUTF8(rlz).c_str());
804 EXPECT_TRUE(RLZTracker::GetAccessPointRlz( 806 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(
805 RLZTracker::CHROME_HOME_PAGE, &rlz)); 807 RLZTracker::ChromeHomePage(), &rlz));
806 EXPECT_STREQ(kNewHomepageRlzString, base::UTF16ToUTF8(rlz).c_str()); 808 EXPECT_STREQ(kNewHomepageRlzString, base::UTF16ToUTF8(rlz).c_str());
807 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::CHROME_APP_LIST, &rlz)); 809 EXPECT_TRUE(RLZTracker::GetAccessPointRlz(RLZTracker::ChromeAppList(), &rlz));
808 EXPECT_STREQ(kNewAppListRlzString, base::UTF16ToUTF8(rlz).c_str()); 810 EXPECT_STREQ(kNewAppListRlzString, base::UTF16ToUTF8(rlz).c_str());
809 } 811 }
810 812
811 TEST_F(RlzLibTest, ObserveHandlesBadArgs) { 813 TEST_F(RlzLibTest, ObserveHandlesBadArgs) {
812 scoped_ptr<NavigationEntry> entry(NavigationEntry::Create()); 814 scoped_ptr<NavigationEntry> entry(NavigationEntry::Create());
813 entry->SetPageID(0); 815 entry->SetPageID(0);
814 entry->SetTransitionType(content::PAGE_TRANSITION_LINK); 816 entry->SetTransitionType(content::PAGE_TRANSITION_LINK);
815 tracker_.Observe(content::NOTIFICATION_NAV_ENTRY_PENDING, 817 tracker_.Observe(content::NOTIFICATION_NAV_ENTRY_PENDING,
816 content::NotificationService::AllSources(), 818 content::NotificationService::AllSources(),
817 content::Details<NavigationEntry>(NULL)); 819 content::Details<NavigationEntry>(NULL));
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
861 TestRLZTracker::InitRlzDelayed(true, false, kDelay, true, true, false); 863 TestRLZTracker::InitRlzDelayed(true, false, kDelay, true, true, false);
862 InvokeDelayedInit(); 864 InvokeDelayedInit();
863 865
864 ExpectRlzPingSent(false); 866 ExpectRlzPingSent(false);
865 ExpectReactivationRlzPingSent(false); 867 ExpectReactivationRlzPingSent(false);
866 } 868 }
867 #endif // defined(OS_WIN) 869 #endif // defined(OS_WIN)
868 870
869 #if defined(OS_CHROMEOS) 871 #if defined(OS_CHROMEOS)
870 TEST_F(RlzLibTest, ClearRlzState) { 872 TEST_F(RlzLibTest, ClearRlzState) {
871 RLZTracker::RecordProductEvent(rlz_lib::CHROME, RLZTracker::CHROME_OMNIBOX, 873 RLZTracker::RecordProductEvent(rlz_lib::CHROME, RLZTracker::ChromeOmnibox(),
872 rlz_lib::FIRST_SEARCH); 874 rlz_lib::FIRST_SEARCH);
873 875
874 ExpectEventRecorded(kOmniboxFirstSearch, true); 876 ExpectEventRecorded(kOmniboxFirstSearch, true);
875 877
876 RLZTracker::ClearRlzState(); 878 RLZTracker::ClearRlzState();
877 879
878 ExpectEventRecorded(kOmniboxFirstSearch, false); 880 ExpectEventRecorded(kOmniboxFirstSearch, false);
879 } 881 }
880 #endif // defined(OS_CHROMEOS) 882 #endif // defined(OS_CHROMEOS)
OLDNEW
« no previous file with comments | « chrome/browser/rlz/rlz_mac.cc ('k') | chrome/browser/rlz/rlz_win.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698