OLD | NEW |
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 <list> | 5 #include <list> |
6 | 6 |
7 #include "base/string_util.h" | 7 #include "base/string_util.h" |
8 #include "base/test/test_timeouts.h" | 8 #include "base/test/test_timeouts.h" |
9 #include "base/utf_string_conversions.h" | 9 #include "base/utf_string_conversions.h" |
10 #include "chrome/browser/autofill/autofill_download.h" | 10 #include "chrome/browser/autofill/autofill_download.h" |
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
188 // Request with id 0. | 188 // Request with id 0. |
189 MockAutoFillMetrics mock_metric_logger; | 189 MockAutoFillMetrics mock_metric_logger; |
190 EXPECT_CALL(mock_metric_logger, Log(AutoFillMetrics::QUERY_SENT)).Times(1); | 190 EXPECT_CALL(mock_metric_logger, Log(AutoFillMetrics::QUERY_SENT)).Times(1); |
191 EXPECT_TRUE(helper.download_manager.StartQueryRequest(form_structures, | 191 EXPECT_TRUE(helper.download_manager.StartQueryRequest(form_structures, |
192 mock_metric_logger)); | 192 mock_metric_logger)); |
193 // Set upload to 100% so requests happen. | 193 // Set upload to 100% so requests happen. |
194 helper.download_manager.SetPositiveUploadRate(1.0); | 194 helper.download_manager.SetPositiveUploadRate(1.0); |
195 helper.download_manager.SetNegativeUploadRate(1.0); | 195 helper.download_manager.SetNegativeUploadRate(1.0); |
196 // Request with id 1. | 196 // Request with id 1. |
197 EXPECT_TRUE(helper.download_manager.StartUploadRequest(*(form_structures[0]), | 197 EXPECT_TRUE(helper.download_manager.StartUploadRequest(*(form_structures[0]), |
198 true)); | 198 true, "")); |
199 // Request with id 2. | 199 // Request with id 2. |
200 EXPECT_TRUE(helper.download_manager.StartUploadRequest(*(form_structures[1]), | 200 EXPECT_TRUE(helper.download_manager.StartUploadRequest(*(form_structures[1]), |
201 false)); | 201 false, "")); |
202 | 202 |
203 const char *responses[] = { | 203 const char *responses[] = { |
204 "<autofillqueryresponse>" | 204 "<autofillqueryresponse>" |
205 "<field autofilltype=\"0\" />" | 205 "<field autofilltype=\"0\" />" |
206 "<field autofilltype=\"3\" />" | 206 "<field autofilltype=\"3\" />" |
207 "<field autofilltype=\"5\" />" | 207 "<field autofilltype=\"5\" />" |
208 "<field autofilltype=\"9\" />" | 208 "<field autofilltype=\"9\" />" |
209 "<field autofilltype=\"0\" />" | 209 "<field autofilltype=\"0\" />" |
210 "<field autofilltype=\"30\" />" | 210 "<field autofilltype=\"30\" />" |
211 "<field autofilltype=\"31\" />" | 211 "<field autofilltype=\"31\" />" |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
260 EXPECT_EQ(0, helper.responses_.front().error); | 260 EXPECT_EQ(0, helper.responses_.front().error); |
261 EXPECT_EQ(std::string(), helper.responses_.front().signature); | 261 EXPECT_EQ(std::string(), helper.responses_.front().signature); |
262 EXPECT_EQ(responses[0], helper.responses_.front().response); | 262 EXPECT_EQ(responses[0], helper.responses_.front().response); |
263 helper.responses_.pop_front(); | 263 helper.responses_.pop_front(); |
264 | 264 |
265 // Set upload to 0% so no new requests happen. | 265 // Set upload to 0% so no new requests happen. |
266 helper.download_manager.SetPositiveUploadRate(0.0); | 266 helper.download_manager.SetPositiveUploadRate(0.0); |
267 helper.download_manager.SetNegativeUploadRate(0.0); | 267 helper.download_manager.SetNegativeUploadRate(0.0); |
268 // No actual requests for the next two calls, as we set upload rate to 0%. | 268 // No actual requests for the next two calls, as we set upload rate to 0%. |
269 EXPECT_FALSE(helper.download_manager.StartUploadRequest(*(form_structures[0]), | 269 EXPECT_FALSE(helper.download_manager.StartUploadRequest(*(form_structures[0]), |
270 true)); | 270 true, "")); |
271 EXPECT_FALSE(helper.download_manager.StartUploadRequest(*(form_structures[1]), | 271 EXPECT_FALSE(helper.download_manager.StartUploadRequest(*(form_structures[1]), |
272 false)); | 272 false, "")); |
273 fetcher = factory.GetFetcherByID(3); | 273 fetcher = factory.GetFetcherByID(3); |
274 EXPECT_EQ(NULL, fetcher); | 274 EXPECT_EQ(NULL, fetcher); |
275 | 275 |
276 // Request with id 3. | 276 // Request with id 3. |
277 EXPECT_CALL(mock_metric_logger, Log(AutoFillMetrics::QUERY_SENT)).Times(1); | 277 EXPECT_CALL(mock_metric_logger, Log(AutoFillMetrics::QUERY_SENT)).Times(1); |
278 EXPECT_TRUE(helper.download_manager.StartQueryRequest(form_structures, | 278 EXPECT_TRUE(helper.download_manager.StartQueryRequest(form_structures, |
279 mock_metric_logger)); | 279 mock_metric_logger)); |
280 fetcher = factory.GetFetcherByID(3); | 280 fetcher = factory.GetFetcherByID(3); |
281 ASSERT_TRUE(fetcher); | 281 ASSERT_TRUE(fetcher); |
282 fetcher->set_backoff_delay( | 282 fetcher->set_backoff_delay( |
(...skipping 12 matching lines...) Expand all Loading... |
295 EXPECT_CALL(mock_metric_logger, Log(AutoFillMetrics::QUERY_SENT)).Times(0); | 295 EXPECT_CALL(mock_metric_logger, Log(AutoFillMetrics::QUERY_SENT)).Times(0); |
296 EXPECT_FALSE(helper.download_manager.StartQueryRequest(form_structures, | 296 EXPECT_FALSE(helper.download_manager.StartQueryRequest(form_structures, |
297 mock_metric_logger)); | 297 mock_metric_logger)); |
298 fetcher = factory.GetFetcherByID(4); | 298 fetcher = factory.GetFetcherByID(4); |
299 EXPECT_EQ(NULL, fetcher); | 299 EXPECT_EQ(NULL, fetcher); |
300 | 300 |
301 // Set upload to 100% so requests happen. | 301 // Set upload to 100% so requests happen. |
302 helper.download_manager.SetPositiveUploadRate(1.0); | 302 helper.download_manager.SetPositiveUploadRate(1.0); |
303 // Request with id 4. | 303 // Request with id 4. |
304 EXPECT_TRUE(helper.download_manager.StartUploadRequest(*(form_structures[0]), | 304 EXPECT_TRUE(helper.download_manager.StartUploadRequest(*(form_structures[0]), |
305 true)); | 305 true, "")); |
306 fetcher = factory.GetFetcherByID(4); | 306 fetcher = factory.GetFetcherByID(4); |
307 ASSERT_TRUE(fetcher); | 307 ASSERT_TRUE(fetcher); |
308 fetcher->set_backoff_delay( | 308 fetcher->set_backoff_delay( |
309 base::TimeDelta::FromMilliseconds(TestTimeouts::action_max_timeout_ms())); | 309 base::TimeDelta::FromMilliseconds(TestTimeouts::action_max_timeout_ms())); |
310 fetcher->delegate()->OnURLFetchComplete(fetcher, GURL(), URLRequestStatus(), | 310 fetcher->delegate()->OnURLFetchComplete(fetcher, GURL(), URLRequestStatus(), |
311 503, ResponseCookies(), | 311 503, ResponseCookies(), |
312 std::string(responses[2])); | 312 std::string(responses[2])); |
313 EXPECT_EQ(AutoFillDownloadTestHelper::REQUEST_UPLOAD_FAILED, | 313 EXPECT_EQ(AutoFillDownloadTestHelper::REQUEST_UPLOAD_FAILED, |
314 helper.responses_.front().type_of_response); | 314 helper.responses_.front().type_of_response); |
315 EXPECT_EQ(503, helper.responses_.front().error); | 315 EXPECT_EQ(503, helper.responses_.front().error); |
316 helper.responses_.pop_front(); | 316 helper.responses_.pop_front(); |
317 | 317 |
318 // Upload requests should be ignored for the next 10 seconds. | 318 // Upload requests should be ignored for the next 10 seconds. |
319 EXPECT_FALSE(helper.download_manager.StartUploadRequest(*(form_structures[0]), | 319 EXPECT_FALSE(helper.download_manager.StartUploadRequest(*(form_structures[0]), |
320 true)); | 320 true, "")); |
321 fetcher = factory.GetFetcherByID(5); | 321 fetcher = factory.GetFetcherByID(5); |
322 EXPECT_EQ(NULL, fetcher); | 322 EXPECT_EQ(NULL, fetcher); |
323 | 323 |
324 // Make sure consumer of URLFetcher does the right thing. | 324 // Make sure consumer of URLFetcher does the right thing. |
325 URLFetcher::set_factory(NULL); | 325 URLFetcher::set_factory(NULL); |
326 } | 326 } |
OLD | NEW |