Commit 680caf0f authored by Nate Chapin's avatar Nate Chapin Committed by Commit Bot

ExecutionContext post-migration cleanup - core/fetch/

Mostly just test updates, but change FetchManager::Loader to use
DynamicTo<LocalDOMWindow> instead of Document::DynamicFrom.

Bug: 1029822
Change-Id: I05de7e3e95b9c426ee384e2ad064a400bb49ad7f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2103300
Commit-Queue: Nate Chapin <japhet@chromium.org>
Reviewed-by: default avatarKentaro Hara <haraken@chromium.org>
Reviewed-by: default avatarYutaka Hirano <yhirano@chromium.org>
Reviewed-by: default avatarTsuyoshi Horo <horo@chromium.org>
Reviewed-by: default avatarDaniel Cheng <dcheng@chromium.org>
Cr-Commit-Position: refs/heads/master@{#751533}
parent 8223d457
......@@ -8,6 +8,7 @@
#include "mojo/public/cpp/bindings/self_owned_receiver.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/blink/renderer/core/fetch/bytes_consumer_test_util.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/loader/threadable_loader.h"
#include "third_party/blink/renderer/core/testing/page_test_base.h"
#include "third_party/blink/renderer/platform/blob/blob_data.h"
......@@ -67,7 +68,7 @@ TEST_F(BlobBytesConsumerTest, TwoPhaseRead) {
scoped_refptr<BlobDataHandle> blob_data_handle = CreateBlob(body);
BlobBytesConsumer* consumer = MakeGarbageCollected<BlobBytesConsumer>(
GetDocument().ToExecutionContext(), blob_data_handle);
GetFrame().DomWindow(), blob_data_handle);
EXPECT_EQ(PublicState::kReadableOrWaiting, consumer->GetPublicState());
EXPECT_FALSE(DidStartLoading());
......@@ -91,7 +92,7 @@ TEST_F(BlobBytesConsumerTest, TwoPhaseRead) {
TEST_F(BlobBytesConsumerTest, CancelBeforeStarting) {
scoped_refptr<BlobDataHandle> blob_data_handle = CreateBlob("foo bar");
BlobBytesConsumer* consumer = MakeGarbageCollected<BlobBytesConsumer>(
GetDocument().ToExecutionContext(), blob_data_handle);
GetFrame().DomWindow(), blob_data_handle);
BlobBytesConsumerTestClient* client =
MakeGarbageCollected<BlobBytesConsumerTestClient>();
consumer->SetClient(client);
......@@ -109,7 +110,7 @@ TEST_F(BlobBytesConsumerTest, CancelBeforeStarting) {
TEST_F(BlobBytesConsumerTest, CancelAfterStarting) {
scoped_refptr<BlobDataHandle> blob_data_handle = CreateBlob("foo bar");
BlobBytesConsumer* consumer = MakeGarbageCollected<BlobBytesConsumer>(
GetDocument().ToExecutionContext(), blob_data_handle);
GetFrame().DomWindow(), blob_data_handle);
BlobBytesConsumerTestClient* client =
MakeGarbageCollected<BlobBytesConsumerTestClient>();
consumer->SetClient(client);
......@@ -131,7 +132,7 @@ TEST_F(BlobBytesConsumerTest, DrainAsBlobDataHandle) {
String body = "hello, world";
scoped_refptr<BlobDataHandle> blob_data_handle = CreateBlob(body);
BlobBytesConsumer* consumer = MakeGarbageCollected<BlobBytesConsumer>(
GetDocument().ToExecutionContext(), blob_data_handle);
GetFrame().DomWindow(), blob_data_handle);
EXPECT_EQ(PublicState::kReadableOrWaiting, consumer->GetPublicState());
EXPECT_FALSE(DidStartLoading());
......@@ -151,7 +152,7 @@ TEST_F(BlobBytesConsumerTest, DrainAsBlobDataHandle_2) {
BlobDataHandle::Create("uuid", "", std::numeric_limits<uint64_t>::max(),
CreateBlob("foo bar")->CloneBlobRemote());
BlobBytesConsumer* consumer = MakeGarbageCollected<BlobBytesConsumer>(
GetDocument().ToExecutionContext(), blob_data_handle);
GetFrame().DomWindow(), blob_data_handle);
EXPECT_EQ(PublicState::kReadableOrWaiting, consumer->GetPublicState());
EXPECT_FALSE(DidStartLoading());
......@@ -171,7 +172,7 @@ TEST_F(BlobBytesConsumerTest, DrainAsBlobDataHandle_3) {
BlobDataHandle::Create("uuid", "", std::numeric_limits<uint64_t>::max(),
CreateBlob("foo bar")->CloneBlobRemote());
BlobBytesConsumer* consumer = MakeGarbageCollected<BlobBytesConsumer>(
GetDocument().ToExecutionContext(), blob_data_handle);
GetFrame().DomWindow(), blob_data_handle);
EXPECT_EQ(PublicState::kReadableOrWaiting, consumer->GetPublicState());
EXPECT_FALSE(DidStartLoading());
......@@ -186,7 +187,7 @@ TEST_F(BlobBytesConsumerTest, DrainAsFormData) {
String body = "hello, world";
scoped_refptr<BlobDataHandle> blob_data_handle = CreateBlob(body);
BlobBytesConsumer* consumer = MakeGarbageCollected<BlobBytesConsumer>(
GetDocument().ToExecutionContext(), blob_data_handle);
GetFrame().DomWindow(), blob_data_handle);
EXPECT_EQ(PublicState::kReadableOrWaiting, consumer->GetPublicState());
EXPECT_FALSE(DidStartLoading());
......@@ -204,8 +205,8 @@ TEST_F(BlobBytesConsumerTest, DrainAsFormData) {
}
TEST_F(BlobBytesConsumerTest, ConstructedFromNullHandle) {
BlobBytesConsumer* consumer = MakeGarbageCollected<BlobBytesConsumer>(
GetDocument().ToExecutionContext(), nullptr);
BlobBytesConsumer* consumer =
MakeGarbageCollected<BlobBytesConsumer>(GetFrame().DomWindow(), nullptr);
const char* buffer = nullptr;
size_t available;
EXPECT_EQ(BytesConsumer::PublicState::kClosed, consumer->GetPublicState());
......
......@@ -7,6 +7,7 @@
#include "base/memory/scoped_refptr.h"
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/blink/renderer/core/fetch/bytes_consumer_test_util.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/testing/page_test_base.h"
#include "third_party/blink/renderer/platform/blob/blob_data.h"
#include "third_party/blink/renderer/platform/loader/testing/bytes_consumer_test_reader.h"
......@@ -131,7 +132,7 @@ TEST_F(BytesConsumerTeeTest, CreateDone) {
BytesConsumer* dest1 = nullptr;
BytesConsumer* dest2 = nullptr;
BytesConsumerTee(GetDocument().ToExecutionContext(), src, &dest1, &dest2);
BytesConsumerTee(GetFrame().DomWindow(), src, &dest1, &dest2);
auto result1 = (MakeGarbageCollected<BytesConsumerTestReader>(dest1))->Run();
auto result2 = (MakeGarbageCollected<BytesConsumerTestReader>(dest2))->Run();
......@@ -166,7 +167,7 @@ TEST_F(BytesConsumerTeeTest, TwoPhaseRead) {
BytesConsumer* dest1 = nullptr;
BytesConsumer* dest2 = nullptr;
BytesConsumerTee(GetDocument().ToExecutionContext(), src, &dest1, &dest2);
BytesConsumerTee(GetFrame().DomWindow(), src, &dest1, &dest2);
EXPECT_EQ(BytesConsumer::PublicState::kReadableOrWaiting,
dest1->GetPublicState());
......@@ -198,7 +199,7 @@ TEST_F(BytesConsumerTeeTest, TwoPhaseReadWithDataAndDone) {
BytesConsumer* dest1 = nullptr;
BytesConsumer* dest2 = nullptr;
BytesConsumerTee(GetDocument().ToExecutionContext(), src, &dest1, &dest2);
BytesConsumerTee(GetFrame().DomWindow(), src, &dest1, &dest2);
EXPECT_EQ(BytesConsumer::PublicState::kReadableOrWaiting,
dest1->GetPublicState());
......@@ -229,7 +230,7 @@ TEST_F(BytesConsumerTeeTest, Error) {
BytesConsumer* dest1 = nullptr;
BytesConsumer* dest2 = nullptr;
BytesConsumerTee(GetDocument().ToExecutionContext(), src, &dest1, &dest2);
BytesConsumerTee(GetFrame().DomWindow(), src, &dest1, &dest2);
EXPECT_EQ(BytesConsumer::PublicState::kErrored, dest1->GetPublicState());
EXPECT_EQ(BytesConsumer::PublicState::kErrored, dest2->GetPublicState());
......@@ -262,7 +263,7 @@ TEST_F(BytesConsumerTeeTest, Cancel) {
BytesConsumer* dest1 = nullptr;
BytesConsumer* dest2 = nullptr;
BytesConsumerTee(GetDocument().ToExecutionContext(), src, &dest1, &dest2);
BytesConsumerTee(GetFrame().DomWindow(), src, &dest1, &dest2);
EXPECT_EQ(BytesConsumer::PublicState::kReadableOrWaiting,
dest1->GetPublicState());
......@@ -292,7 +293,7 @@ TEST_F(BytesConsumerTeeTest, CancelShouldNotAffectTheOtherDestination) {
BytesConsumer* dest1 = nullptr;
BytesConsumer* dest2 = nullptr;
BytesConsumerTee(GetDocument().ToExecutionContext(), src, &dest1, &dest2);
BytesConsumerTee(GetFrame().DomWindow(), src, &dest1, &dest2);
EXPECT_EQ(BytesConsumer::PublicState::kReadableOrWaiting,
dest1->GetPublicState());
......@@ -327,7 +328,7 @@ TEST_F(BytesConsumerTeeTest, CancelShouldNotAffectTheOtherDestination2) {
BytesConsumer* dest1 = nullptr;
BytesConsumer* dest2 = nullptr;
BytesConsumerTee(GetDocument().ToExecutionContext(), src, &dest1, &dest2);
BytesConsumerTee(GetFrame().DomWindow(), src, &dest1, &dest2);
EXPECT_EQ(BytesConsumer::PublicState::kReadableOrWaiting,
dest1->GetPublicState());
......@@ -357,7 +358,7 @@ TEST_F(BytesConsumerTeeTest, BlobHandle) {
BytesConsumer* dest1 = nullptr;
BytesConsumer* dest2 = nullptr;
BytesConsumerTee(GetDocument().ToExecutionContext(), src, &dest1, &dest2);
BytesConsumerTee(GetFrame().DomWindow(), src, &dest1, &dest2);
scoped_refptr<BlobDataHandle> dest_blob_data_handle1 =
dest1->DrainAsBlobDataHandle(
......@@ -379,7 +380,7 @@ TEST_F(BytesConsumerTeeTest, BlobHandleWithInvalidSize) {
BytesConsumer* dest1 = nullptr;
BytesConsumer* dest2 = nullptr;
BytesConsumerTee(GetDocument().ToExecutionContext(), src, &dest1, &dest2);
BytesConsumerTee(GetFrame().DomWindow(), src, &dest1, &dest2);
scoped_refptr<BlobDataHandle> dest_blob_data_handle1 =
dest1->DrainAsBlobDataHandle(
......@@ -399,7 +400,7 @@ TEST_F(BytesConsumerTeeTest, FormData) {
BytesConsumer* dest1 = nullptr;
BytesConsumer* dest2 = nullptr;
BytesConsumerTee(GetDocument().ToExecutionContext(), src, &dest1, &dest2);
BytesConsumerTee(GetFrame().DomWindow(), src, &dest1, &dest2);
scoped_refptr<EncodedFormData> dest_form_data1 = dest1->DrainAsFormData();
scoped_refptr<EncodedFormData> dest_form_data2 = dest2->DrainAsFormData();
......@@ -416,7 +417,7 @@ TEST_F(BytesConsumerTeeTest, ConsumerCanBeErroredInTwoPhaseRead) {
BytesConsumer* dest1 = nullptr;
BytesConsumer* dest2 = nullptr;
BytesConsumerTee(GetDocument().ToExecutionContext(), src, &dest1, &dest2);
BytesConsumerTee(GetFrame().DomWindow(), src, &dest1, &dest2);
BytesConsumerTestClient* client =
MakeGarbageCollected<BytesConsumerTestClient>();
dest1->SetClient(client);
......@@ -450,7 +451,7 @@ TEST_F(BytesConsumerTeeTest,
BytesConsumer* dest1 = nullptr;
BytesConsumer* dest2 = nullptr;
BytesConsumerTee(GetDocument().ToExecutionContext(), src, &dest1, &dest2);
BytesConsumerTee(GetFrame().DomWindow(), src, &dest1, &dest2);
dest1->SetClient(client);
......@@ -487,7 +488,7 @@ TEST_F(BytesConsumerTeeTest,
BytesConsumer* dest1 = nullptr;
BytesConsumer* dest2 = nullptr;
BytesConsumerTee(GetDocument().ToExecutionContext(), src, &dest1, &dest2);
BytesConsumerTee(GetFrame().DomWindow(), src, &dest1, &dest2);
dest1->SetClient(client);
......
......@@ -28,6 +28,7 @@
#include "third_party/blink/renderer/core/fileapi/blob.h"
#include "third_party/blink/renderer/core/frame/csp/content_security_policy.h"
#include "third_party/blink/renderer/core/frame/frame.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/inspector/console_message.h"
#include "third_party/blink/renderer/core/loader/subresource_integrity_helper.h"
#include "third_party/blink/renderer/core/loader/threadable_loader.h"
......@@ -227,7 +228,6 @@ class FetchManager::Loader final
void PerformDataFetch();
void Failed(const String& message);
void NotifyFinished();
Document* GetDocument() const;
ExecutionContext* GetExecutionContext() { return execution_context_; }
Member<FetchManager> fetch_manager_;
......@@ -520,11 +520,11 @@ void FetchManager::Loader::DidFinishLoading(uint64_t) {
finished_ = true;
if (GetDocument() && GetDocument()->GetFrame() &&
GetDocument()->GetFrame()->GetPage() &&
auto* window = DynamicTo<LocalDOMWindow>(execution_context_.Get());
if (window && window->GetFrame() &&
cors::IsOkStatus(response_http_status_code_)) {
GetDocument()->GetFrame()->GetPage()->GetChromeClient().AjaxSucceeded(
GetDocument()->GetFrame());
window->GetFrame()->GetPage()->GetChromeClient().AjaxSucceeded(
window->GetFrame());
}
NotifyFinished();
}
......@@ -537,10 +537,6 @@ void FetchManager::Loader::DidFailRedirectCheck() {
Failed(String());
}
Document* FetchManager::Loader::GetDocument() const {
return Document::DynamicFrom(execution_context_.Get());
}
void FetchManager::Loader::Start(ExceptionState& exception_state) {
// "1. If |request|'s url contains a Known HSTS Host, modify it per the
// requirements of the 'URI [sic] Loading and Port Mapping' chapter of HTTP
......
......@@ -14,6 +14,7 @@
#include "testing/gtest/include/gtest/gtest.h"
#include "third_party/blink/public/platform/web_http_body.h"
#include "third_party/blink/renderer/core/fetch/bytes_consumer_test_util.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/html/forms/form_data.h"
#include "third_party/blink/renderer/core/testing/page_test_base.h"
#include "third_party/blink/renderer/core/typed_arrays/dom_array_buffer.h"
......@@ -191,7 +192,7 @@ TEST_F(FormDataBytesConsumerTest, TwoPhaseReadFromSimpleFormData) {
auto result = (MakeGarbageCollected<BytesConsumerTestReader>(
MakeGarbageCollected<FormDataBytesConsumer>(
GetDocument().ToExecutionContext(), data)))
GetFrame().DomWindow(), data)))
->Run();
EXPECT_EQ(Result::kDone, result.first);
EXPECT_EQ("foohoge",
......@@ -202,7 +203,7 @@ TEST_F(FormDataBytesConsumerTest, TwoPhaseReadFromComplexFormData) {
scoped_refptr<EncodedFormData> data = ComplexFormData();
auto* underlying = MakeGarbageCollected<MockBytesConsumer>();
auto* consumer = MakeGarbageCollected<FormDataBytesConsumer>(
GetDocument().ToExecutionContext(), data, underlying);
GetFrame().DomWindow(), data, underlying);
Checkpoint checkpoint;
const char* buffer = nullptr;
......@@ -277,7 +278,7 @@ TEST_F(FormDataBytesConsumerTest, DrainAsBlobDataHandleFromSimpleFormData) {
data->EncodeMultiPartFormData();
BytesConsumer* consumer = MakeGarbageCollected<FormDataBytesConsumer>(
GetDocument().ToExecutionContext(), input_form_data);
GetFrame().DomWindow(), input_form_data);
scoped_refptr<BlobDataHandle> blob_data_handle =
consumer->DrainAsBlobDataHandle();
ASSERT_TRUE(blob_data_handle);
......@@ -296,7 +297,7 @@ TEST_F(FormDataBytesConsumerTest, DrainAsBlobDataHandleFromComplexFormData) {
scoped_refptr<EncodedFormData> input_form_data = ComplexFormData();
BytesConsumer* consumer = MakeGarbageCollected<FormDataBytesConsumer>(
GetDocument().ToExecutionContext(), input_form_data);
GetFrame().DomWindow(), input_form_data);
scoped_refptr<BlobDataHandle> blob_data_handle =
consumer->DrainAsBlobDataHandle();
ASSERT_TRUE(blob_data_handle);
......@@ -345,7 +346,7 @@ TEST_F(FormDataBytesConsumerTest, DrainAsFormDataFromSimpleFormData) {
data->EncodeMultiPartFormData();
BytesConsumer* consumer = MakeGarbageCollected<FormDataBytesConsumer>(
GetDocument().ToExecutionContext(), input_form_data);
GetFrame().DomWindow(), input_form_data);
EXPECT_EQ(input_form_data, consumer->DrainAsFormData());
EXPECT_FALSE(consumer->DrainAsBlobDataHandle());
const char* buffer = nullptr;
......@@ -358,7 +359,7 @@ TEST_F(FormDataBytesConsumerTest, DrainAsFormDataFromComplexFormData) {
scoped_refptr<EncodedFormData> input_form_data = ComplexFormData();
BytesConsumer* consumer = MakeGarbageCollected<FormDataBytesConsumer>(
GetDocument().ToExecutionContext(), input_form_data);
GetFrame().DomWindow(), input_form_data);
EXPECT_EQ(input_form_data, consumer->DrainAsFormData());
EXPECT_FALSE(consumer->DrainAsBlobDataHandle());
const char* buffer = nullptr;
......@@ -385,7 +386,7 @@ TEST_F(FormDataBytesConsumerTest, BeginReadAffectsDraining) {
TEST_F(FormDataBytesConsumerTest, BeginReadAffectsDrainingWithComplexFormData) {
auto* underlying = MakeGarbageCollected<MockBytesConsumer>();
BytesConsumer* consumer = MakeGarbageCollected<FormDataBytesConsumer>(
GetDocument().ToExecutionContext(), ComplexFormData(), underlying);
GetFrame().DomWindow(), ComplexFormData(), underlying);
const char* buffer = nullptr;
size_t available = 0;
......@@ -424,7 +425,7 @@ TEST_F(FormDataBytesConsumerTest, SetClientWithComplexFormData) {
auto* underlying = MakeGarbageCollected<MockBytesConsumer>();
auto* consumer = MakeGarbageCollected<FormDataBytesConsumer>(
GetDocument().ToExecutionContext(), input_form_data, underlying);
GetFrame().DomWindow(), input_form_data, underlying);
Checkpoint checkpoint;
InSequence s;
......@@ -446,7 +447,7 @@ TEST_F(FormDataBytesConsumerTest, CancelWithComplexFormData) {
auto* underlying = MakeGarbageCollected<MockBytesConsumer>();
auto* consumer = MakeGarbageCollected<FormDataBytesConsumer>(
GetDocument().ToExecutionContext(), input_form_data, underlying);
GetFrame().DomWindow(), input_form_data, underlying);
Checkpoint checkpoint;
InSequence s;
......@@ -463,7 +464,7 @@ TEST_F(FormDataBytesConsumerTest, CancelWithComplexFormData) {
TEST_F(FormDataBytesConsumerTest, DataPipeFormData) {
scoped_refptr<EncodedFormData> input_form_data = DataPipeFormData();
auto* consumer = MakeGarbageCollected<FormDataBytesConsumer>(
GetDocument().ToExecutionContext(), input_form_data);
GetFrame().DomWindow(), input_form_data);
auto* reader = MakeGarbageCollected<BytesConsumerTestReader>(consumer);
std::pair<BytesConsumer::Result, Vector<char>> result = reader->Run();
EXPECT_EQ(Result::kDone, result.first);
......@@ -475,7 +476,7 @@ TEST_F(FormDataBytesConsumerTest, DataPipeFormData) {
TEST_F(FormDataBytesConsumerTest, DataPipeFormData_DrainAsFormData) {
scoped_refptr<EncodedFormData> input_form_data = DataPipeFormData();
auto* consumer = MakeGarbageCollected<FormDataBytesConsumer>(
GetDocument().ToExecutionContext(), input_form_data);
GetFrame().DomWindow(), input_form_data);
scoped_refptr<EncodedFormData> drained_form_data =
consumer->DrainAsFormData();
EXPECT_EQ(*input_form_data, *drained_form_data);
......@@ -489,7 +490,7 @@ TEST_F(FormDataBytesConsumerTest,
// Create the consumer and start reading.
scoped_refptr<EncodedFormData> input_form_data = DataPipeFormData();
auto* consumer = MakeGarbageCollected<FormDataBytesConsumer>(
GetDocument().ToExecutionContext(), input_form_data);
GetFrame().DomWindow(), input_form_data);
const char* buffer = nullptr;
size_t available = 0;
EXPECT_EQ(BytesConsumer::Result::kOk,
......
......@@ -13,6 +13,7 @@
#include "third_party/blink/renderer/core/fetch/bytes_consumer_test_util.h"
#include "third_party/blink/renderer/core/fetch/fetch_response_data.h"
#include "third_party/blink/renderer/core/frame/frame.h"
#include "third_party/blink/renderer/core/frame/local_dom_window.h"
#include "third_party/blink/renderer/core/testing/dummy_page_holder.h"
#include "third_party/blink/renderer/platform/bindings/exception_state.h"
#include "third_party/blink/renderer/platform/bindings/script_state.h"
......@@ -34,8 +35,8 @@ TEST(ServiceWorkerResponseTest, FromFetchResponseData) {
Vector<KURL> url_list;
url_list.push_back(url);
fetch_response_data->SetURLList(url_list);
Response* response = Response::Create(
page->GetDocument().ToExecutionContext(), fetch_response_data);
Response* response =
Response::Create(page->GetFrame().DomWindow(), fetch_response_data);
DCHECK(response);
EXPECT_EQ(url, response->url());
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment