OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "components/search_provider_logos/logo_tracker.h" | 5 #include "components/search_provider_logos/logo_tracker.h" |
6 | 6 |
7 #include <vector> | 7 #include <vector> |
8 | 8 |
9 #include "base/base64.h" | 9 #include "base/base64.h" |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 353 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
364 net::HttpStatusCode response_code) { | 364 net::HttpStatusCode response_code) { |
365 fake_url_fetcher_factory_.SetFakeResponse( | 365 fake_url_fetcher_factory_.SetFakeResponse( |
366 logo_url_, response, response_code, request_status); | 366 logo_url_, response, response_code, request_status); |
367 } | 367 } |
368 | 368 |
369 void LogoTrackerTest::SetServerResponseWhenFingerprint( | 369 void LogoTrackerTest::SetServerResponseWhenFingerprint( |
370 const std::string& fingerprint, | 370 const std::string& fingerprint, |
371 const std::string& response_when_fingerprint, | 371 const std::string& response_when_fingerprint, |
372 net::URLRequestStatus::Status request_status, | 372 net::URLRequestStatus::Status request_status, |
373 net::HttpStatusCode response_code) { | 373 net::HttpStatusCode response_code) { |
374 GURL url_with_fp = GoogleAppendFingerprintToLogoURL(logo_url_, fingerprint); | 374 GURL url_with_fp = |
| 375 net::AppendQueryParameter(logo_url_, "async", "es_dfp:" + fingerprint); |
375 fake_url_fetcher_factory_.SetFakeResponse( | 376 fake_url_fetcher_factory_.SetFakeResponse( |
376 url_with_fp, response_when_fingerprint, response_code, request_status); | 377 url_with_fp, response_when_fingerprint, response_code, request_status); |
377 } | 378 } |
378 | 379 |
379 void LogoTrackerTest::GetLogo() { | 380 void LogoTrackerTest::GetLogo() { |
380 logo_tracker_->GetLogo(&observer_); | 381 logo_tracker_->GetLogo(&observer_); |
381 base::RunLoop().RunUntilIdle(); | 382 base::RunLoop().RunUntilIdle(); |
382 } | 383 } |
383 | 384 |
384 // Tests ----------------------------------------------------------------------- | 385 // Tests ----------------------------------------------------------------------- |
385 | 386 |
386 TEST_F(LogoTrackerTest, FingerprintURLHasColon) { | |
387 GURL url_with_fp = GoogleAppendFingerprintToLogoURL( | |
388 GURL("http://logourl.com/path"), "abc123"); | |
389 EXPECT_EQ("http://logourl.com/path?async=es_dfp:abc123", url_with_fp.spec()); | |
390 | |
391 url_with_fp = GoogleAppendFingerprintToLogoURL( | |
392 GURL("http://logourl.com/?a=b"), "cafe0"); | |
393 EXPECT_EQ("http://logourl.com/?a=b&async=es_dfp:cafe0", url_with_fp.spec()); | |
394 } | |
395 | |
396 TEST_F(LogoTrackerTest, DownloadAndCacheLogo) { | 387 TEST_F(LogoTrackerTest, DownloadAndCacheLogo) { |
397 Logo logo = GetSampleLogo(logo_url_, test_clock_->Now()); | 388 Logo logo = GetSampleLogo(logo_url_, test_clock_->Now()); |
398 SetServerResponse(ServerResponse(logo)); | 389 SetServerResponse(ServerResponse(logo)); |
399 logo_cache_->ExpectSetCachedLogo(&logo); | 390 logo_cache_->ExpectSetCachedLogo(&logo); |
400 observer_.ExpectFreshLogo(&logo); | 391 observer_.ExpectFreshLogo(&logo); |
401 GetLogo(); | 392 GetLogo(); |
402 } | 393 } |
403 | 394 |
404 TEST_F(LogoTrackerTest, EmptyCacheAndFailedDownload) { | 395 TEST_F(LogoTrackerTest, EmptyCacheAndFailedDownload) { |
405 EXPECT_CALL(*logo_cache_, UpdateCachedLogoMetadata(_)).Times(0); | 396 EXPECT_CALL(*logo_cache_, UpdateCachedLogoMetadata(_)).Times(0); |
(...skipping 262 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
668 MockLogoObserver listener2; | 659 MockLogoObserver listener2; |
669 listener2.ExpectFreshLogo(&logo); | 660 listener2.ExpectFreshLogo(&logo); |
670 logo_tracker_->GetLogo(&listener2); | 661 logo_tracker_->GetLogo(&listener2); |
671 | 662 |
672 base::RunLoop().RunUntilIdle(); | 663 base::RunLoop().RunUntilIdle(); |
673 } | 664 } |
674 | 665 |
675 } // namespace | 666 } // namespace |
676 | 667 |
677 } // namespace search_provider_logos | 668 } // namespace search_provider_logos |
OLD | NEW |