| 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 26 matching lines...) Expand all  Loading... | 
|   37   std::unique_ptr<WebURLLoaderTestDelegate> default_delegate; |   37   std::unique_ptr<WebURLLoaderTestDelegate> default_delegate; | 
|   38   if (!delegate) { |   38   if (!delegate) { | 
|   39     default_delegate = wrapUnique(new WebURLLoaderTestDelegate()); |   39     default_delegate = wrapUnique(new WebURLLoaderTestDelegate()); | 
|   40     delegate = default_delegate.get(); |   40     delegate = default_delegate.get(); | 
|   41   } |   41   } | 
|   42  |   42  | 
|   43   // didReceiveResponse() and didReceiveData() might end up getting ::cancel() |   43   // didReceiveResponse() and didReceiveData() might end up getting ::cancel() | 
|   44   // to be called which will make the ResourceLoader to delete |this|. |   44   // to be called which will make the ResourceLoader to delete |this|. | 
|   45   WeakPtr<WebURLLoaderMock> self = weak_factory_.createWeakPtr(); |   45   WeakPtr<WebURLLoaderMock> self = weak_factory_.createWeakPtr(); | 
|   46  |   46  | 
|   47   delegate->didReceiveResponse(client_, this, response); |   47   delegate->didReceiveResponse(client_, response); | 
|   48   if (!self) |   48   if (!self) | 
|   49     return; |   49     return; | 
|   50  |   50  | 
|   51   if (error.reason) { |   51   if (error.reason) { | 
|   52     delegate->didFail(client_, this, error, data.size(), 0); |   52     delegate->didFail(client_, error, data.size(), 0); | 
|   53     return; |   53     return; | 
|   54   } |   54   } | 
|   55   delegate->didReceiveData(client_, this, data.data(), data.size(), |   55   delegate->didReceiveData(client_, data.data(), data.size(), data.size()); | 
|   56                            data.size()); |  | 
|   57   if (!self) |   56   if (!self) | 
|   58     return; |   57     return; | 
|   59  |   58  | 
|   60   delegate->didFinishLoading(client_, this, 0, data.size(), data.size()); |   59   delegate->didFinishLoading(client_, 0, data.size(), data.size()); | 
|   61 } |   60 } | 
|   62  |   61  | 
|   63 WebURLRequest WebURLLoaderMock::ServeRedirect( |   62 WebURLRequest WebURLLoaderMock::ServeRedirect( | 
|   64     const WebURLRequest& request, |   63     const WebURLRequest& request, | 
|   65     const WebURLResponse& redirectResponse) { |   64     const WebURLResponse& redirectResponse) { | 
|   66   KURL redirectURL( |   65   KURL redirectURL( | 
|   67       ParsedURLString, redirectResponse.httpHeaderField("Location")); |   66       ParsedURLString, redirectResponse.httpHeaderField("Location")); | 
|   68  |   67  | 
|   69   WebURLRequest newRequest(redirectURL); |   68   WebURLRequest newRequest(redirectURL); | 
|   70   newRequest.setFirstPartyForCookies(redirectURL); |   69   newRequest.setFirstPartyForCookies(redirectURL); | 
|   71   newRequest.setDownloadToFile(request.downloadToFile()); |   70   newRequest.setDownloadToFile(request.downloadToFile()); | 
|   72   newRequest.setUseStreamOnResponse(request.useStreamOnResponse()); |   71   newRequest.setUseStreamOnResponse(request.useStreamOnResponse()); | 
|   73   newRequest.setRequestContext(request.getRequestContext()); |   72   newRequest.setRequestContext(request.getRequestContext()); | 
|   74   newRequest.setFrameType(request.getFrameType()); |   73   newRequest.setFrameType(request.getFrameType()); | 
|   75   newRequest.setSkipServiceWorker(request.skipServiceWorker()); |   74   newRequest.setSkipServiceWorker(request.skipServiceWorker()); | 
|   76   newRequest.setShouldResetAppCache(request.shouldResetAppCache()); |   75   newRequest.setShouldResetAppCache(request.shouldResetAppCache()); | 
|   77   newRequest.setFetchRequestMode(request.getFetchRequestMode()); |   76   newRequest.setFetchRequestMode(request.getFetchRequestMode()); | 
|   78   newRequest.setFetchCredentialsMode(request.getFetchCredentialsMode()); |   77   newRequest.setFetchCredentialsMode(request.getFetchCredentialsMode()); | 
|   79   newRequest.setHTTPMethod(request.httpMethod()); |   78   newRequest.setHTTPMethod(request.httpMethod()); | 
|   80   newRequest.setHTTPBody(request.httpBody()); |   79   newRequest.setHTTPBody(request.httpBody()); | 
|   81  |   80  | 
|   82   WeakPtr<WebURLLoaderMock> self = weak_factory_.createWeakPtr(); |   81   WeakPtr<WebURLLoaderMock> self = weak_factory_.createWeakPtr(); | 
|   83  |   82  | 
|   84   bool follow = client_->willFollowRedirect(this, newRequest, redirectResponse); |   83   bool follow = client_->willFollowRedirect(newRequest, redirectResponse); | 
|   85   if (!follow) |   84   if (!follow) | 
|   86     newRequest = WebURLRequest(); |   85     newRequest = WebURLRequest(); | 
|   87  |   86  | 
|   88   // |this| might be deleted in willFollowRedirect(). |   87   // |this| might be deleted in willFollowRedirect(). | 
|   89   if (!self) |   88   if (!self) | 
|   90     return newRequest; |   89     return newRequest; | 
|   91  |   90  | 
|   92   if (!follow) |   91   if (!follow) | 
|   93     cancel(); |   92     cancel(); | 
|   94  |   93  | 
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  158   // In principle this is NOTIMPLEMENTED(), but if we put that here it floods |  157   // In principle this is NOTIMPLEMENTED(), but if we put that here it floods | 
|  159   // the console during webkit unit tests, so we leave the function empty. |  158   // the console during webkit unit tests, so we leave the function empty. | 
|  160   DCHECK(runner); |  159   DCHECK(runner); | 
|  161 } |  160 } | 
|  162  |  161  | 
|  163 WeakPtr<WebURLLoaderMock> WebURLLoaderMock::GetWeakPtr() { |  162 WeakPtr<WebURLLoaderMock> WebURLLoaderMock::GetWeakPtr() { | 
|  164   return weak_factory_.createWeakPtr(); |  163   return weak_factory_.createWeakPtr(); | 
|  165 } |  164 } | 
|  166  |  165  | 
|  167 } // namespace blink |  166 } // namespace blink | 
| OLD | NEW |