| Index: components/image_fetcher/core/image_data_fetcher_unittest.cc
|
| diff --git a/components/image_fetcher/core/image_data_fetcher_unittest.cc b/components/image_fetcher/core/image_data_fetcher_unittest.cc
|
| index 90887dde4d4f7cfbf42209706cfbe749099aa4f5..de47936940e765dbce0e04d77260904413fecbd6 100644
|
| --- a/components/image_fetcher/core/image_data_fetcher_unittest.cc
|
| +++ b/components/image_fetcher/core/image_data_fetcher_unittest.cc
|
| @@ -63,17 +63,9 @@ TEST_F(ImageDataFetcherTest, FetchImageData) {
|
| GURL(kImageURL), base::Bind(&ImageDataFetcherTest::OnImageDataFetched,
|
| base::Unretained(this)));
|
|
|
| - std::string raw_header =
|
| - "HTTP/1.1 200 OK\n"
|
| - "Content-type: image/png\n\n";
|
| - std::replace(raw_header.begin(), raw_header.end(), '\n', '\0');
|
| - scoped_refptr<net::HttpResponseHeaders> headers(
|
| - new net::HttpResponseHeaders(raw_header));
|
| -
|
| RequestMetadata expected_metadata;
|
| expected_metadata.mime_type = std::string("image/png");
|
| expected_metadata.http_response_code = net::HTTP_OK;
|
| - expected_metadata.http_response_headers = headers.get();
|
| EXPECT_CALL(*this, OnImageDataFetched(std::string(kURLResponseData),
|
| expected_metadata));
|
|
|
| @@ -88,6 +80,13 @@ TEST_F(ImageDataFetcherTest, FetchImageData) {
|
| net::URLRequestStatus(net::URLRequestStatus::SUCCESS, net::OK));
|
| test_url_fetcher->SetResponseString(kURLResponseData);
|
| test_url_fetcher->set_response_code(net::HTTP_OK);
|
| +
|
| + std::string raw_header =
|
| + "HTTP/1.1 200 OK\n"
|
| + "Content-type: image/png\n\n";
|
| + std::replace(raw_header.begin(), raw_header.end(), '\n', '\0');
|
| + scoped_refptr<net::HttpResponseHeaders> headers(
|
| + new net::HttpResponseHeaders(raw_header));
|
| test_url_fetcher->set_response_headers(headers);
|
|
|
| // Call the URLFetcher delegate to continue the test.
|
| @@ -99,18 +98,10 @@ TEST_F(ImageDataFetcherTest, FetchImageData_FromCache) {
|
| GURL(kImageURL), base::Bind(&ImageDataFetcherTest::OnImageDataFetched,
|
| base::Unretained(this)));
|
|
|
| - std::string raw_header =
|
| - "HTTP/1.1 200 OK\n"
|
| - "Content-type: image/png\n\n";
|
| - std::replace(raw_header.begin(), raw_header.end(), '\n', '\0');
|
| - scoped_refptr<net::HttpResponseHeaders> headers(
|
| - new net::HttpResponseHeaders(raw_header));
|
| -
|
| RequestMetadata expected_metadata;
|
| expected_metadata.mime_type = std::string("image/png");
|
| expected_metadata.http_response_code = net::HTTP_OK;
|
| expected_metadata.from_http_cache = true;
|
| - expected_metadata.http_response_headers = headers.get();
|
| EXPECT_CALL(*this, OnImageDataFetched(std::string(kURLResponseData),
|
| expected_metadata));
|
|
|
| @@ -122,6 +113,13 @@ TEST_F(ImageDataFetcherTest, FetchImageData_FromCache) {
|
| test_url_fetcher->SetResponseString(kURLResponseData);
|
| test_url_fetcher->set_response_code(net::HTTP_OK);
|
| test_url_fetcher->set_was_cached(true);
|
| +
|
| + std::string raw_header =
|
| + "HTTP/1.1 200 OK\n"
|
| + "Content-type: image/png\n\n";
|
| + std::replace(raw_header.begin(), raw_header.end(), '\n', '\0');
|
| + scoped_refptr<net::HttpResponseHeaders> headers(
|
| + new net::HttpResponseHeaders(raw_header));
|
| test_url_fetcher->set_response_headers(headers);
|
|
|
| // Call the URLFetcher delegate to continue the test.
|
| @@ -133,17 +131,40 @@ TEST_F(ImageDataFetcherTest, FetchImageData_NotFound) {
|
| GURL(kImageURL), base::Bind(&ImageDataFetcherTest::OnImageDataFetched,
|
| base::Unretained(this)));
|
|
|
| + RequestMetadata expected_metadata;
|
| + expected_metadata.mime_type = std::string("image/png");
|
| + expected_metadata.http_response_code = net::HTTP_NOT_FOUND;
|
| + // For 404, expect an empty result even though correct image data is sent.
|
| + EXPECT_CALL(*this, OnImageDataFetched(std::string(), expected_metadata));
|
| +
|
| + // Get and configure the TestURLFetcher.
|
| + net::TestURLFetcher* test_url_fetcher = fetcher_factory_.GetFetcherByID(0);
|
| + ASSERT_NE(nullptr, test_url_fetcher);
|
| + test_url_fetcher->set_status(
|
| + net::URLRequestStatus(net::URLRequestStatus::SUCCESS, net::OK));
|
| + test_url_fetcher->SetResponseString(kURLResponseData);
|
| +
|
| std::string raw_header =
|
| "HTTP/1.1 404 Not Found\n"
|
| "Content-type: image/png\n\n";
|
| std::replace(raw_header.begin(), raw_header.end(), '\n', '\0');
|
| scoped_refptr<net::HttpResponseHeaders> headers(
|
| new net::HttpResponseHeaders(raw_header));
|
| + test_url_fetcher->set_response_headers(headers);
|
| +
|
| + // Call the URLFetcher delegate to continue the test.
|
| + test_url_fetcher->delegate()->OnURLFetchComplete(test_url_fetcher);
|
| +}
|
| +
|
| +TEST_F(ImageDataFetcherTest, FetchImageData_WithContentLocation) {
|
| + image_data_fetcher_.FetchImageData(
|
| + GURL(kImageURL), base::Bind(&ImageDataFetcherTest::OnImageDataFetched,
|
| + base::Unretained(this)));
|
|
|
| RequestMetadata expected_metadata;
|
| expected_metadata.mime_type = std::string("image/png");
|
| expected_metadata.http_response_code = net::HTTP_NOT_FOUND;
|
| - expected_metadata.http_response_headers = headers.get();
|
| + expected_metadata.content_location_header = "http://test-location/image.png";
|
| // For 404, expect an empty result even though correct image data is sent.
|
| EXPECT_CALL(*this, OnImageDataFetched(std::string(), expected_metadata));
|
|
|
| @@ -153,6 +174,14 @@ TEST_F(ImageDataFetcherTest, FetchImageData_NotFound) {
|
| test_url_fetcher->set_status(
|
| net::URLRequestStatus(net::URLRequestStatus::SUCCESS, net::OK));
|
| test_url_fetcher->SetResponseString(kURLResponseData);
|
| +
|
| + std::string raw_header =
|
| + "HTTP/1.1 404 Not Found\n"
|
| + "Content-type: image/png\n"
|
| + "Content-location: http://test-location/image.png\n\n";
|
| + std::replace(raw_header.begin(), raw_header.end(), '\n', '\0');
|
| + scoped_refptr<net::HttpResponseHeaders> headers(
|
| + new net::HttpResponseHeaders(raw_header));
|
| test_url_fetcher->set_response_headers(headers);
|
|
|
| // Call the URLFetcher delegate to continue the test.
|
|
|