| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2015, Google Inc. All rights reserved. | 2 * Copyright (c) 2015, Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 89 int marginWidth() const override { return -1; } | 89 int marginWidth() const override { return -1; } |
| 90 int marginHeight() const override { return -1; } | 90 int marginHeight() const override { return -1; } |
| 91 }; | 91 }; |
| 92 | 92 |
| 93 class FrameFetchContextTest : public ::testing::Test { | 93 class FrameFetchContextTest : public ::testing::Test { |
| 94 protected: | 94 protected: |
| 95 void SetUp() override | 95 void SetUp() override |
| 96 { | 96 { |
| 97 dummyPageHolder = DummyPageHolder::create(IntSize(500, 500)); | 97 dummyPageHolder = DummyPageHolder::create(IntSize(500, 500)); |
| 98 dummyPageHolder->page().setDeviceScaleFactor(1.0); | 98 dummyPageHolder->page().setDeviceScaleFactor(1.0); |
| 99 documentLoader = DocumentLoader::create(&dummyPageHolder->frame(), Resou
rceRequest("http://www.example.com"), SubstituteData()); | |
| 100 document = toHTMLDocument(&dummyPageHolder->document()); | 99 document = toHTMLDocument(&dummyPageHolder->document()); |
| 100 documentLoader = document->loader(); |
| 101 fetchContext = static_cast<FrameFetchContext*>(&documentLoader->fetcher(
)->context()); | 101 fetchContext = static_cast<FrameFetchContext*>(&documentLoader->fetcher(
)->context()); |
| 102 owner = StubFrameOwner::create(); | 102 owner = StubFrameOwner::create(); |
| 103 FrameFetchContext::provideDocumentToContext(*fetchContext, document.get(
)); | 103 FrameFetchContext::provideDocumentToContext(*fetchContext, document.get(
)); |
| 104 } | 104 } |
| 105 | 105 |
| 106 void TearDown() override | 106 void TearDown() override |
| 107 { | 107 { |
| 108 documentLoader->detachFromFrame(); | |
| 109 documentLoader.clear(); | 108 documentLoader.clear(); |
| 110 | 109 |
| 111 if (childFrame) { | 110 if (childFrame) { |
| 112 childDocumentLoader->detachFromFrame(); | |
| 113 childDocumentLoader.clear(); | 111 childDocumentLoader.clear(); |
| 114 childFrame->detach(FrameDetachType::Remove); | 112 childFrame->detach(FrameDetachType::Remove); |
| 115 } | 113 } |
| 116 } | 114 } |
| 117 | 115 |
| 118 FrameFetchContext* createChildFrame() | 116 FrameFetchContext* createChildFrame() |
| 119 { | 117 { |
| 120 childClient = StubFrameLoaderClientWithParent::create(document->frame())
; | 118 childClient = StubFrameLoaderClientWithParent::create(document->frame())
; |
| 121 childFrame = LocalFrame::create(childClient.get(), document->frame()->ho
st(), owner.get()); | 119 childFrame = LocalFrame::create(childClient.get(), document->frame()->ho
st(), owner.get()); |
| 122 childFrame->setView(FrameView::create(childFrame.get(), IntSize(500, 500
))); | 120 childFrame->setView(FrameView::create(childFrame.get(), IntSize(500, 500
))); |
| 123 childFrame->init(); | 121 childFrame->init(); |
| 124 childDocumentLoader = DocumentLoader::create(childFrame.get(), ResourceR
equest("http://www.example.com"), SubstituteData()); | |
| 125 childDocument = childFrame->document(); | 122 childDocument = childFrame->document(); |
| 123 childDocumentLoader = childDocument->loader(); |
| 126 FrameFetchContext* childFetchContext = static_cast<FrameFetchContext*>(&
childDocumentLoader->fetcher()->context()); | 124 FrameFetchContext* childFetchContext = static_cast<FrameFetchContext*>(&
childDocumentLoader->fetcher()->context()); |
| 127 FrameFetchContext::provideDocumentToContext(*childFetchContext, childDoc
ument.get()); | 125 FrameFetchContext::provideDocumentToContext(*childFetchContext, childDoc
ument.get()); |
| 128 return childFetchContext; | 126 return childFetchContext; |
| 129 } | 127 } |
| 130 | 128 |
| 131 OwnPtr<DummyPageHolder> dummyPageHolder; | 129 OwnPtr<DummyPageHolder> dummyPageHolder; |
| 132 // We don't use the DocumentLoader directly in any tests, but need to keep i
t around as long | 130 // We don't use the DocumentLoader directly in any tests, but need to keep i
t around as long |
| 133 // as the ResourceFetcher and Document live due to indirect usage. | 131 // as the ResourceFetcher and Document live due to indirect usage. |
| 134 RefPtrWillBePersistent<DocumentLoader> documentLoader; | 132 RefPtrWillBePersistent<DocumentLoader> documentLoader; |
| 135 RefPtrWillBePersistent<Document> document; | 133 RefPtrWillBePersistent<Document> document; |
| (...skipping 373 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 509 EXPECT_EQ(ResourceLoadPriorityVeryHigh, childFetchContext->modifyPriorityFor
Experiments(ResourceLoadPriorityVeryHigh, Resource::MainResource, request, Resou
rcePriority::NotVisible)); | 507 EXPECT_EQ(ResourceLoadPriorityVeryHigh, childFetchContext->modifyPriorityFor
Experiments(ResourceLoadPriorityVeryHigh, Resource::MainResource, request, Resou
rcePriority::NotVisible)); |
| 510 EXPECT_EQ(ResourceLoadPriorityMedium, childFetchContext->modifyPriorityForEx
periments(ResourceLoadPriorityMedium, Resource::Script, request, ResourcePriorit
y::NotVisible)); | 508 EXPECT_EQ(ResourceLoadPriorityMedium, childFetchContext->modifyPriorityForEx
periments(ResourceLoadPriorityMedium, Resource::Script, request, ResourcePriorit
y::NotVisible)); |
| 511 | 509 |
| 512 // Low priority iframes enabled, everything should be low priority | 510 // Low priority iframes enabled, everything should be low priority |
| 513 settings->setLowPriorityIframes(true); | 511 settings->setLowPriorityIframes(true); |
| 514 EXPECT_EQ(ResourceLoadPriorityVeryLow, childFetchContext->modifyPriorityForE
xperiments(ResourceLoadPriorityVeryHigh, Resource::MainResource, request, Resour
cePriority::NotVisible)); | 512 EXPECT_EQ(ResourceLoadPriorityVeryLow, childFetchContext->modifyPriorityForE
xperiments(ResourceLoadPriorityVeryHigh, Resource::MainResource, request, Resour
cePriority::NotVisible)); |
| 515 EXPECT_EQ(ResourceLoadPriorityVeryLow, childFetchContext->modifyPriorityForE
xperiments(ResourceLoadPriorityMedium, Resource::Script, request, ResourcePriori
ty::NotVisible)); | 513 EXPECT_EQ(ResourceLoadPriorityVeryLow, childFetchContext->modifyPriorityForE
xperiments(ResourceLoadPriorityMedium, Resource::Script, request, ResourcePriori
ty::NotVisible)); |
| 516 } | 514 } |
| 517 | 515 |
| 518 } // namespace | 516 } // namespace |
| OLD | NEW |