| OLD | NEW |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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/testing/weburl_loader_mock.h" | 5 #include "platform/testing/weburl_loader_mock.h" |
| 6 | 6 |
| 7 #include "platform/testing/weburl_loader_mock_factory_impl.h" | 7 #include "platform/testing/weburl_loader_mock_factory_impl.h" |
| 8 #include "public/platform/URLConversion.h" | 8 #include "public/platform/URLConversion.h" |
| 9 #include "public/platform/WebData.h" | 9 #include "public/platform/WebData.h" |
| 10 #include "public/platform/WebURLError.h" | 10 #include "public/platform/WebURLError.h" |
| (...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 75 newRequest.setFrameType(request.getFrameType()); | 75 newRequest.setFrameType(request.getFrameType()); |
| 76 newRequest.setSkipServiceWorker(request.skipServiceWorker()); | 76 newRequest.setSkipServiceWorker(request.skipServiceWorker()); |
| 77 newRequest.setShouldResetAppCache(request.shouldResetAppCache()); | 77 newRequest.setShouldResetAppCache(request.shouldResetAppCache()); |
| 78 newRequest.setFetchRequestMode(request.getFetchRequestMode()); | 78 newRequest.setFetchRequestMode(request.getFetchRequestMode()); |
| 79 newRequest.setFetchCredentialsMode(request.getFetchCredentialsMode()); | 79 newRequest.setFetchCredentialsMode(request.getFetchCredentialsMode()); |
| 80 newRequest.setHTTPMethod(request.httpMethod()); | 80 newRequest.setHTTPMethod(request.httpMethod()); |
| 81 newRequest.setHTTPBody(request.httpBody()); | 81 newRequest.setHTTPBody(request.httpBody()); |
| 82 | 82 |
| 83 WeakPtr<WebURLLoaderMock> self = weak_factory_.createWeakPtr(); | 83 WeakPtr<WebURLLoaderMock> self = weak_factory_.createWeakPtr(); |
| 84 | 84 |
| 85 client_->willFollowRedirect(this, newRequest, redirectResponse, | 85 bool follow = client_->willFollowRedirect(this, newRequest, redirectResponse, |
| 86 kRedirectResponseOverheadBytes); | 86 kRedirectResponseOverheadBytes); |
| 87 if (!follow) |
| 88 newRequest = WebURLRequest(); |
| 87 | 89 |
| 88 // |this| might be deleted in willFollowRedirect(). | 90 // |this| might be deleted in willFollowRedirect(). |
| 89 if (!self) | 91 if (!self) |
| 90 return newRequest; | 92 return newRequest; |
| 91 | 93 |
| 92 if (redirectURL != KURL(newRequest.url())) { | 94 if (!follow) |
| 93 // Only follow the redirect if WebKit left the URL unmodified. | |
| 94 // We assume that WebKit only changes the URL to suppress a redirect, and we | |
| 95 // assume that it does so by setting it to be invalid. | |
| 96 DCHECK(!newRequest.url().isValid()); | |
| 97 cancel(); | 95 cancel(); |
| 98 } | |
| 99 | 96 |
| 100 return newRequest; | 97 return newRequest; |
| 101 } | 98 } |
| 102 | 99 |
| 103 void WebURLLoaderMock::loadSynchronously(const WebURLRequest& request, | 100 void WebURLLoaderMock::loadSynchronously(const WebURLRequest& request, |
| 104 WebURLResponse& response, | 101 WebURLResponse& response, |
| 105 WebURLError& error, | 102 WebURLError& error, |
| 106 WebData& data, | 103 WebData& data, |
| 107 int64_t& encoded_data_length) { | 104 int64_t& encoded_data_length) { |
| 108 if (factory_->IsMockedURL(request.url())) { | 105 if (factory_->IsMockedURL(request.url())) { |
| (...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 161 // In principle this is NOTIMPLEMENTED(), but if we put that here it floods | 158 // In principle this is NOTIMPLEMENTED(), but if we put that here it floods |
| 162 // the console during webkit unit tests, so we leave the function empty. | 159 // the console during webkit unit tests, so we leave the function empty. |
| 163 DCHECK(runner); | 160 DCHECK(runner); |
| 164 } | 161 } |
| 165 | 162 |
| 166 WeakPtr<WebURLLoaderMock> WebURLLoaderMock::GetWeakPtr() { | 163 WeakPtr<WebURLLoaderMock> WebURLLoaderMock::GetWeakPtr() { |
| 167 return weak_factory_.createWeakPtr(); | 164 return weak_factory_.createWeakPtr(); |
| 168 } | 165 } |
| 169 | 166 |
| 170 } // namespace blink | 167 } // namespace blink |
| OLD | NEW |