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

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

Issue 2487553002: Moving new First Run to use per-profile value, rather than simply checking IsChromeFirstRun. (Closed)
Patch Set: Adding tests Created 4 years, 1 month 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"
11 11
12 TEST(StartupTabProviderTest, CheckStandardOnboardingTabPolicy) { 12 TEST(StartupTabProviderTest, CheckStandardOnboardingTabPolicy) {
13 StartupTabs output = 13 // Show welcome page to new unauthenticated profile on first run.
14 StartupTabProviderImpl::CheckStandardOnboardingTabPolicy(true); 14 StartupTabs output = StartupTabProviderImpl::CheckStandardOnboardingTabPolicy(
15 true, false, false, true);
15 16
16 ASSERT_EQ(1U, output.size()); 17 ASSERT_EQ(1U, output.size());
17 EXPECT_EQ(StartupTabProviderImpl::GetWelcomePageUrl(), output[0].url); 18 EXPECT_EQ(StartupTabProviderImpl::GetWelcomePageUrl(false), output[0].url);
19 EXPECT_FALSE(output[0].is_pinned);
20
21 // After first run, display welcome page using variant view.
22 output = StartupTabProviderImpl::CheckStandardOnboardingTabPolicy(
23 false, false, false, true);
24
25 ASSERT_EQ(1U, output.size());
26 EXPECT_EQ(StartupTabProviderImpl::GetWelcomePageUrl(true), output[0].url);
18 EXPECT_FALSE(output[0].is_pinned); 27 EXPECT_FALSE(output[0].is_pinned);
19 } 28 }
20 29
21 TEST(StartupTabProviderTest, CheckStandardOnboardingTabPolicy_FirstRunOnly) { 30 TEST(StartupTabProviderTest, CheckStandardOnboardingTabPolicy_Negative) {
22 StartupTabs output = 31 // Do not show the welcome page to the same profile twice.
23 StartupTabProviderImpl::CheckStandardOnboardingTabPolicy(false); 32 StartupTabs output = StartupTabProviderImpl::CheckStandardOnboardingTabPolicy(
33 true, true, false, true);
34
35 EXPECT_TRUE(output.empty());
36
37 // Do not show the welcome page to authenticated users.
38 output = StartupTabProviderImpl::CheckStandardOnboardingTabPolicy(true, false,
39 true, true);
40
41 EXPECT_TRUE(output.empty());
42
43 // Do not show the welcome page to profiles created before the page was
44 // introduced.
45 output = StartupTabProviderImpl::CheckStandardOnboardingTabPolicy(
46 true, false, false, false);
24 47
25 EXPECT_TRUE(output.empty()); 48 EXPECT_TRUE(output.empty());
26 } 49 }
27 50
28 TEST(StartupTabProviderTest, CheckMasterPrefsTabPolicy) { 51 TEST(StartupTabProviderTest, CheckMasterPrefsTabPolicy) {
29 std::vector<GURL> input = {GURL(base::ASCIIToUTF16("https://new_tab_page")), 52 std::vector<GURL> input = {GURL(base::ASCIIToUTF16("https://new_tab_page")),
30 GURL(base::ASCIIToUTF16("https://www.google.com")), 53 GURL(base::ASCIIToUTF16("https://www.google.com")),
31 GURL(base::ASCIIToUTF16("https://welcome_page"))}; 54 GURL(base::ASCIIToUTF16("https://welcome_page"))};
32 55
33 StartupTabs output = 56 StartupTabs output =
34 StartupTabProviderImpl::CheckMasterPrefsTabPolicy(true, input); 57 StartupTabProviderImpl::CheckMasterPrefsTabPolicy(true, input);
35 58
36 ASSERT_EQ(3U, output.size()); 59 ASSERT_EQ(3U, output.size());
37 EXPECT_EQ(GURL(chrome::kChromeUINewTabURL), output[0].url); 60 EXPECT_EQ(GURL(chrome::kChromeUINewTabURL), output[0].url);
38 EXPECT_FALSE(output[0].is_pinned); 61 EXPECT_FALSE(output[0].is_pinned);
39 EXPECT_EQ(input[1], output[1].url); 62 EXPECT_EQ(input[1], output[1].url);
40 EXPECT_FALSE(output[1].is_pinned); 63 EXPECT_FALSE(output[1].is_pinned);
41 EXPECT_EQ(StartupTabProviderImpl::GetWelcomePageUrl(), output[2].url); 64 EXPECT_EQ(StartupTabProviderImpl::GetWelcomePageUrl(false), output[2].url);
42 EXPECT_FALSE(output[2].is_pinned); 65 EXPECT_FALSE(output[2].is_pinned);
43 } 66 }
44 67
45 TEST(StartupTabProviderTest, CheckMasterPrefsTabPolicy_FirstRunOnly) { 68 TEST(StartupTabProviderTest, CheckMasterPrefsTabPolicy_FirstRunOnly) {
46 std::vector<GURL> input = { 69 std::vector<GURL> input = {
47 GURL(base::ASCIIToUTF16("https://www.google.com"))}; 70 GURL(base::ASCIIToUTF16("https://www.google.com"))};
48 71
49 StartupTabs output = 72 StartupTabs output =
50 StartupTabProviderImpl::CheckMasterPrefsTabPolicy(false, input); 73 StartupTabProviderImpl::CheckMasterPrefsTabPolicy(false, input);
51 74
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
139 } 162 }
140 163
141 TEST(StartupTabProviderTest, CheckNewTabPageTabPolicy_Negative) { 164 TEST(StartupTabProviderTest, CheckNewTabPageTabPolicy_Negative) {
142 SessionStartupPref pref_last(SessionStartupPref::Type::LAST); 165 SessionStartupPref pref_last(SessionStartupPref::Type::LAST);
143 166
144 StartupTabs output = 167 StartupTabs output =
145 StartupTabProviderImpl::CheckNewTabPageTabPolicy(pref_last); 168 StartupTabProviderImpl::CheckNewTabPageTabPolicy(pref_last);
146 169
147 ASSERT_TRUE(output.empty()); 170 ASSERT_TRUE(output.empty());
148 } 171 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698