| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2013, Google Inc. All rights reserved. | 2 * Copyright (c) 2013, Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 531 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 542 // Call reloadIfLoFiOrPlaceholderImage() after the image has finished loading. | 542 // Call reloadIfLoFiOrPlaceholderImage() after the image has finished loading. |
| 543 image_resource->ReloadIfLoFiOrPlaceholderImage(fetcher, | 543 image_resource->ReloadIfLoFiOrPlaceholderImage(fetcher, |
| 544 Resource::kReloadAlways); | 544 Resource::kReloadAlways); |
| 545 | 545 |
| 546 EXPECT_EQ(3, observer->ImageChangedCount()); | 546 EXPECT_EQ(3, observer->ImageChangedCount()); |
| 547 TestThatReloadIsStartedThenServeReload( | 547 TestThatReloadIsStartedThenServeReload( |
| 548 test_url, image_resource, image_resource->GetContent(), observer.get(), | 548 test_url, image_resource, image_resource->GetContent(), observer.get(), |
| 549 WebCachePolicy::kBypassingCache); | 549 WebCachePolicy::kBypassingCache); |
| 550 } | 550 } |
| 551 | 551 |
| 552 TEST(ImageResourceTest, ReloadIfLoFiOrPlaceholderAfterFinishedWithOldHeaders) { |
| 553 KURL test_url(kParsedURLString, kTestURL); |
| 554 ScopedMockedURLLoad scoped_mocked_url_load(test_url, GetTestFilePath()); |
| 555 ResourceRequest request = ResourceRequest(test_url); |
| 556 ImageResource* image_resource = ImageResource::Create(request); |
| 557 image_resource->SetStatus(ResourceStatus::kPending); |
| 558 |
| 559 std::unique_ptr<MockImageResourceObserver> observer = |
| 560 MockImageResourceObserver::Create(image_resource->GetContent()); |
| 561 ResourceFetcher* fetcher = CreateFetcher(); |
| 562 |
| 563 // Send the image response. |
| 564 ResourceResponse resource_response(KURL(), "image/jpeg", sizeof(kJpegImage), |
| 565 g_null_atom); |
| 566 resource_response.AddHTTPHeaderField("chrome-proxy", "q=low"); |
| 567 |
| 568 image_resource->ResponseReceived(resource_response, nullptr); |
| 569 image_resource->AppendData(reinterpret_cast<const char*>(kJpegImage), |
| 570 sizeof(kJpegImage)); |
| 571 image_resource->Finish(); |
| 572 EXPECT_FALSE(image_resource->ErrorOccurred()); |
| 573 ASSERT_TRUE(image_resource->GetContent()->HasImage()); |
| 574 EXPECT_FALSE(image_resource->GetContent()->GetImage()->IsNull()); |
| 575 EXPECT_EQ(2, observer->ImageChangedCount()); |
| 576 EXPECT_EQ(kJpegImageWidth, observer->ImageWidthOnLastImageChanged()); |
| 577 // The observer should have been notified that the image load completed. |
| 578 EXPECT_TRUE(observer->ImageNotifyFinishedCalled()); |
| 579 EXPECT_EQ(kJpegImageWidth, observer->ImageWidthOnImageNotifyFinished()); |
| 580 EXPECT_TRUE(image_resource->GetContent()->GetImage()->IsBitmapImage()); |
| 581 EXPECT_EQ(kJpegImageWidth, image_resource->GetContent()->GetImage()->width()); |
| 582 EXPECT_EQ(kJpegImageHeight, |
| 583 image_resource->GetContent()->GetImage()->height()); |
| 584 |
| 585 // Call reloadIfLoFiOrPlaceholderImage() after the image has finished loading. |
| 586 image_resource->ReloadIfLoFiOrPlaceholderImage(fetcher, |
| 587 Resource::kReloadAlways); |
| 588 |
| 589 EXPECT_EQ(3, observer->ImageChangedCount()); |
| 590 TestThatReloadIsStartedThenServeReload( |
| 591 test_url, image_resource, image_resource->GetContent(), observer.get(), |
| 592 WebCachePolicy::kBypassingCache); |
| 593 } |
| 594 |
| 552 TEST(ImageResourceTest, | 595 TEST(ImageResourceTest, |
| 553 ReloadIfLoFiOrPlaceholderAfterFinishedWithoutLoFiHeaders) { | 596 ReloadIfLoFiOrPlaceholderAfterFinishedWithoutLoFiHeaders) { |
| 554 KURL test_url(kParsedURLString, kTestURL); | 597 KURL test_url(kParsedURLString, kTestURL); |
| 555 ScopedMockedURLLoad scoped_mocked_url_load(test_url, GetTestFilePath()); | 598 ScopedMockedURLLoad scoped_mocked_url_load(test_url, GetTestFilePath()); |
| 556 ResourceRequest request = ResourceRequest(test_url); | 599 ResourceRequest request = ResourceRequest(test_url); |
| 557 request.SetPreviewsState(WebURLRequest::kServerLoFiOn); | 600 request.SetPreviewsState(WebURLRequest::kServerLoFiOn); |
| 558 ImageResource* image_resource = ImageResource::Create(request); | 601 ImageResource* image_resource = ImageResource::Create(request); |
| 559 image_resource->SetStatus(ResourceStatus::kPending); | 602 image_resource->SetStatus(ResourceStatus::kPending); |
| 560 | 603 |
| 561 std::unique_ptr<MockImageResourceObserver> observer = | 604 std::unique_ptr<MockImageResourceObserver> observer = |
| (...skipping 990 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1552 EXPECT_TRUE(observer->ImageNotifyFinishedCalled()); | 1595 EXPECT_TRUE(observer->ImageNotifyFinishedCalled()); |
| 1553 EXPECT_TRUE(image_resource->GetContent()->GetImage()->IsBitmapImage()); | 1596 EXPECT_TRUE(image_resource->GetContent()->GetImage()->IsBitmapImage()); |
| 1554 EXPECT_EQ(50, image_resource->GetContent()->GetImage()->width()); | 1597 EXPECT_EQ(50, image_resource->GetContent()->GetImage()->width()); |
| 1555 EXPECT_EQ(50, image_resource->GetContent()->GetImage()->height()); | 1598 EXPECT_EQ(50, image_resource->GetContent()->GetImage()->height()); |
| 1556 | 1599 |
| 1557 WTF::SetTimeFunctionsForTesting(nullptr); | 1600 WTF::SetTimeFunctionsForTesting(nullptr); |
| 1558 } | 1601 } |
| 1559 | 1602 |
| 1560 } // namespace | 1603 } // namespace |
| 1561 } // namespace blink | 1604 } // namespace blink |
| OLD | NEW |