| // Copyright 2017 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/signin/signin_promo.h" |
| |
| #include "build/build_config.h" |
| #include "build/chromeos_buildflags.h" |
| #include "chrome/common/webui_url_constants.h" |
| #include "testing/gtest/include/gtest/gtest.h" |
| #include "url/gurl.h" |
| |
| namespace signin { |
| |
| #if !BUILDFLAG(IS_CHROMEOS_ASH) |
| TEST(SigninPromoTest, TestPromoURL) { |
| GURL::Replacements replace_query; |
| replace_query.SetQueryStr("access_point=0&reason=0&auto_close=1"); |
| EXPECT_EQ( |
| GURL(chrome::kChromeUIChromeSigninURL).ReplaceComponents(replace_query), |
| GetEmbeddedPromoURL(signin_metrics::AccessPoint::ACCESS_POINT_START_PAGE, |
| signin_metrics::Reason::REASON_SIGNIN_PRIMARY_ACCOUNT, |
| true)); |
| replace_query.SetQueryStr("access_point=15&reason=3"); |
| EXPECT_EQ( |
| GURL(chrome::kChromeUIChromeSigninURL).ReplaceComponents(replace_query), |
| GetEmbeddedPromoURL( |
| signin_metrics::AccessPoint::ACCESS_POINT_SIGNIN_PROMO, |
| signin_metrics::Reason::REASON_UNLOCK, false)); |
| } |
| |
| TEST(SigninPromoTest, TestReauthURL) { |
| GURL::Replacements replace_query; |
| replace_query.SetQueryStr( |
| "access_point=0&reason=3&auto_close=1" |
| "&email=example%40domain.com&validateEmail=1" |
| "&readOnlyEmail=1"); |
| EXPECT_EQ( |
| GURL(chrome::kChromeUIChromeSigninURL).ReplaceComponents(replace_query), |
| GetEmbeddedReauthURLWithEmail( |
| signin_metrics::AccessPoint::ACCESS_POINT_START_PAGE, |
| signin_metrics::Reason::REASON_UNLOCK, "example@domain.com")); |
| } |
| #endif // !BUILDFLAG(IS_CHROMEOS_ASH) |
| |
| TEST(SigninPromoTest, SigninURLForDice) { |
| EXPECT_EQ( |
| "https://accounts.google.com/signin/chrome/sync?ssp=1&" |
| "email_hint=email%40gmail.com&continue=https%3A%2F%2Fcontinue_url%2F", |
| GetChromeSyncURLForDice("email@gmail.com", "https://continue_url/")); |
| EXPECT_EQ( |
| "https://accounts.google.com/AddSession?" |
| "Email=email%40gmail.com&continue=https%3A%2F%2Fcontinue_url%2F", |
| GetAddAccountURLForDice("email@gmail.com", "https://continue_url/")); |
| } |
| |
| } // namespace signin |