| Index: third_party/WebKit/Source/core/fetch/ResourceFetcherTest.cpp
|
| diff --git a/third_party/WebKit/Source/core/fetch/ResourceFetcherTest.cpp b/third_party/WebKit/Source/core/fetch/ResourceFetcherTest.cpp
|
| index e938a165650150175a406464b43342482cb3c35d..80ff9d0efa36623385b3cdd5de9bea31237f7063 100644
|
| --- a/third_party/WebKit/Source/core/fetch/ResourceFetcherTest.cpp
|
| +++ b/third_party/WebKit/Source/core/fetch/ResourceFetcherTest.cpp
|
| @@ -615,4 +615,30 @@ TEST_F(ResourceFetcherTest, Revalidate304) {
|
| EXPECT_NE(resource, newResource);
|
| }
|
|
|
| +TEST_F(ResourceFetcherTest, LinkPreloadImageMultipleFetchersAndMove) {
|
| + ResourceFetcher* fetcher = ResourceFetcher::create(
|
| + MockFetchContext::create(MockFetchContext::kShouldLoadNewResource));
|
| + ResourceFetcher* fetcher2 = ResourceFetcher::create(
|
| + MockFetchContext::create(MockFetchContext::kShouldLoadNewResource));
|
| +
|
| + KURL url(ParsedURLString, "http://127.0.0.1:8000/foo.png");
|
| + URLTestHelpers::registerMockedURLLoad(url, testImageFilename, "image/png");
|
| +
|
| + FetchRequest fetchRequestOriginal = FetchRequest(url, FetchInitiatorInfo());
|
| + fetchRequestOriginal.setLinkPreload(true);
|
| + Resource* resource = ImageResource::fetch(fetchRequestOriginal, fetcher);
|
| + ASSERT_TRUE(resource);
|
| + EXPECT_TRUE(resource->isLinkPreload());
|
| + fetcher->preloadStarted(resource);
|
| +
|
| + // Image created by parser on the second fetcher
|
| + FetchRequest fetchRequest2 = FetchRequest(url, FetchInitiatorInfo());
|
| + Resource* newResource2 = ImageResource::fetch(fetchRequest2, fetcher2);
|
| + Persistent<MockResourceClient> client2 = new MockResourceClient(newResource2);
|
| + EXPECT_EQ(resource, newResource2);
|
| + EXPECT_FALSE(fetcher2->isFetching());
|
| + Platform::current()->getURLLoaderMockFactory()->serveAsynchronousRequests();
|
| + Platform::current()->getURLLoaderMockFactory()->unregisterURL(url);
|
| +}
|
| +
|
| } // namespace blink
|
|
|