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

Side by Side Diff: chrome/browser/ui/startup/startup_tab_provider_unittest.cc

Issue 2635773003: Implement Win 10 onboarding content logic (Closed)
Patch Set: Created 3 years, 11 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 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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/ui/startup/startup_tab_provider.h" 5 #include "chrome/browser/ui/startup/startup_tab_provider.h"
6 6
7 #include "base/strings/utf_string_conversions.h" 7 #include "base/strings/utf_string_conversions.h"
8 #include "chrome/common/url_constants.h" 8 #include "chrome/common/url_constants.h"
9 #include "testing/gtest/include/gtest/gtest.h" 9 #include "testing/gtest/include/gtest/gtest.h"
10 #include "url/gurl.h" 10 #include "url/gurl.h"
(...skipping 23 matching lines...) Expand all
34 34
35 EXPECT_TRUE(output.empty()); 35 EXPECT_TRUE(output.empty());
36 36
37 // Do not show the welcome page to authenticated users. 37 // Do not show the welcome page to authenticated users.
38 output = StartupTabProviderImpl::CheckStandardOnboardingTabPolicy(true, false, 38 output = StartupTabProviderImpl::CheckStandardOnboardingTabPolicy(true, false,
39 true); 39 true);
40 40
41 EXPECT_TRUE(output.empty()); 41 EXPECT_TRUE(output.empty());
42 } 42 }
43 43
44 #if defined(OS_WIN)
45 TEST(StartupTabProviderTest, CheckWin10OnboardingTabPolicy) {
46 // Show Win 10 Welcome page if it has not been seen, but the standard page
47 // has.
48 StartupTabs output = StartupTabProviderImpl::CheckWin10OnboardingTabPolicy(
49 true, true, false, false, false);
50
51 ASSERT_EQ(1U, output.size());
52 EXPECT_EQ(StartupTabProviderImpl::GetWin10WelcomePageUrl(false),
53 output[0].url);
54 EXPECT_FALSE(output[0].is_pinned);
55
56 // Show standard Welcome page if the Win 10 Welcome page has been seen, but
57 // the standard page has not.
58 output = StartupTabProviderImpl::CheckWin10OnboardingTabPolicy(
59 true, false, true, false, false);
60
61 ASSERT_EQ(1U, output.size());
62 EXPECT_EQ(StartupTabProviderImpl::GetWelcomePageUrl(false), output[0].url);
63 EXPECT_FALSE(output[0].is_pinned);
64
65 // If neither page has been seen, the Win 10 Welcome page takes precedence
66 // this launch.
67 output = StartupTabProviderImpl::CheckWin10OnboardingTabPolicy(
68 true, false, false, false, false);
69
70 ASSERT_EQ(1U, output.size());
71 EXPECT_EQ(StartupTabProviderImpl::GetWin10WelcomePageUrl(false),
72 output[0].url);
73 EXPECT_FALSE(output[0].is_pinned);
74 }
75
76 TEST(StartupTabProviderTest, CheckWin10OnboardingTabPolicy_LaterRunVariant) {
77 // Show a variant of the Win 10 Welcome page after first run, if it has not
78 // been seen.
79 StartupTabs output = StartupTabProviderImpl::CheckWin10OnboardingTabPolicy(
80 false, false, false, false, false);
81
82 ASSERT_EQ(1U, output.size());
83 EXPECT_EQ(StartupTabProviderImpl::GetWin10WelcomePageUrl(true),
84 output[0].url);
85 EXPECT_FALSE(output[0].is_pinned);
86
87 // Show a variant of the standard Welcome page after first run, if the Win 10
88 // Welcome page has already been seen but the standard has not.
89 output = StartupTabProviderImpl::CheckWin10OnboardingTabPolicy(
90 false, false, true, false, false);
91
92 ASSERT_EQ(1U, output.size());
93 EXPECT_EQ(StartupTabProviderImpl::GetWelcomePageUrl(true), output[0].url);
94 EXPECT_FALSE(output[0].is_pinned);
95 }
96
97 TEST(StartupTabProviderTest, CheckWin10OnboardingTabPolicy_Negative) {
98 // Do not show either page if it has already been shown.
99 StartupTabs output = StartupTabProviderImpl::CheckWin10OnboardingTabPolicy(
100 true, true, true, false, false);
101
102 EXPECT_TRUE(output.empty());
103
104 // If Chrome is already the default browser, don't show the Win 10 Welcome
105 // page, and don't preempt the standard Welcome page.
106 output = StartupTabProviderImpl::CheckWin10OnboardingTabPolicy(
107 true, false, false, false, true);
108
109 ASSERT_EQ(1U, output.size());
110 EXPECT_EQ(StartupTabProviderImpl::GetWelcomePageUrl(false), output[0].url);
111 EXPECT_FALSE(output[0].is_pinned);
112
113 // If the user is signed in, block showing the standard Welcome page.
114 output = StartupTabProviderImpl::CheckWin10OnboardingTabPolicy(
115 true, false, true, true, false);
116
117 EXPECT_TRUE(output.empty());
118 }
119 #endif
120
44 TEST(StartupTabProviderTest, CheckMasterPrefsTabPolicy) { 121 TEST(StartupTabProviderTest, CheckMasterPrefsTabPolicy) {
45 std::vector<GURL> input = {GURL(base::ASCIIToUTF16("https://new_tab_page")), 122 std::vector<GURL> input = {GURL(base::ASCIIToUTF16("https://new_tab_page")),
46 GURL(base::ASCIIToUTF16("https://www.google.com")), 123 GURL(base::ASCIIToUTF16("https://www.google.com")),
47 GURL(base::ASCIIToUTF16("https://welcome_page"))}; 124 GURL(base::ASCIIToUTF16("https://welcome_page"))};
48 125
49 StartupTabs output = 126 StartupTabs output =
50 StartupTabProviderImpl::CheckMasterPrefsTabPolicy(true, input); 127 StartupTabProviderImpl::CheckMasterPrefsTabPolicy(true, input);
51 128
52 ASSERT_EQ(3U, output.size()); 129 ASSERT_EQ(3U, output.size());
53 EXPECT_EQ(GURL(chrome::kChromeUINewTabURL), output[0].url); 130 EXPECT_EQ(GURL(chrome::kChromeUINewTabURL), output[0].url);
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
155 } 232 }
156 233
157 TEST(StartupTabProviderTest, CheckNewTabPageTabPolicy_Negative) { 234 TEST(StartupTabProviderTest, CheckNewTabPageTabPolicy_Negative) {
158 SessionStartupPref pref_last(SessionStartupPref::Type::LAST); 235 SessionStartupPref pref_last(SessionStartupPref::Type::LAST);
159 236
160 StartupTabs output = 237 StartupTabs output =
161 StartupTabProviderImpl::CheckNewTabPageTabPolicy(pref_last); 238 StartupTabProviderImpl::CheckNewTabPageTabPolicy(pref_last);
162 239
163 ASSERT_TRUE(output.empty()); 240 ASSERT_TRUE(output.empty());
164 } 241 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/startup/startup_tab_provider.cc ('k') | chrome/browser/ui/webui/welcome_win10_ui.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698