Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(928)

Unified Diff: third_party/WebKit/Source/core/fetch/ResourceFetcherTest.cpp

Issue 2549093008: Loading: Use MockResource in ResourceFetcherTest.cpp (Closed)
Patch Set: [rebase] Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 a0ecc90bf92ab90fc2924149ae7d8eb70c5dbc69..595f3b97acc8279cd8d947f1026bd0b63c9b2008 100644
--- a/third_party/WebKit/Source/core/fetch/ResourceFetcherTest.cpp
+++ b/third_party/WebKit/Source/core/fetch/ResourceFetcherTest.cpp
@@ -33,9 +33,9 @@
#include "core/fetch/FetchInitiatorInfo.h"
#include "core/fetch/FetchInitiatorTypeNames.h"
#include "core/fetch/FetchRequest.h"
-#include "core/fetch/ImageResource.h"
#include "core/fetch/MemoryCache.h"
#include "core/fetch/MockFetchContext.h"
+#include "core/fetch/MockResource.h"
#include "core/fetch/MockResourceClient.h"
#include "core/fetch/RawResource.h"
#include "core/fetch/ResourceLoader.h"
@@ -62,8 +62,9 @@
namespace blink {
namespace {
-const char testImageFilename[] = "white-1x1.png";
-const int testImageSize = 103; // size of web/tests/data/white-1x1.png
+constexpr char kTestResourceFilename[] = "white-1x1.png";
+constexpr char kTestResourceMimeType[] = "image/png";
+constexpr int kTestResourceSize = 103; // size of web/tests/data/white-1x1.png
}
class ResourceFetcherTest : public ::testing::Test {};
@@ -98,18 +99,18 @@ TEST_F(ResourceFetcherTest, UseExistingResource) {
response.setHTTPStatusCode(200);
response.setHTTPHeaderField(HTTPNames::Cache_Control, "max-age=3600");
URLTestHelpers::registerMockedURLLoadWithCustomResponse(
- url, testImageFilename, WebString::fromUTF8(""),
+ url, kTestResourceFilename, WebString::fromUTF8(""),
WrappedResourceResponse(response));
FetchRequest fetchRequest = FetchRequest(url, FetchInitiatorInfo());
- Resource* resource = ImageResource::fetch(fetchRequest, fetcher);
+ Resource* resource = MockResource::fetch(fetchRequest, fetcher);
ASSERT_TRUE(resource);
Platform::current()->getURLLoaderMockFactory()->serveAsynchronousRequests();
Platform::current()->getURLLoaderMockFactory()->unregisterURL(url);
EXPECT_TRUE(resource->isLoaded());
EXPECT_TRUE(memoryCache()->contains(resource));
- Resource* newResource = ImageResource::fetch(fetchRequest, fetcher);
+ Resource* newResource = MockResource::fetch(fetchRequest, fetcher);
EXPECT_EQ(resource, newResource);
memoryCache()->remove(resource);
}
@@ -212,7 +213,7 @@ TEST_F(ResourceFetcherTest, VaryOnBack) {
memoryCache()->remove(newResource);
}
-TEST_F(ResourceFetcherTest, VaryImage) {
+TEST_F(ResourceFetcherTest, VaryResource) {
ResourceFetcher* fetcher = ResourceFetcher::create(
MockFetchContext::create(MockFetchContext::kShouldLoadNewResource));
@@ -223,17 +224,17 @@ TEST_F(ResourceFetcherTest, VaryImage) {
response.setHTTPHeaderField(HTTPNames::Cache_Control, "max-age=3600");
response.setHTTPHeaderField(HTTPNames::Vary, "*");
URLTestHelpers::registerMockedURLLoadWithCustomResponse(
- url, testImageFilename, WebString::fromUTF8(""),
+ url, kTestResourceFilename, WebString::fromUTF8(""),
WrappedResourceResponse(response));
FetchRequest fetchRequestOriginal = FetchRequest(url, FetchInitiatorInfo());
- Resource* resource = ImageResource::fetch(fetchRequestOriginal, fetcher);
+ Resource* resource = MockResource::fetch(fetchRequestOriginal, fetcher);
ASSERT_TRUE(resource);
Platform::current()->getURLLoaderMockFactory()->serveAsynchronousRequests();
ASSERT_TRUE(resource->hasVaryHeader());
FetchRequest fetchRequest = FetchRequest(url, FetchInitiatorInfo());
- Resource* newResource = ImageResource::fetch(fetchRequest, fetcher);
+ Resource* newResource = MockResource::fetch(fetchRequest, fetcher);
EXPECT_EQ(resource, newResource);
memoryCache()->remove(newResource);
@@ -256,7 +257,7 @@ class RequestSameResourceOnComplete
context->setCachePolicy(CachePolicyRevalidate);
ResourceFetcher* fetcher2 = ResourceFetcher::create(context);
FetchRequest fetchRequest2(m_resource->url(), FetchInitiatorInfo());
- Resource* resource2 = ImageResource::fetch(fetchRequest2, fetcher2);
+ Resource* resource2 = MockResource::fetch(fetchRequest2, fetcher2);
EXPECT_EQ(m_resource, resource2);
m_notifyFinishedCalled = true;
}
@@ -282,14 +283,14 @@ TEST_F(ResourceFetcherTest, RevalidateWhileFinishingLoading) {
response.setHTTPHeaderField(HTTPNames::Cache_Control, "max-age=3600");
response.setHTTPHeaderField(HTTPNames::ETag, "1234567890");
URLTestHelpers::registerMockedURLLoadWithCustomResponse(
- url, testImageFilename, WebString::fromUTF8(""),
+ url, kTestResourceFilename, WebString::fromUTF8(""),
WrappedResourceResponse(response));
ResourceFetcher* fetcher1 = ResourceFetcher::create(
MockFetchContext::create(MockFetchContext::kShouldLoadNewResource));
ResourceRequest request1(url);
request1.setHTTPHeaderField(HTTPNames::Cache_Control, "no-cache");
FetchRequest fetchRequest1 = FetchRequest(request1, FetchInitiatorInfo());
- Resource* resource1 = ImageResource::fetch(fetchRequest1, fetcher1);
+ Resource* resource1 = MockResource::fetch(fetchRequest1, fetcher1);
Persistent<RequestSameResourceOnComplete> client =
new RequestSameResourceOnComplete(resource1);
resource1->addClient(client);
@@ -364,7 +365,8 @@ class ServeRequestsOnCompleteClient final
// network response, leading to an invalid state transition in ResourceLoader.
TEST_F(ResourceFetcherTest, ResponseOnCancel) {
KURL url(ParsedURLString, "http://127.0.0.1:8000/foo.png");
- URLTestHelpers::registerMockedURLLoad(url, testImageFilename, "image/png");
+ URLTestHelpers::registerMockedURLLoad(url, kTestResourceFilename,
+ kTestResourceMimeType);
ResourceFetcher* fetcher = ResourceFetcher::create(
MockFetchContext::create(MockFetchContext::kShouldLoadNewResource));
@@ -403,7 +405,7 @@ class ScopedMockRedirectRequester {
void registerFinalResource(const WebString& url) {
KURL finalURL(ParsedURLString, url);
- URLTestHelpers::registerMockedURLLoad(finalURL, testImageFilename);
+ URLTestHelpers::registerMockedURLLoad(finalURL, kTestResourceFilename);
}
void request(const WebString& url) {
@@ -438,7 +440,7 @@ TEST_F(ResourceFetcherTest, SameOriginRedirect) {
requester.registerFinalResource(finalURL);
requester.request(redirectURL);
- EXPECT_EQ(kRedirectResponseOverheadBytes + testImageSize,
+ EXPECT_EQ(kRedirectResponseOverheadBytes + kTestResourceSize,
requester.context()->getTransferSize());
}
@@ -450,7 +452,7 @@ TEST_F(ResourceFetcherTest, CrossOriginRedirect) {
requester.registerFinalResource(finalURL);
requester.request(redirectURL);
- EXPECT_EQ(testImageSize, requester.context()->getTransferSize());
+ EXPECT_EQ(kTestResourceSize, requester.context()->getTransferSize());
}
TEST_F(ResourceFetcherTest, ComplexCrossOriginRedirect) {
@@ -465,12 +467,13 @@ TEST_F(ResourceFetcherTest, ComplexCrossOriginRedirect) {
requester.registerFinalResource(finalURL);
requester.request(redirectURL1);
- EXPECT_EQ(testImageSize, requester.context()->getTransferSize());
+ EXPECT_EQ(kTestResourceSize, requester.context()->getTransferSize());
}
TEST_F(ResourceFetcherTest, SynchronousRequest) {
KURL url(ParsedURLString, "http://127.0.0.1:8000/foo.png");
- URLTestHelpers::registerMockedURLLoad(url, testImageFilename, "image/png");
+ URLTestHelpers::registerMockedURLLoad(url, kTestResourceFilename,
+ kTestResourceMimeType);
ResourceFetcher* fetcher = ResourceFetcher::create(
MockFetchContext::create(MockFetchContext::kShouldLoadNewResource));
@@ -487,21 +490,22 @@ TEST_F(ResourceFetcherTest, SynchronousRequest) {
memoryCache()->remove(resource);
}
-TEST_F(ResourceFetcherTest, PreloadImageTwice) {
+TEST_F(ResourceFetcherTest, PreloadResourceTwice) {
ResourceFetcher* fetcher = ResourceFetcher::create(
MockFetchContext::create(MockFetchContext::kShouldLoadNewResource));
KURL url(ParsedURLString, "http://127.0.0.1:8000/foo.png");
- URLTestHelpers::registerMockedURLLoad(url, testImageFilename, "image/png");
+ URLTestHelpers::registerMockedURLLoad(url, kTestResourceFilename,
+ kTestResourceMimeType);
FetchRequest fetchRequestOriginal = FetchRequest(url, FetchInitiatorInfo());
- Resource* resource = ImageResource::fetch(fetchRequestOriginal, fetcher);
+ Resource* resource = MockResource::fetch(fetchRequestOriginal, fetcher);
ASSERT_TRUE(resource);
Platform::current()->getURLLoaderMockFactory()->serveAsynchronousRequests();
fetcher->preloadStarted(resource);
FetchRequest fetchRequest = FetchRequest(url, FetchInitiatorInfo());
- Resource* newResource = ImageResource::fetch(fetchRequest, fetcher);
+ Resource* newResource = MockResource::fetch(fetchRequest, fetcher);
EXPECT_EQ(resource, newResource);
fetcher->preloadStarted(resource);
@@ -511,34 +515,35 @@ TEST_F(ResourceFetcherTest, PreloadImageTwice) {
EXPECT_FALSE(resource->isPreloaded());
}
-TEST_F(ResourceFetcherTest, LinkPreloadImageAndUse) {
+TEST_F(ResourceFetcherTest, LinkPreloadResourceAndUse) {
ResourceFetcher* fetcher = ResourceFetcher::create(
MockFetchContext::create(MockFetchContext::kShouldLoadNewResource));
KURL url(ParsedURLString, "http://127.0.0.1:8000/foo.png");
- URLTestHelpers::registerMockedURLLoad(url, testImageFilename, "image/png");
+ URLTestHelpers::registerMockedURLLoad(url, kTestResourceFilename,
+ kTestResourceMimeType);
// Link preload preload scanner
FetchRequest fetchRequestOriginal = FetchRequest(url, FetchInitiatorInfo());
fetchRequestOriginal.setLinkPreload(true);
- Resource* resource = ImageResource::fetch(fetchRequestOriginal, fetcher);
+ Resource* resource = MockResource::fetch(fetchRequestOriginal, fetcher);
ASSERT_TRUE(resource);
EXPECT_TRUE(resource->isLinkPreload());
Platform::current()->getURLLoaderMockFactory()->serveAsynchronousRequests();
fetcher->preloadStarted(resource);
- // Image preload scanner
+ // Resource created by preload scanner
FetchRequest fetchRequestPreloadScanner =
FetchRequest(url, FetchInitiatorInfo());
- Resource* imgPreloadScannerResource =
- ImageResource::fetch(fetchRequestPreloadScanner, fetcher);
- EXPECT_EQ(resource, imgPreloadScannerResource);
+ Resource* preloadScannerResource =
+ MockResource::fetch(fetchRequestPreloadScanner, fetcher);
+ EXPECT_EQ(resource, preloadScannerResource);
EXPECT_FALSE(resource->isLinkPreload());
fetcher->preloadStarted(resource);
- // Image created by parser
+ // Resource created by parser
FetchRequest fetchRequest = FetchRequest(url, FetchInitiatorInfo());
- Resource* newResource = ImageResource::fetch(fetchRequest, fetcher);
+ Resource* newResource = MockResource::fetch(fetchRequest, fetcher);
Persistent<MockResourceClient> client = new MockResourceClient(newResource);
EXPECT_EQ(resource, newResource);
EXPECT_FALSE(resource->isLinkPreload());
@@ -550,18 +555,19 @@ TEST_F(ResourceFetcherTest, LinkPreloadImageAndUse) {
EXPECT_FALSE(resource->isPreloaded());
}
-TEST_F(ResourceFetcherTest, LinkPreloadImageMultipleFetchersAndUse) {
+TEST_F(ResourceFetcherTest, LinkPreloadResourceMultipleFetchersAndUse) {
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");
+ URLTestHelpers::registerMockedURLLoad(url, kTestResourceFilename,
+ kTestResourceMimeType);
FetchRequest fetchRequestOriginal = FetchRequest(url, FetchInitiatorInfo());
fetchRequestOriginal.setLinkPreload(true);
- Resource* resource = ImageResource::fetch(fetchRequestOriginal, fetcher);
+ Resource* resource = MockResource::fetch(fetchRequestOriginal, fetcher);
ASSERT_TRUE(resource);
EXPECT_TRUE(resource->isLinkPreload());
Platform::current()->getURLLoaderMockFactory()->serveAsynchronousRequests();
@@ -569,7 +575,7 @@ TEST_F(ResourceFetcherTest, LinkPreloadImageMultipleFetchersAndUse) {
FetchRequest fetchRequestSecond = FetchRequest(url, FetchInitiatorInfo());
fetchRequestSecond.setLinkPreload(true);
- Resource* secondResource = ImageResource::fetch(fetchRequestSecond, fetcher2);
+ Resource* secondResource = MockResource::fetch(fetchRequestSecond, fetcher2);
ASSERT_TRUE(secondResource);
EXPECT_TRUE(secondResource->isLinkPreload());
Platform::current()->getURLLoaderMockFactory()->serveAsynchronousRequests();
@@ -580,42 +586,43 @@ TEST_F(ResourceFetcherTest, LinkPreloadImageMultipleFetchersAndUse) {
FetchRequest(url, FetchInitiatorInfo());
fetchRequestLinkPreloadScanner.setLinkPreload(true);
Resource* linkPreloadScannerResource =
- ImageResource::fetch(fetchRequestLinkPreloadScanner, fetcher);
+ MockResource::fetch(fetchRequestLinkPreloadScanner, fetcher);
EXPECT_EQ(resource, linkPreloadScannerResource);
EXPECT_TRUE(resource->isLinkPreload());
fetcher->preloadStarted(resource);
- // Image preload scanner
+ // Resource created by preload scanner
FetchRequest fetchRequestPreloadScanner =
FetchRequest(url, FetchInitiatorInfo());
- Resource* imgPreloadScannerResource =
- ImageResource::fetch(fetchRequestPreloadScanner, fetcher);
- EXPECT_EQ(resource, imgPreloadScannerResource);
+ Resource* preloadScannerResource =
+ MockResource::fetch(fetchRequestPreloadScanner, fetcher);
+ EXPECT_EQ(resource, preloadScannerResource);
EXPECT_FALSE(resource->isLinkPreload());
fetcher->preloadStarted(resource);
- // Image preload scanner on the second fetcher
+ // Resource created by preload scanner on the second fetcher
FetchRequest fetchRequestPreloadScanner2 =
FetchRequest(url, FetchInitiatorInfo());
- Resource* imgPreloadScannerResource2 =
- ImageResource::fetch(fetchRequestPreloadScanner2, fetcher2);
- EXPECT_EQ(resource, imgPreloadScannerResource2);
+ Resource* preloadScannerResource2 =
+ MockResource::fetch(fetchRequestPreloadScanner2, fetcher2);
+ EXPECT_EQ(resource, preloadScannerResource2);
EXPECT_FALSE(resource->isLinkPreload());
fetcher2->preloadStarted(resource);
- // Image created by parser
+ // Resource created by parser
FetchRequest fetchRequest = FetchRequest(url, FetchInitiatorInfo());
- Resource* newResource = ImageResource::fetch(fetchRequest, fetcher);
+ Resource* newResource = MockResource::fetch(fetchRequest, fetcher);
Persistent<MockResourceClient> client = new MockResourceClient(newResource);
EXPECT_EQ(resource, newResource);
EXPECT_FALSE(resource->isLinkPreload());
- // Image created by parser on the second fetcher
+ // Resource created by parser on the second fetcher
FetchRequest fetchRequest2 = FetchRequest(url, FetchInitiatorInfo());
- Resource* newResource2 = ImageResource::fetch(fetchRequest, fetcher2);
+ Resource* newResource2 = MockResource::fetch(fetchRequest, fetcher2);
Persistent<MockResourceClient> client2 = new MockResourceClient(newResource2);
EXPECT_EQ(resource, newResource2);
EXPECT_FALSE(resource->isLinkPreload());
+
// DCL reached on first fetcher
EXPECT_TRUE(resource->isPreloaded());
fetcher->clearPreloads(ResourceFetcher::ClearSpeculativeMarkupPreloads);
@@ -655,25 +662,26 @@ TEST_F(ResourceFetcherTest, Revalidate304) {
EXPECT_NE(resource, newResource);
}
-TEST_F(ResourceFetcherTest, LinkPreloadImageMultipleFetchersAndMove) {
+TEST_F(ResourceFetcherTest, LinkPreloadResourceMultipleFetchersAndMove) {
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");
+ URLTestHelpers::registerMockedURLLoad(url, kTestResourceFilename,
+ kTestResourceMimeType);
FetchRequest fetchRequestOriginal = FetchRequest(url, FetchInitiatorInfo());
fetchRequestOriginal.setLinkPreload(true);
- Resource* resource = ImageResource::fetch(fetchRequestOriginal, fetcher);
+ Resource* resource = MockResource::fetch(fetchRequestOriginal, fetcher);
ASSERT_TRUE(resource);
EXPECT_TRUE(resource->isLinkPreload());
fetcher->preloadStarted(resource);
- // Image created by parser on the second fetcher
+ // Resource created by parser on the second fetcher
FetchRequest fetchRequest2 = FetchRequest(url, FetchInitiatorInfo());
- Resource* newResource2 = ImageResource::fetch(fetchRequest2, fetcher2);
+ Resource* newResource2 = MockResource::fetch(fetchRequest2, fetcher2);
Persistent<MockResourceClient> client2 = new MockResourceClient(newResource2);
EXPECT_EQ(resource, newResource2);
EXPECT_FALSE(fetcher2->isFetching());
« no previous file with comments | « third_party/WebKit/Source/core/fetch/ResourceFetcher.cpp ('k') | third_party/WebKit/Source/core/loader/FrameFetchContext.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698