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

Side by Side Diff: net/http/http_auth_sspi_win_unittest.cc

Issue 8340026: Use AuthCredentials throughout the network stack instead of username/password. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Fix comments Created 9 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
« no previous file with comments | « net/http/http_auth_sspi_win.cc ('k') | net/http/http_cache_transaction.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 "base/basictypes.h" 5 #include "base/basictypes.h"
6 #include "net/base/net_errors.h" 6 #include "net/base/net_errors.h"
7 #include "net/http/http_auth_sspi_win.h" 7 #include "net/http/http_auth_sspi_win.h"
8 #include "net/http/mock_sspi_library_win.h" 8 #include "net/http/mock_sspi_library_win.h"
9 #include "testing/gtest/include/gtest/gtest.h" 9 #include "testing/gtest/include/gtest/gtest.h"
10 10
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after
75 HttpAuthSSPI auth_sspi(&mock_library, "Negotiate", 75 HttpAuthSSPI auth_sspi(&mock_library, "Negotiate",
76 NEGOSSP_NAME, kMaxTokenLength); 76 NEGOSSP_NAME, kMaxTokenLength);
77 std::string first_challenge_text = "Negotiate"; 77 std::string first_challenge_text = "Negotiate";
78 HttpAuth::ChallengeTokenizer first_challenge(first_challenge_text.begin(), 78 HttpAuth::ChallengeTokenizer first_challenge(first_challenge_text.begin(),
79 first_challenge_text.end()); 79 first_challenge_text.end());
80 EXPECT_EQ(HttpAuth::AUTHORIZATION_RESULT_ACCEPT, 80 EXPECT_EQ(HttpAuth::AUTHORIZATION_RESULT_ACCEPT,
81 auth_sspi.ParseChallenge(&first_challenge)); 81 auth_sspi.ParseChallenge(&first_challenge));
82 82
83 // Generate an auth token and create another thing. 83 // Generate an auth token and create another thing.
84 std::string auth_token; 84 std::string auth_token;
85 EXPECT_EQ(OK, auth_sspi.GenerateAuthToken(NULL, NULL, 85 EXPECT_EQ(OK, auth_sspi.GenerateAuthToken(NULL, L"HTTP/intranet.google.com",
86 L"HTTP/intranet.google.com",
87 &auth_token)); 86 &auth_token));
88 87
89 std::string second_challenge_text = "Negotiate Zm9vYmFy"; 88 std::string second_challenge_text = "Negotiate Zm9vYmFy";
90 HttpAuth::ChallengeTokenizer second_challenge(second_challenge_text.begin(), 89 HttpAuth::ChallengeTokenizer second_challenge(second_challenge_text.begin(),
91 second_challenge_text.end()); 90 second_challenge_text.end());
92 EXPECT_EQ(HttpAuth::AUTHORIZATION_RESULT_ACCEPT, 91 EXPECT_EQ(HttpAuth::AUTHORIZATION_RESULT_ACCEPT,
93 auth_sspi.ParseChallenge(&second_challenge)); 92 auth_sspi.ParseChallenge(&second_challenge));
94 } 93 }
95 94
96 TEST(HttpAuthSSPITest, ParseChallenge_UnexpectedTokenFirstRound) { 95 TEST(HttpAuthSSPITest, ParseChallenge_UnexpectedTokenFirstRound) {
(...skipping 15 matching lines...) Expand all
112 MockSSPILibrary mock_library; 111 MockSSPILibrary mock_library;
113 HttpAuthSSPI auth_sspi(&mock_library, "Negotiate", 112 HttpAuthSSPI auth_sspi(&mock_library, "Negotiate",
114 NEGOSSP_NAME, kMaxTokenLength); 113 NEGOSSP_NAME, kMaxTokenLength);
115 std::string first_challenge_text = "Negotiate"; 114 std::string first_challenge_text = "Negotiate";
116 HttpAuth::ChallengeTokenizer first_challenge(first_challenge_text.begin(), 115 HttpAuth::ChallengeTokenizer first_challenge(first_challenge_text.begin(),
117 first_challenge_text.end()); 116 first_challenge_text.end());
118 EXPECT_EQ(HttpAuth::AUTHORIZATION_RESULT_ACCEPT, 117 EXPECT_EQ(HttpAuth::AUTHORIZATION_RESULT_ACCEPT,
119 auth_sspi.ParseChallenge(&first_challenge)); 118 auth_sspi.ParseChallenge(&first_challenge));
120 119
121 std::string auth_token; 120 std::string auth_token;
122 EXPECT_EQ(OK, auth_sspi.GenerateAuthToken(NULL, NULL, 121 EXPECT_EQ(OK, auth_sspi.GenerateAuthToken(NULL, L"HTTP/intranet.google.com",
123 L"HTTP/intranet.google.com",
124 &auth_token)); 122 &auth_token));
125 std::string second_challenge_text = "Negotiate"; 123 std::string second_challenge_text = "Negotiate";
126 HttpAuth::ChallengeTokenizer second_challenge(second_challenge_text.begin(), 124 HttpAuth::ChallengeTokenizer second_challenge(second_challenge_text.begin(),
127 second_challenge_text.end()); 125 second_challenge_text.end());
128 EXPECT_EQ(HttpAuth::AUTHORIZATION_RESULT_REJECT, 126 EXPECT_EQ(HttpAuth::AUTHORIZATION_RESULT_REJECT,
129 auth_sspi.ParseChallenge(&second_challenge)); 127 auth_sspi.ParseChallenge(&second_challenge));
130 } 128 }
131 129
132 TEST(HttpAuthSSPITest, ParseChallenge_NonBase64EncodedToken) { 130 TEST(HttpAuthSSPITest, ParseChallenge_NonBase64EncodedToken) {
133 // If a later-round challenge has an invalid base64 encoded token, it should 131 // If a later-round challenge has an invalid base64 encoded token, it should
134 // be treated as an invalid challenge. 132 // be treated as an invalid challenge.
135 MockSSPILibrary mock_library; 133 MockSSPILibrary mock_library;
136 HttpAuthSSPI auth_sspi(&mock_library, "Negotiate", 134 HttpAuthSSPI auth_sspi(&mock_library, "Negotiate",
137 NEGOSSP_NAME, kMaxTokenLength); 135 NEGOSSP_NAME, kMaxTokenLength);
138 std::string first_challenge_text = "Negotiate"; 136 std::string first_challenge_text = "Negotiate";
139 HttpAuth::ChallengeTokenizer first_challenge(first_challenge_text.begin(), 137 HttpAuth::ChallengeTokenizer first_challenge(first_challenge_text.begin(),
140 first_challenge_text.end()); 138 first_challenge_text.end());
141 EXPECT_EQ(HttpAuth::AUTHORIZATION_RESULT_ACCEPT, 139 EXPECT_EQ(HttpAuth::AUTHORIZATION_RESULT_ACCEPT,
142 auth_sspi.ParseChallenge(&first_challenge)); 140 auth_sspi.ParseChallenge(&first_challenge));
143 141
144 std::string auth_token; 142 std::string auth_token;
145 EXPECT_EQ(OK, auth_sspi.GenerateAuthToken(NULL, NULL, 143 EXPECT_EQ(OK, auth_sspi.GenerateAuthToken(NULL, L"HTTP/intranet.google.com",
146 L"HTTP/intranet.google.com",
147 &auth_token)); 144 &auth_token));
148 std::string second_challenge_text = "Negotiate =happyjoy="; 145 std::string second_challenge_text = "Negotiate =happyjoy=";
149 HttpAuth::ChallengeTokenizer second_challenge(second_challenge_text.begin(), 146 HttpAuth::ChallengeTokenizer second_challenge(second_challenge_text.begin(),
150 second_challenge_text.end()); 147 second_challenge_text.end());
151 EXPECT_EQ(HttpAuth::AUTHORIZATION_RESULT_INVALID, 148 EXPECT_EQ(HttpAuth::AUTHORIZATION_RESULT_INVALID,
152 auth_sspi.ParseChallenge(&second_challenge)); 149 auth_sspi.ParseChallenge(&second_challenge));
153 } 150 }
154 151
155 } // namespace net 152 } // namespace net
OLDNEW
« no previous file with comments | « net/http/http_auth_sspi_win.cc ('k') | net/http/http_cache_transaction.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698