| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "platform/loader/fetch/Resource.h" | 5 #include "platform/loader/fetch/Resource.h" |
| 6 | 6 |
| 7 #include "platform/SharedBuffer.h" | 7 #include "platform/SharedBuffer.h" |
| 8 #include "platform/loader/fetch/RawResource.h" | 8 #include "platform/loader/fetch/RawResource.h" |
| 9 #include "platform/loader/fetch/ResourceRequest.h" | 9 #include "platform/loader/fetch/ResourceRequest.h" |
| 10 #include "platform/loader/fetch/ResourceResponse.h" | 10 #include "platform/loader/fetch/ResourceResponse.h" |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 70 CreateTestResourceAndSetCachedMetadata(response); | 70 CreateTestResourceAndSetCachedMetadata(response); |
| 71 EXPECT_EQ(0u, mock->CachedURLs().size()); | 71 EXPECT_EQ(0u, mock->CachedURLs().size()); |
| 72 } | 72 } |
| 73 | 73 |
| 74 TEST(ResourceTest, RevalidateWithFragment) { | 74 TEST(ResourceTest, RevalidateWithFragment) { |
| 75 ScopedTestingPlatformSupport<MockPlatform> mock; | 75 ScopedTestingPlatformSupport<MockPlatform> mock; |
| 76 KURL url(kParsedURLString, "http://127.0.0.1:8000/foo.html"); | 76 KURL url(kParsedURLString, "http://127.0.0.1:8000/foo.html"); |
| 77 ResourceResponse response; | 77 ResourceResponse response; |
| 78 response.SetURL(url); | 78 response.SetURL(url); |
| 79 response.SetHTTPStatusCode(200); | 79 response.SetHTTPStatusCode(200); |
| 80 Resource* resource = RawResource::Create(url, Resource::kRaw); | 80 Resource* resource = |
| 81 RawResource::Create(ResourceRequest(url), Resource::kRaw); |
| 81 resource->ResponseReceived(response, nullptr); | 82 resource->ResponseReceived(response, nullptr); |
| 82 resource->Finish(); | 83 resource->Finish(); |
| 83 | 84 |
| 84 // Revalidating with a url that differs by only the fragment | 85 // Revalidating with a url that differs by only the fragment |
| 85 // shouldn't trigger a securiy check. | 86 // shouldn't trigger a securiy check. |
| 86 url.SetFragmentIdentifier("bar"); | 87 url.SetFragmentIdentifier("bar"); |
| 87 resource->SetRevalidatingRequest(ResourceRequest(url)); | 88 resource->SetRevalidatingRequest(ResourceRequest(url)); |
| 88 ResourceResponse revalidating_response; | 89 ResourceResponse revalidating_response; |
| 89 revalidating_response.SetURL(url); | 90 revalidating_response.SetURL(url); |
| 90 revalidating_response.SetHTTPStatusCode(304); | 91 revalidating_response.SetHTTPStatusCode(304); |
| 91 resource->ResponseReceived(revalidating_response, nullptr); | 92 resource->ResponseReceived(revalidating_response, nullptr); |
| 92 } | 93 } |
| 93 | 94 |
| 94 TEST(ResourceTest, Vary) { | 95 TEST(ResourceTest, Vary) { |
| 95 ScopedTestingPlatformSupport<MockPlatform> mock; | 96 ScopedTestingPlatformSupport<MockPlatform> mock; |
| 96 KURL url(kParsedURLString, "http://127.0.0.1:8000/foo.html"); | 97 KURL url(kParsedURLString, "http://127.0.0.1:8000/foo.html"); |
| 97 ResourceResponse response; | 98 ResourceResponse response; |
| 98 response.SetURL(url); | 99 response.SetURL(url); |
| 99 response.SetHTTPStatusCode(200); | 100 response.SetHTTPStatusCode(200); |
| 100 | 101 |
| 101 Resource* resource = RawResource::Create(url, Resource::kRaw); | 102 Resource* resource = |
| 103 RawResource::Create(ResourceRequest(url), Resource::kRaw); |
| 102 resource->ResponseReceived(response, nullptr); | 104 resource->ResponseReceived(response, nullptr); |
| 103 resource->Finish(); | 105 resource->Finish(); |
| 104 | 106 |
| 105 ResourceRequest new_request(url); | 107 ResourceRequest new_request(url); |
| 106 EXPECT_FALSE(resource->MustReloadDueToVaryHeader(new_request)); | 108 EXPECT_FALSE(resource->MustReloadDueToVaryHeader(new_request)); |
| 107 | 109 |
| 108 response.SetHTTPHeaderField(HTTPNames::Vary, "*"); | 110 response.SetHTTPHeaderField(HTTPNames::Vary, "*"); |
| 109 resource->SetResponse(response); | 111 resource->SetResponse(response); |
| 110 EXPECT_TRUE(resource->MustReloadDueToVaryHeader(new_request)); | 112 EXPECT_TRUE(resource->MustReloadDueToVaryHeader(new_request)); |
| 111 | 113 |
| (...skipping 30 matching lines...) Expand all Loading... |
| 142 response.SetHTTPHeaderField(HTTPNames::Vary, "User-Agent, Referer"); | 144 response.SetHTTPHeaderField(HTTPNames::Vary, "User-Agent, Referer"); |
| 143 resource->SetResponse(response); | 145 resource->SetResponse(response); |
| 144 EXPECT_TRUE(resource->MustReloadDueToVaryHeader(new_request)); | 146 EXPECT_TRUE(resource->MustReloadDueToVaryHeader(new_request)); |
| 145 | 147 |
| 146 // Two matching | 148 // Two matching |
| 147 new_request.SetHTTPHeaderField(HTTPNames::Referer, "http://foo.com"); | 149 new_request.SetHTTPHeaderField(HTTPNames::Referer, "http://foo.com"); |
| 148 EXPECT_FALSE(resource->MustReloadDueToVaryHeader(new_request)); | 150 EXPECT_FALSE(resource->MustReloadDueToVaryHeader(new_request)); |
| 149 } | 151 } |
| 150 | 152 |
| 151 } // namespace blink | 153 } // namespace blink |
| OLD | NEW |