| Index: chrome/browser/ui/startup/startup_tab_provider_unittest.cc
|
| diff --git a/chrome/browser/ui/startup/startup_tab_provider_unittest.cc b/chrome/browser/ui/startup/startup_tab_provider_unittest.cc
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..b5b271cc7ff60e338d3807d034cdcc068db11945
|
| --- /dev/null
|
| +++ b/chrome/browser/ui/startup/startup_tab_provider_unittest.cc
|
| @@ -0,0 +1,65 @@
|
| +// Copyright 2016 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#include "chrome/browser/ui/startup/startup_tab_provider.h"
|
| +
|
| +#include "base/strings/utf_string_conversions.h"
|
| +#include "chrome/common/url_constants.h"
|
| +#include "testing/gtest/include/gtest/gtest.h"
|
| +#include "url/gurl.h"
|
| +
|
| +class StartupTabProviderTest : public testing::Test {};
|
| +
|
| +TEST(StartupTabProviderTest, CheckStandardOnboardingTabPolicy) {
|
| + StartupTabs output =
|
| + StartupTabProviderImpl::CheckStandardOnboardingTabPolicy(true);
|
| + ASSERT_EQ(1U, output.size());
|
| + EXPECT_EQ(GetWelcomePageUrl().host(), output[0].url.host());
|
| + EXPECT_FALSE(output[0].is_pinned);
|
| +}
|
| +
|
| +TEST(StartupTabProviderTest, CheckStandardOnboardingTabPolicy_FirstRunOnly) {
|
| + StartupTabs output =
|
| + StartupTabProviderImpl::CheckStandardOnboardingTabPolicy(false);
|
| + ASSERT_TRUE(output.empty());
|
| +}
|
| +
|
| +TEST(StartupTabProviderTest, CheckMasterPrefsTabPolicy) {
|
| + std::vector<GURL> input;
|
| + input.push_back(GURL(base::ASCIIToUTF16("https://new_tab_page")));
|
| + input.push_back(GURL(base::ASCIIToUTF16("https://www.google.com")));
|
| + input.push_back(GURL(base::ASCIIToUTF16("https://welcome_page")));
|
| +
|
| + StartupTabs output =
|
| + StartupTabProviderImpl::CheckMasterPrefsTabPolicy(true, input);
|
| +
|
| + ASSERT_EQ(3U, output.size());
|
| + EXPECT_EQ(GURL(chrome::kChromeUINewTabURL).host(), output[0].url.host());
|
| + EXPECT_FALSE(output[0].is_pinned);
|
| + EXPECT_EQ("www.google.com", output[1].url.host());
|
| + EXPECT_FALSE(output[0].is_pinned);
|
| + EXPECT_EQ(GetWelcomePageUrl().host(), output[2].url.host());
|
| + EXPECT_FALSE(output[0].is_pinned);
|
| +}
|
| +
|
| +TEST(StartupTabProviderTest, CheckMasterPrefsTabPolicy_FirstRunOnly) {
|
| + std::vector<GURL> input;
|
| + input.push_back(GURL(base::ASCIIToUTF16("https://www.google.com")));
|
| + StartupTabs output =
|
| + StartupTabProviderImpl::CheckMasterPrefsTabPolicy(false, input);
|
| + EXPECT_TRUE(output.empty());
|
| +}
|
| +
|
| +TEST(StartupTabProviderTest, CheckResetTriggerTabPolicy) {
|
| + StartupTabs output = StartupTabProviderImpl::CheckResetTriggerTabPolicy(true);
|
| + ASSERT_EQ(1U, output.size());
|
| + EXPECT_EQ(GetTriggeredResetSettingsUrl().host(), output[0].url.host());
|
| + EXPECT_FALSE(output[0].is_pinned);
|
| +}
|
| +
|
| +TEST(StartupTabProviderTest, CheckResetTriggerTabPolicy_Negative) {
|
| + StartupTabs output =
|
| + StartupTabProviderImpl::CheckResetTriggerTabPolicy(false);
|
| + ASSERT_TRUE(output.empty());
|
| +}
|
|
|