| Index: third_party/WebKit/Source/core/loader/resource/ImageResourceTest.cpp
|
| diff --git a/third_party/WebKit/Source/core/loader/resource/ImageResourceTest.cpp b/third_party/WebKit/Source/core/loader/resource/ImageResourceTest.cpp
|
| index c5c2ac20f78d64407e5bdd77dff2f6bda247bfb5..ca8926fb235ca9389f6575a0a5f6b94d43103e3e 100644
|
| --- a/third_party/WebKit/Source/core/loader/resource/ImageResourceTest.cpp
|
| +++ b/third_party/WebKit/Source/core/loader/resource/ImageResourceTest.cpp
|
| @@ -853,6 +853,8 @@ TEST(ImageResourceTest, CancelOnDecodeError) {
|
| ResourceFetcher::create(ImageResourceTestMockFetchContext::create());
|
| FetchRequest request(testURL, FetchInitiatorInfo());
|
| ImageResource* imageResource = ImageResource::fetch(request, fetcher);
|
| + std::unique_ptr<MockImageResourceObserver> observer =
|
| + MockImageResourceObserver::create(imageResource->getContent());
|
|
|
| imageResource->loader()->didReceiveResponse(
|
| WrappedResourceResponse(
|
| @@ -860,6 +862,37 @@ TEST(ImageResourceTest, CancelOnDecodeError) {
|
| nullptr);
|
| imageResource->loader()->didReceiveData("notactuallyanimage", 18);
|
| EXPECT_EQ(ResourceStatus::DecodeError, imageResource->getStatus());
|
| + EXPECT_TRUE(observer->imageNotifyFinishedCalled());
|
| + EXPECT_EQ(ResourceStatus::DecodeError,
|
| + observer->statusOnImageNotifyFinished());
|
| + EXPECT_FALSE(imageResource->isLoading());
|
| +}
|
| +
|
| +TEST(ImageResourceTest, DecodeErrorWithEmptyBody) {
|
| + KURL testURL(ParsedURLString, "http://www.test.com/cancelTest.html");
|
| + ScopedRegisteredURL scopedRegisteredURL(testURL);
|
| +
|
| + ResourceFetcher* fetcher =
|
| + ResourceFetcher::create(ImageResourceTestMockFetchContext::create());
|
| + FetchRequest request(testURL, FetchInitiatorInfo());
|
| + ImageResource* imageResource = ImageResource::fetch(request, fetcher);
|
| + std::unique_ptr<MockImageResourceObserver> observer =
|
| + MockImageResourceObserver::create(imageResource->getContent());
|
| +
|
| + imageResource->loader()->didReceiveResponse(
|
| + WrappedResourceResponse(
|
| + ResourceResponse(testURL, "image/jpeg", 0, nullAtom, String())),
|
| + nullptr);
|
| +
|
| + EXPECT_EQ(ResourceStatus::Pending, imageResource->getStatus());
|
| + EXPECT_FALSE(observer->imageNotifyFinishedCalled());
|
| +
|
| + imageResource->loader()->didFinishLoading(0.0, 0, 0);
|
| +
|
| + EXPECT_EQ(ResourceStatus::DecodeError, imageResource->getStatus());
|
| + EXPECT_TRUE(observer->imageNotifyFinishedCalled());
|
| + EXPECT_EQ(ResourceStatus::DecodeError,
|
| + observer->statusOnImageNotifyFinished());
|
| EXPECT_FALSE(imageResource->isLoading());
|
| }
|
|
|
|
|