| OLD | NEW |
| (Empty) | |
| 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 |
| 3 // found in the LICENSE file. |
| 4 |
| 5 #include <string> |
| 6 |
| 7 #include "chrome/browser/ui/auto_login_prompter.h" |
| 8 #include "testing/gtest/include/gtest/gtest.h" |
| 9 |
| 10 class AutoLoginPrompterTest : public testing::Test { |
| 11 protected: |
| 12 typedef AutoLoginPrompter::Params Params; |
| 13 |
| 14 static bool ParseAutoLoginHeader(const std::string& input, Params* output) { |
| 15 return AutoLoginPrompter::ParseAutoLoginHeader(input, output); |
| 16 } |
| 17 }; |
| 18 |
| 19 TEST_F(AutoLoginPrompterTest, ParseAutoLoginHeader) { |
| 20 std::string header = |
| 21 "realm=com.google&" |
| 22 "account=fred.example%40gmail.com&" |
| 23 "args=kfdshfwoeriudslkfsdjfhdskjfhsdkr"; |
| 24 |
| 25 Params params; |
| 26 EXPECT_TRUE(ParseAutoLoginHeader(header, ¶ms)); |
| 27 |
| 28 ASSERT_EQ("com.google", params.realm); |
| 29 ASSERT_EQ("fred.example@gmail.com", params.account); |
| 30 ASSERT_EQ("kfdshfwoeriudslkfsdjfhdskjfhsdkr", params.args); |
| 31 } |
| 32 |
| 33 TEST_F(AutoLoginPrompterTest, ParseAutoLoginHeaderOnlySupportsComGoogle) { |
| 34 std::string header = |
| 35 "realm=com.microsoft&" |
| 36 "account=fred.example%40gmail.com&" |
| 37 "args=kfdshfwoeriudslkfsdjfhdskjfhsdkr"; |
| 38 |
| 39 Params params; |
| 40 EXPECT_FALSE(ParseAutoLoginHeader(header, ¶ms)); |
| 41 } |
| 42 |
| 43 TEST_F(AutoLoginPrompterTest, ParseAutoLoginHeaderWithMissingRealm) { |
| 44 std::string header = |
| 45 "account=fred.example%40gmail.com&" |
| 46 "args=kfdshfwoeriudslkfsdjfhdskjfhsdkr"; |
| 47 |
| 48 Params params; |
| 49 EXPECT_FALSE(ParseAutoLoginHeader(header, ¶ms)); |
| 50 } |
| 51 |
| 52 TEST_F(AutoLoginPrompterTest, ParseAutoLoginHeaderWithMissingArgs) { |
| 53 std::string header = |
| 54 "realm=com.google&" |
| 55 "account=fred.example%40gmail.com&"; |
| 56 |
| 57 Params params; |
| 58 EXPECT_FALSE(ParseAutoLoginHeader(header, ¶ms)); |
| 59 } |
| 60 |
| 61 TEST_F(AutoLoginPrompterTest, ParseAutoLoginHeaderWithoutOptionalAccount) { |
| 62 std::string header = |
| 63 "realm=com.google&" |
| 64 "args=kfdshfwoeriudslkfsdjfhdskjfhsdkr"; |
| 65 |
| 66 Params params; |
| 67 EXPECT_TRUE(ParseAutoLoginHeader(header, ¶ms)); |
| 68 ASSERT_EQ("com.google", params.realm); |
| 69 ASSERT_EQ("kfdshfwoeriudslkfsdjfhdskjfhsdkr", params.args); |
| 70 } |
| OLD | NEW |