| 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 |