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

Side by Side Diff: chrome/common/net/gaia/oauth_request_signer_unittest.cc

Issue 10413016: It seems GAIA had changed dosserver rules today, so we can go back to accounts.google.com. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 8 years, 7 months 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 | Annotate | Revision Log
« no previous file with comments | « chrome/common/net/gaia/google_service_auth_error.h ('k') | chrome/common/net/url_util.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Property Changes:
Added: svn:mergeinfo
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/common/net/gaia/oauth_request_signer.h" 5 #include "chrome/common/net/gaia/oauth_request_signer.h"
6 6
7 #include "googleurl/src/gurl.h" 7 #include "googleurl/src/gurl.h"
8 #include "testing/gtest/include/gtest/gtest.h" 8 #include "testing/gtest/include/gtest/gtest.h"
9 9
10 // This value is used to seed the PRNG at the beginning of a sequence of 10 // This value is used to seed the PRNG at the beginning of a sequence of
11 // operations to produce a repeatable sequence. 11 // operations to produce a repeatable sequence.
12 #define RANDOM_SEED (0x69E3C47D) 12 #define RANDOM_SEED (0x69E3C47D)
13 13
14 TEST(OAuthRequestSignerTest, Encode) { 14 TEST(OAuthRequestSignerTest, Encode) {
15 ASSERT_EQ(OAuthRequestSigner::Encode("ABCDEFGHIJKLMNOPQRSTUVWXYZ" 15 ASSERT_EQ(OAuthRequestSigner::Encode("ABCDEFGHIJKLMNOPQRSTUVWXYZ"
16 "abcdefghijklmnopqrstuvwxyz" 16 "abcdefghijklmnopqrstuvwxyz"
17 "0123456789" 17 "0123456789"
18 "-._~"), 18 "-._~"),
19 "ABCDEFGHIJKLMNOPQRSTUVWXYZ" 19 "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
20 "abcdefghijklmnopqrstuvwxyz" 20 "abcdefghijklmnopqrstuvwxyz"
21 "0123456789" 21 "0123456789"
22 "-._~"); 22 "-._~");
23 ASSERT_EQ(OAuthRequestSigner::Encode( 23 ASSERT_EQ(OAuthRequestSigner::Encode(
24 "https://www.google.com/accounts/OAuthLogin"), 24 "https://accounts.google.com/OAuthLogin"),
25 "https%3A%2F%2Fwww.google.com%2Faccounts%2FOAuthLogin"); 25 "https%3A%2F%2Faccounts.google.com%2FOAuthLogin");
26 ASSERT_EQ(OAuthRequestSigner::Encode("%"), "%25"); 26 ASSERT_EQ(OAuthRequestSigner::Encode("%"), "%25");
27 ASSERT_EQ(OAuthRequestSigner::Encode("%25"), "%2525"); 27 ASSERT_EQ(OAuthRequestSigner::Encode("%25"), "%2525");
28 ASSERT_EQ(OAuthRequestSigner::Encode( 28 ASSERT_EQ(OAuthRequestSigner::Encode(
29 "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed " 29 "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed "
30 "do eiusmod tempor incididunt ut labore et dolore magna " 30 "do eiusmod tempor incididunt ut labore et dolore magna "
31 "aliqua. Ut enim ad minim veniam, quis nostrud exercitation " 31 "aliqua. Ut enim ad minim veniam, quis nostrud exercitation "
32 "ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis " 32 "ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis "
33 "aute irure dolor in reprehenderit in voluptate velit esse " 33 "aute irure dolor in reprehenderit in voluptate velit esse "
34 "cillum dolore eu fugiat nulla pariatur. Excepteur sint " 34 "cillum dolore eu fugiat nulla pariatur. Excepteur sint "
35 "occaecat cupidatat non proident, sunt in culpa qui officia " 35 "occaecat cupidatat non proident, sunt in culpa qui officia "
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 std::string encoded = OAuthRequestSigner::Encode(text); 67 std::string encoded = OAuthRequestSigner::Encode(text);
68 std::string decoded; 68 std::string decoded;
69 ASSERT_TRUE(OAuthRequestSigner::Decode(encoded, &decoded)); 69 ASSERT_TRUE(OAuthRequestSigner::Decode(encoded, &decoded));
70 ASSERT_EQ(decoded, text); 70 ASSERT_EQ(decoded, text);
71 } 71 }
72 } 72 }
73 73
74 TEST(OAuthRequestSignerTest, SignGet1) { 74 TEST(OAuthRequestSignerTest, SignGet1) {
75 GURL request_url("https://www.google.com/accounts/o8/GetOAuthToken"); 75 GURL request_url("https://www.google.com/accounts/o8/GetOAuthToken");
76 OAuthRequestSigner::Parameters parameters; 76 OAuthRequestSigner::Parameters parameters;
77 parameters["scope"] = "https://www.google.com/accounts/OAuthLogin"; 77 parameters["scope"] = "https://accounts.google.com/OAuthLogin";
78 parameters["oauth_nonce"] = "2oiE_aHdk5qRTz0L9C8Lq0g"; 78 parameters["oauth_nonce"] = "2oiE_aHdk5qRTz0L9C8Lq0g";
79 parameters["xaouth_display_name"] = "Chromium"; 79 parameters["xaouth_display_name"] = "Chromium";
80 parameters["oauth_timestamp"] = "1308152953"; 80 parameters["oauth_timestamp"] = "1308152953";
81 std::string signed_text; 81 std::string signed_text;
82 ASSERT_TRUE(OAuthRequestSigner::SignURL( 82 ASSERT_TRUE(OAuthRequestSigner::SignURL(
83 request_url, 83 request_url,
84 parameters, 84 parameters,
85 OAuthRequestSigner::HMAC_SHA1_SIGNATURE, 85 OAuthRequestSigner::HMAC_SHA1_SIGNATURE,
86 OAuthRequestSigner::GET_METHOD, 86 OAuthRequestSigner::GET_METHOD,
87 "johndoe", // oauth_consumer_key 87 "johndoe", // oauth_consumer_key
88 "53cR3t", // consumer secret 88 "53cR3t", // consumer secret
89 "4/VGY0MsQadcmO8VnCv9gnhoEooq1v", // oauth_token 89 "4/VGY0MsQadcmO8VnCv9gnhoEooq1v", // oauth_token
90 "c5e0531ff55dfbb4054e", // token secret 90 "c5e0531ff55dfbb4054e", // token secret
91 &signed_text)); 91 &signed_text));
92 ASSERT_EQ("https://www.google.com/accounts/o8/GetOAuthToken" 92 ASSERT_EQ("https://www.google.com/accounts/o8/GetOAuthToken"
93 "?oauth_consumer_key=johndoe" 93 "?oauth_consumer_key=johndoe"
94 "&oauth_nonce=2oiE_aHdk5qRTz0L9C8Lq0g" 94 "&oauth_nonce=2oiE_aHdk5qRTz0L9C8Lq0g"
95 "&oauth_signature=y9GCmlGSvNuTAotxsBMyxb6j%2BE8%3D" 95 "&oauth_signature=PFqDTaiyey1UObcvOyI4Ng2HXW0%3D"
96 "&oauth_signature_method=HMAC-SHA1" 96 "&oauth_signature_method=HMAC-SHA1"
97 "&oauth_timestamp=1308152953" 97 "&oauth_timestamp=1308152953"
98 "&oauth_token=4%2FVGY0MsQadcmO8VnCv9gnhoEooq1v" 98 "&oauth_token=4%2FVGY0MsQadcmO8VnCv9gnhoEooq1v"
99 "&oauth_version=1.0" 99 "&oauth_version=1.0"
100 "&scope=https%3A%2F%2Fwww.google.com%2Faccounts%2FOAuthLogin" 100 "&scope=https%3A%2F%2Faccounts.google.com%2FOAuthLogin"
101 "&xaouth_display_name=Chromium", 101 "&xaouth_display_name=Chromium",
102 signed_text); 102 signed_text);
103 } 103 }
104 104
105 TEST(OAuthRequestSignerTest, SignGet2) { 105 TEST(OAuthRequestSignerTest, SignGet2) {
106 GURL request_url("https://www.google.com/accounts/OAuthGetAccessToken"); 106 GURL request_url("https://accounts.google.com/OAuthGetAccessToken");
107 OAuthRequestSigner::Parameters parameters; 107 OAuthRequestSigner::Parameters parameters;
108 parameters["oauth_timestamp"] = "1308147831"; 108 parameters["oauth_timestamp"] = "1308147831";
109 parameters["oauth_nonce"] = "4d4hZW9DygWQujP2tz06UN"; 109 parameters["oauth_nonce"] = "4d4hZW9DygWQujP2tz06UN";
110 std::string signed_text; 110 std::string signed_text;
111 ASSERT_TRUE(OAuthRequestSigner::SignURL( 111 ASSERT_TRUE(OAuthRequestSigner::SignURL(
112 request_url, 112 request_url,
113 parameters, 113 parameters,
114 OAuthRequestSigner::HMAC_SHA1_SIGNATURE, 114 OAuthRequestSigner::HMAC_SHA1_SIGNATURE,
115 OAuthRequestSigner::GET_METHOD, 115 OAuthRequestSigner::GET_METHOD,
116 "anonymous", // oauth_consumer_key 116 "anonymous", // oauth_consumer_key
117 "anonymous", // consumer secret 117 "anonymous", // consumer secret
118 "4/CcC-hgdj1TNnWaX8NTQ76YDXCBEK", // oauth_token 118 "4/CcC-hgdj1TNnWaX8NTQ76YDXCBEK", // oauth_token
119 "", // token secret 119 "", // token secret
120 &signed_text)); 120 &signed_text));
121 ASSERT_EQ(signed_text, 121 ASSERT_EQ(signed_text,
122 "https://www.google.com/accounts/OAuthGetAccessToken" 122 "https://accounts.google.com/OAuthGetAccessToken"
123 "?oauth_consumer_key=anonymous" 123 "?oauth_consumer_key=anonymous"
124 "&oauth_nonce=4d4hZW9DygWQujP2tz06UN" 124 "&oauth_nonce=4d4hZW9DygWQujP2tz06UN"
125 "&oauth_signature=2KVN8YCOKgiNIA16EGTcfESvdvA%3D" 125 "&oauth_signature=YiJv%2BEOWsvCDCi13%2FhQBFrr0J7c%3D"
126 "&oauth_signature_method=HMAC-SHA1" 126 "&oauth_signature_method=HMAC-SHA1"
127 "&oauth_timestamp=1308147831" 127 "&oauth_timestamp=1308147831"
128 "&oauth_token=4%2FCcC-hgdj1TNnWaX8NTQ76YDXCBEK" 128 "&oauth_token=4%2FCcC-hgdj1TNnWaX8NTQ76YDXCBEK"
129 "&oauth_version=1.0"); 129 "&oauth_version=1.0");
130 } 130 }
131 131
132 TEST(OAuthRequestSignerTest, ParseAndSignGet1) { 132 TEST(OAuthRequestSignerTest, ParseAndSignGet1) {
133 GURL request_url("https://www.google.com/accounts/o8/GetOAuthToken" 133 GURL request_url("https://www.google.com/accounts/o8/GetOAuthToken"
134 "?scope=https://www.google.com/accounts/OAuthLogin" 134 "?scope=https://accounts.google.com/OAuthLogin"
135 "&oauth_nonce=2oiE_aHdk5qRTz0L9C8Lq0g" 135 "&oauth_nonce=2oiE_aHdk5qRTz0L9C8Lq0g"
136 "&xaouth_display_name=Chromium" 136 "&xaouth_display_name=Chromium"
137 "&oauth_timestamp=1308152953"); 137 "&oauth_timestamp=1308152953");
138 std::string signed_text; 138 std::string signed_text;
139 ASSERT_TRUE(OAuthRequestSigner::ParseAndSign( 139 ASSERT_TRUE(OAuthRequestSigner::ParseAndSign(
140 request_url, 140 request_url,
141 OAuthRequestSigner::HMAC_SHA1_SIGNATURE, 141 OAuthRequestSigner::HMAC_SHA1_SIGNATURE,
142 OAuthRequestSigner::GET_METHOD, 142 OAuthRequestSigner::GET_METHOD,
143 "anonymous", // oauth_consumer_key 143 "anonymous", // oauth_consumer_key
144 "anonymous", // consumer secret 144 "anonymous", // consumer secret
145 "4/CcC-hgdj1TNnWaX8NTQ76YDXCBEK", // oauth_token 145 "4/CcC-hgdj1TNnWaX8NTQ76YDXCBEK", // oauth_token
146 "", // token secret 146 "", // token secret
147 &signed_text)); 147 &signed_text));
148 ASSERT_EQ("https://www.google.com/accounts/o8/GetOAuthToken" 148 ASSERT_EQ("https://www.google.com/accounts/o8/GetOAuthToken"
149 "?oauth_consumer_key=anonymous" 149 "?oauth_consumer_key=anonymous"
150 "&oauth_nonce=2oiE_aHdk5qRTz0L9C8Lq0g" 150 "&oauth_nonce=2oiE_aHdk5qRTz0L9C8Lq0g"
151 "&oauth_signature=S%2B6dcftDfbINlavHuma4NLJ98Ys%3D" 151 "&oauth_signature=PH7KP6cP%2BzZ1SJ6WGqBgXwQP9Mc%3D"
152 "&oauth_signature_method=HMAC-SHA1" 152 "&oauth_signature_method=HMAC-SHA1"
153 "&oauth_timestamp=1308152953" 153 "&oauth_timestamp=1308152953"
154 "&oauth_token=4%2FCcC-hgdj1TNnWaX8NTQ76YDXCBEK" 154 "&oauth_token=4%2FCcC-hgdj1TNnWaX8NTQ76YDXCBEK"
155 "&oauth_version=1.0" 155 "&oauth_version=1.0"
156 "&scope=https%3A%2F%2Fwww.google.com%2Faccounts%2FOAuthLogin" 156 "&scope=https%3A%2F%2Faccounts.google.com%2FOAuthLogin"
157 "&xaouth_display_name=Chromium", 157 "&xaouth_display_name=Chromium",
158 signed_text); 158 signed_text);
159 } 159 }
160 160
161 TEST(OAuthRequestSignerTest, ParseAndSignGet2) { 161 TEST(OAuthRequestSignerTest, ParseAndSignGet2) {
162 GURL request_url("https://www.google.com/accounts/OAuthGetAccessToken" 162 GURL request_url("https://accounts.google.com/OAuthGetAccessToken"
163 "?oauth_timestamp=1308147831" 163 "?oauth_timestamp=1308147831"
164 "&oauth_nonce=4d4hZW9DygWQujP2tz06UN"); 164 "&oauth_nonce=4d4hZW9DygWQujP2tz06UN");
165 std::string signed_text; 165 std::string signed_text;
166 ASSERT_TRUE(OAuthRequestSigner::ParseAndSign( 166 ASSERT_TRUE(OAuthRequestSigner::ParseAndSign(
167 request_url, 167 request_url,
168 OAuthRequestSigner::HMAC_SHA1_SIGNATURE, 168 OAuthRequestSigner::HMAC_SHA1_SIGNATURE,
169 OAuthRequestSigner::GET_METHOD, 169 OAuthRequestSigner::GET_METHOD,
170 "anonymous", // oauth_consumer_key 170 "anonymous", // oauth_consumer_key
171 "anonymous", // consumer secret 171 "anonymous", // consumer secret
172 "4/CcC-hgdj1TNnWaX8NTQ76YDXCBEK", // oauth_token 172 "4/CcC-hgdj1TNnWaX8NTQ76YDXCBEK", // oauth_token
173 "", // token secret 173 "", // token secret
174 &signed_text)); 174 &signed_text));
175 ASSERT_EQ(signed_text, 175 ASSERT_EQ(signed_text,
176 "https://www.google.com/accounts/OAuthGetAccessToken" 176 "https://accounts.google.com/OAuthGetAccessToken"
177 "?oauth_consumer_key=anonymous" 177 "?oauth_consumer_key=anonymous"
178 "&oauth_nonce=4d4hZW9DygWQujP2tz06UN" 178 "&oauth_nonce=4d4hZW9DygWQujP2tz06UN"
179 "&oauth_signature=2KVN8YCOKgiNIA16EGTcfESvdvA%3D" 179 "&oauth_signature=YiJv%2BEOWsvCDCi13%2FhQBFrr0J7c%3D"
180 "&oauth_signature_method=HMAC-SHA1" 180 "&oauth_signature_method=HMAC-SHA1"
181 "&oauth_timestamp=1308147831" 181 "&oauth_timestamp=1308147831"
182 "&oauth_token=4%2FCcC-hgdj1TNnWaX8NTQ76YDXCBEK" 182 "&oauth_token=4%2FCcC-hgdj1TNnWaX8NTQ76YDXCBEK"
183 "&oauth_version=1.0"); 183 "&oauth_version=1.0");
184 } 184 }
185 185
186 TEST(OAuthRequestSignerTest, SignPost1) { 186 TEST(OAuthRequestSignerTest, SignPost1) {
187 GURL request_url("https://www.google.com/accounts/o8/GetOAuthToken"); 187 GURL request_url("https://www.google.com/accounts/o8/GetOAuthToken");
188 OAuthRequestSigner::Parameters parameters; 188 OAuthRequestSigner::Parameters parameters;
189 parameters["scope"] = "https://www.google.com/accounts/OAuthLogin"; 189 parameters["scope"] = "https://accounts.google.com/OAuthLogin";
190 parameters["oauth_nonce"] = "2oiE_aHdk5qRTz0L9C8Lq0g"; 190 parameters["oauth_nonce"] = "2oiE_aHdk5qRTz0L9C8Lq0g";
191 parameters["xaouth_display_name"] = "Chromium"; 191 parameters["xaouth_display_name"] = "Chromium";
192 parameters["oauth_timestamp"] = "1308152953"; 192 parameters["oauth_timestamp"] = "1308152953";
193 std::string signed_text; 193 std::string signed_text;
194 ASSERT_TRUE(OAuthRequestSigner::SignURL( 194 ASSERT_TRUE(OAuthRequestSigner::SignURL(
195 request_url, 195 request_url,
196 parameters, 196 parameters,
197 OAuthRequestSigner::HMAC_SHA1_SIGNATURE, 197 OAuthRequestSigner::HMAC_SHA1_SIGNATURE,
198 OAuthRequestSigner::POST_METHOD, 198 OAuthRequestSigner::POST_METHOD,
199 "anonymous", // oauth_consumer_key 199 "anonymous", // oauth_consumer_key
200 "anonymous", // consumer secret 200 "anonymous", // consumer secret
201 "4/X8x0r7bHif_VNCLjUMutxGkzo13d", // oauth_token 201 "4/X8x0r7bHif_VNCLjUMutxGkzo13d", // oauth_token
202 "b7120598d47594bd3522", // token secret 202 "b7120598d47594bd3522", // token secret
203 &signed_text)); 203 &signed_text));
204 ASSERT_EQ("oauth_consumer_key=anonymous" 204 ASSERT_EQ("oauth_consumer_key=anonymous"
205 "&oauth_nonce=2oiE_aHdk5qRTz0L9C8Lq0g" 205 "&oauth_nonce=2oiE_aHdk5qRTz0L9C8Lq0g"
206 "&oauth_signature=F%2BINyO4xgon5wUxcdcxWC11Ep7Y%3D" 206 "&oauth_signature=vVlfv6dnV2%2Fx7TozS0Gf83zS2%2BQ%3D"
207 "&oauth_signature_method=HMAC-SHA1" 207 "&oauth_signature_method=HMAC-SHA1"
208 "&oauth_timestamp=1308152953" 208 "&oauth_timestamp=1308152953"
209 "&oauth_token=4%2FX8x0r7bHif_VNCLjUMutxGkzo13d" 209 "&oauth_token=4%2FX8x0r7bHif_VNCLjUMutxGkzo13d"
210 "&oauth_version=1.0" 210 "&oauth_version=1.0"
211 "&scope=https%3A%2F%2Fwww.google.com%2Faccounts%2FOAuthLogin" 211 "&scope=https%3A%2F%2Faccounts.google.com%2FOAuthLogin"
212 "&xaouth_display_name=Chromium", 212 "&xaouth_display_name=Chromium",
213 signed_text); 213 signed_text);
214 } 214 }
215 215
216 TEST(OAuthRequestSignerTest, SignPost2) { 216 TEST(OAuthRequestSignerTest, SignPost2) {
217 GURL request_url("https://www.google.com/accounts/OAuthGetAccessToken"); 217 GURL request_url("https://accounts.google.com/OAuthGetAccessToken");
218 OAuthRequestSigner::Parameters parameters; 218 OAuthRequestSigner::Parameters parameters;
219 parameters["oauth_timestamp"] = "1234567890"; 219 parameters["oauth_timestamp"] = "1234567890";
220 parameters["oauth_nonce"] = "17171717171717171"; 220 parameters["oauth_nonce"] = "17171717171717171";
221 std::string signed_text; 221 std::string signed_text;
222 ASSERT_TRUE(OAuthRequestSigner::SignURL( 222 ASSERT_TRUE(OAuthRequestSigner::SignURL(
223 request_url, 223 request_url,
224 parameters, 224 parameters,
225 OAuthRequestSigner::HMAC_SHA1_SIGNATURE, 225 OAuthRequestSigner::HMAC_SHA1_SIGNATURE,
226 OAuthRequestSigner::POST_METHOD, 226 OAuthRequestSigner::POST_METHOD,
227 "anonymous", // oauth_consumer_key 227 "anonymous", // oauth_consumer_key
228 "anonymous", // consumer secret 228 "anonymous", // consumer secret
229 "4/CcC-hgdj1TNnWaX8NTQ76YDXCBEK", // oauth_token 229 "4/CcC-hgdj1TNnWaX8NTQ76YDXCBEK", // oauth_token
230 "", // token secret 230 "", // token secret
231 &signed_text)); 231 &signed_text));
232 ASSERT_EQ(signed_text, 232 ASSERT_EQ(signed_text,
233 "oauth_consumer_key=anonymous" 233 "oauth_consumer_key=anonymous"
234 "&oauth_nonce=17171717171717171" 234 "&oauth_nonce=17171717171717171"
235 "&oauth_signature=BIuPHITrcptxSefd8H9Iazo8Pmo%3D" 235 "&oauth_signature=tPX2XqKQICWzopZ80CFGX%2F53DLo%3D"
236 "&oauth_signature_method=HMAC-SHA1" 236 "&oauth_signature_method=HMAC-SHA1"
237 "&oauth_timestamp=1234567890" 237 "&oauth_timestamp=1234567890"
238 "&oauth_token=4%2FCcC-hgdj1TNnWaX8NTQ76YDXCBEK" 238 "&oauth_token=4%2FCcC-hgdj1TNnWaX8NTQ76YDXCBEK"
239 "&oauth_version=1.0"); 239 "&oauth_version=1.0");
240 } 240 }
241 241
242 TEST(OAuthRequestSignerTest, ParseAndSignPost1) { 242 TEST(OAuthRequestSignerTest, ParseAndSignPost1) {
243 GURL request_url("https://www.google.com/accounts/o8/GetOAuthToken" 243 GURL request_url("https://www.google.com/accounts/o8/GetOAuthToken"
244 "?scope=https://www.google.com/accounts/OAuthLogin" 244 "?scope=https://accounts.google.com/OAuthLogin"
245 "&oauth_nonce=2oiE_aHdk5qRTz0L9C8Lq0g" 245 "&oauth_nonce=2oiE_aHdk5qRTz0L9C8Lq0g"
246 "&xaouth_display_name=Chromium" 246 "&xaouth_display_name=Chromium"
247 "&oauth_timestamp=1308152953"); 247 "&oauth_timestamp=1308152953");
248 std::string signed_text; 248 std::string signed_text;
249 ASSERT_TRUE(OAuthRequestSigner::ParseAndSign( 249 ASSERT_TRUE(OAuthRequestSigner::ParseAndSign(
250 request_url, 250 request_url,
251 OAuthRequestSigner::HMAC_SHA1_SIGNATURE, 251 OAuthRequestSigner::HMAC_SHA1_SIGNATURE,
252 OAuthRequestSigner::POST_METHOD, 252 OAuthRequestSigner::POST_METHOD,
253 "anonymous", // oauth_consumer_key 253 "anonymous", // oauth_consumer_key
254 "anonymous", // consumer secret 254 "anonymous", // consumer secret
255 "4/X8x0r7bHif_VNCLjUMutxGkzo13d", // oauth_token 255 "4/X8x0r7bHif_VNCLjUMutxGkzo13d", // oauth_token
256 "b7120598d47594bd3522", // token secret 256 "b7120598d47594bd3522", // token secret
257 &signed_text)); 257 &signed_text));
258 ASSERT_EQ("oauth_consumer_key=anonymous" 258 ASSERT_EQ("oauth_consumer_key=anonymous"
259 "&oauth_nonce=2oiE_aHdk5qRTz0L9C8Lq0g" 259 "&oauth_nonce=2oiE_aHdk5qRTz0L9C8Lq0g"
260 "&oauth_signature=F%2BINyO4xgon5wUxcdcxWC11Ep7Y%3D" 260 "&oauth_signature=vVlfv6dnV2%2Fx7TozS0Gf83zS2%2BQ%3D"
261 "&oauth_signature_method=HMAC-SHA1" 261 "&oauth_signature_method=HMAC-SHA1"
262 "&oauth_timestamp=1308152953" 262 "&oauth_timestamp=1308152953"
263 "&oauth_token=4%2FX8x0r7bHif_VNCLjUMutxGkzo13d" 263 "&oauth_token=4%2FX8x0r7bHif_VNCLjUMutxGkzo13d"
264 "&oauth_version=1.0" 264 "&oauth_version=1.0"
265 "&scope=https%3A%2F%2Fwww.google.com%2Faccounts%2FOAuthLogin" 265 "&scope=https%3A%2F%2Faccounts.google.com%2FOAuthLogin"
266 "&xaouth_display_name=Chromium", 266 "&xaouth_display_name=Chromium",
267 signed_text); 267 signed_text);
268 } 268 }
269 269
270 TEST(OAuthRequestSignerTest, ParseAndSignPost2) { 270 TEST(OAuthRequestSignerTest, ParseAndSignPost2) {
271 GURL request_url("https://www.google.com/accounts/OAuthGetAccessToken" 271 GURL request_url("https://accounts.google.com/OAuthGetAccessToken"
272 "?oauth_timestamp=1234567890" 272 "?oauth_timestamp=1234567890"
273 "&oauth_nonce=17171717171717171"); 273 "&oauth_nonce=17171717171717171");
274 std::string signed_text; 274 std::string signed_text;
275 ASSERT_TRUE(OAuthRequestSigner::ParseAndSign( 275 ASSERT_TRUE(OAuthRequestSigner::ParseAndSign(
276 request_url, 276 request_url,
277 OAuthRequestSigner::HMAC_SHA1_SIGNATURE, 277 OAuthRequestSigner::HMAC_SHA1_SIGNATURE,
278 OAuthRequestSigner::POST_METHOD, 278 OAuthRequestSigner::POST_METHOD,
279 "anonymous", // oauth_consumer_key 279 "anonymous", // oauth_consumer_key
280 "anonymous", // consumer secret 280 "anonymous", // consumer secret
281 "4/CcC-hgdj1TNnWaX8NTQ76YDXCBEK", // oauth_token 281 "4/CcC-hgdj1TNnWaX8NTQ76YDXCBEK", // oauth_token
282 "", // token secret 282 "", // token secret
283 &signed_text)); 283 &signed_text));
284 ASSERT_EQ(signed_text, 284 ASSERT_EQ(signed_text,
285 "oauth_consumer_key=anonymous" 285 "oauth_consumer_key=anonymous"
286 "&oauth_nonce=17171717171717171" 286 "&oauth_nonce=17171717171717171"
287 "&oauth_signature=BIuPHITrcptxSefd8H9Iazo8Pmo%3D" 287 "&oauth_signature=tPX2XqKQICWzopZ80CFGX%2F53DLo%3D"
288 "&oauth_signature_method=HMAC-SHA1" 288 "&oauth_signature_method=HMAC-SHA1"
289 "&oauth_timestamp=1234567890" 289 "&oauth_timestamp=1234567890"
290 "&oauth_token=4%2FCcC-hgdj1TNnWaX8NTQ76YDXCBEK" 290 "&oauth_token=4%2FCcC-hgdj1TNnWaX8NTQ76YDXCBEK"
291 "&oauth_version=1.0"); 291 "&oauth_version=1.0");
292 } 292 }
293 293
294 TEST(OAuthRequestSignerTest, SignAuthHeader) { 294 TEST(OAuthRequestSignerTest, SignAuthHeader) {
295 GURL request_url("https://www.google.com/accounts/o8/GetOAuthToken"); 295 GURL request_url("https://www.google.com/accounts/o8/GetOAuthToken");
296 OAuthRequestSigner::Parameters parameters; 296 OAuthRequestSigner::Parameters parameters;
297 parameters["scope"] = "https://www.google.com/accounts/OAuthLogin"; 297 parameters["scope"] = "https://accounts.google.com/OAuthLogin";
298 parameters["oauth_nonce"] = "2oiE_aHdk5qRTz0L9C8Lq0g"; 298 parameters["oauth_nonce"] = "2oiE_aHdk5qRTz0L9C8Lq0g";
299 parameters["xaouth_display_name"] = "Chromium"; 299 parameters["xaouth_display_name"] = "Chromium";
300 parameters["oauth_timestamp"] = "1308152953"; 300 parameters["oauth_timestamp"] = "1308152953";
301 std::string signed_text; 301 std::string signed_text;
302 ASSERT_TRUE(OAuthRequestSigner::SignAuthHeader( 302 ASSERT_TRUE(OAuthRequestSigner::SignAuthHeader(
303 request_url, 303 request_url,
304 parameters, 304 parameters,
305 OAuthRequestSigner::HMAC_SHA1_SIGNATURE, 305 OAuthRequestSigner::HMAC_SHA1_SIGNATURE,
306 OAuthRequestSigner::GET_METHOD, 306 OAuthRequestSigner::GET_METHOD,
307 "johndoe", // oauth_consumer_key 307 "johndoe", // oauth_consumer_key
308 "53cR3t", // consumer secret 308 "53cR3t", // consumer secret
309 "4/VGY0MsQadcmO8VnCv9gnhoEooq1v", // oauth_token 309 "4/VGY0MsQadcmO8VnCv9gnhoEooq1v", // oauth_token
310 "c5e0531ff55dfbb4054e", // token secret 310 "c5e0531ff55dfbb4054e", // token secret
311 &signed_text)); 311 &signed_text));
312 ASSERT_EQ("OAuth " 312 ASSERT_EQ("OAuth "
313 "oauth_consumer_key=\"johndoe\", " 313 "oauth_consumer_key=\"johndoe\", "
314 "oauth_nonce=\"2oiE_aHdk5qRTz0L9C8Lq0g\", " 314 "oauth_nonce=\"2oiE_aHdk5qRTz0L9C8Lq0g\", "
315 "oauth_signature=\"y9GCmlGSvNuTAotxsBMyxb6j%2BE8%3D\", " 315 "oauth_signature=\"PFqDTaiyey1UObcvOyI4Ng2HXW0%3D\", "
316 "oauth_signature_method=\"HMAC-SHA1\", " 316 "oauth_signature_method=\"HMAC-SHA1\", "
317 "oauth_timestamp=\"1308152953\", " 317 "oauth_timestamp=\"1308152953\", "
318 "oauth_token=\"4%2FVGY0MsQadcmO8VnCv9gnhoEooq1v\", " 318 "oauth_token=\"4%2FVGY0MsQadcmO8VnCv9gnhoEooq1v\", "
319 "oauth_version=\"1.0\", " 319 "oauth_version=\"1.0\", "
320 "scope=\"https%3A%2F%2Fwww.google.com%2Faccounts%2FOAuthLogin\", " 320 "scope=\"https%3A%2F%2Faccounts.google.com%2FOAuthLogin\", "
321 "xaouth_display_name=\"Chromium\"", 321 "xaouth_display_name=\"Chromium\"",
322 signed_text); 322 signed_text);
323 } 323 }
OLDNEW
« no previous file with comments | « chrome/common/net/gaia/google_service_auth_error.h ('k') | chrome/common/net/url_util.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698