Chromium Code Reviews| 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 "core/loader/LinkLoader.h" | 5 #include "core/loader/LinkLoader.h" |
| 6 | 6 |
| 7 #include "core/fetch/MemoryCache.h" | 7 #include "core/fetch/MemoryCache.h" |
| 8 #include "core/fetch/ResourceFetcher.h" | 8 #include "core/fetch/ResourceFetcher.h" |
| 9 #include "core/frame/Settings.h" | 9 #include "core/frame/Settings.h" |
| 10 #include "core/html/LinkRelAttribute.h" | 10 #include "core/html/LinkRelAttribute.h" |
| (...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 99 const bool expectingLoad; | 99 const bool expectingLoad; |
| 100 } cases[] = { | 100 } cases[] = { |
| 101 {"http://example.test/cat.jpg", "image", "", "", ResourceLoadPriorityLow , WebURLRequest::RequestContextImage, true, true}, | 101 {"http://example.test/cat.jpg", "image", "", "", ResourceLoadPriorityLow , WebURLRequest::RequestContextImage, true, true}, |
| 102 {"http://example.test/cat.js", "script", "", "", ResourceLoadPriorityHig h, WebURLRequest::RequestContextScript, true, true}, | 102 {"http://example.test/cat.js", "script", "", "", ResourceLoadPriorityHig h, WebURLRequest::RequestContextScript, true, true}, |
| 103 {"http://example.test/cat.css", "style", "", "", ResourceLoadPriorityVer yHigh, WebURLRequest::RequestContextStyle, true, true}, | 103 {"http://example.test/cat.css", "style", "", "", ResourceLoadPriorityVer yHigh, WebURLRequest::RequestContextStyle, true, true}, |
| 104 // TODO(yoav): It doesn't seem like the audio context is ever used. That should probably be fixed (or we can consolidate audio and video). | 104 // TODO(yoav): It doesn't seem like the audio context is ever used. That should probably be fixed (or we can consolidate audio and video). |
| 105 {"http://example.test/cat.wav", "media", "", "", ResourceLoadPriorityLow , WebURLRequest::RequestContextVideo, true, true}, | 105 {"http://example.test/cat.wav", "media", "", "", ResourceLoadPriorityLow , WebURLRequest::RequestContextVideo, true, true}, |
| 106 {"http://example.test/cat.mp4", "media", "", "", ResourceLoadPriorityLow , WebURLRequest::RequestContextVideo, true, true}, | 106 {"http://example.test/cat.mp4", "media", "", "", ResourceLoadPriorityLow , WebURLRequest::RequestContextVideo, true, true}, |
| 107 {"http://example.test/cat.vtt", "track", "", "", ResourceLoadPriorityLow , WebURLRequest::RequestContextTrack, true, true}, | 107 {"http://example.test/cat.vtt", "track", "", "", ResourceLoadPriorityLow , WebURLRequest::RequestContextTrack, true, true}, |
| 108 {"http://example.test/cat.woff", "font", "", "", ResourceLoadPriorityVer yHigh, WebURLRequest::RequestContextFont, true, true}, | 108 {"http://example.test/cat.woff", "font", "", "", ResourceLoadPriorityVer yHigh, WebURLRequest::RequestContextFont, true, true}, |
| 109 // TODO(yoav): subresource should be *very* low priority (rather than lo w). | 109 {"http://example.test/cat.empty", "", "", "", ResourceLoadPriorityVeryLo w, WebURLRequest::RequestContextSubresource, true, true}, |
|
Yoav Weiss
2016/06/25 08:37:59
I now understand why you made LinkPreload lazy loa
Nate Chapin
2016/06/27 19:46:16
Reverted the changes in this file. I'll let you de
| |
| 110 {"http://example.test/cat.empty", "", "", "", ResourceLoadPriorityLow, W ebURLRequest::RequestContextSubresource, true, true}, | 110 {"http://example.test/cat.blob", "blabla", "", "", ResourceLoadPriorityV eryLow, WebURLRequest::RequestContextSubresource, false, false}, |
| 111 {"http://example.test/cat.blob", "blabla", "", "", ResourceLoadPriorityL ow, WebURLRequest::RequestContextSubresource, false, false}, | |
| 112 {"bla://example.test/cat.gif", "image", "", "", ResourceLoadPriorityUnre solved, WebURLRequest::RequestContextImage, false, false}, | 111 {"bla://example.test/cat.gif", "image", "", "", ResourceLoadPriorityUnre solved, WebURLRequest::RequestContextImage, false, false}, |
| 113 // MIME type tests | 112 // MIME type tests |
| 114 {"http://example.test/cat.webp", "image", "image/webp", "", ResourceLoad PriorityLow, WebURLRequest::RequestContextImage, true, true}, | 113 {"http://example.test/cat.webp", "image", "image/webp", "", ResourceLoad PriorityLow, WebURLRequest::RequestContextImage, true, true}, |
| 115 {"http://example.test/cat.svg", "image", "image/svg+xml", "", ResourceLo adPriorityLow, WebURLRequest::RequestContextImage, true, true}, | 114 {"http://example.test/cat.svg", "image", "image/svg+xml", "", ResourceLo adPriorityLow, WebURLRequest::RequestContextImage, true, true}, |
| 116 {"http://example.test/cat.jxr", "image", "image/jxr", "", ResourceLoadPr iorityUnresolved, WebURLRequest::RequestContextImage, false, false}, | 115 {"http://example.test/cat.jxr", "image", "image/jxr", "", ResourceLoadPr iorityUnresolved, WebURLRequest::RequestContextImage, false, false}, |
| 117 {"http://example.test/cat.js", "script", "text/javascript", "", Resource LoadPriorityHigh, WebURLRequest::RequestContextScript, true, true}, | 116 {"http://example.test/cat.js", "script", "text/javascript", "", Resource LoadPriorityHigh, WebURLRequest::RequestContextScript, true, true}, |
| 118 {"http://example.test/cat.js", "script", "text/coffeescript", "", Resour ceLoadPriorityUnresolved, WebURLRequest::RequestContextScript, false, false}, | 117 {"http://example.test/cat.js", "script", "text/coffeescript", "", Resour ceLoadPriorityUnresolved, WebURLRequest::RequestContextScript, false, false}, |
| 119 {"http://example.test/cat.css", "style", "text/css", "", ResourceLoadPri orityVeryHigh, WebURLRequest::RequestContextStyle, true, true}, | 118 {"http://example.test/cat.css", "style", "text/css", "", ResourceLoadPri orityVeryHigh, WebURLRequest::RequestContextStyle, true, true}, |
| 120 {"http://example.test/cat.css", "style", "text/sass", "", ResourceLoadPr iorityUnresolved, WebURLRequest::RequestContextStyle, false, false}, | 119 {"http://example.test/cat.css", "style", "text/sass", "", ResourceLoadPr iorityUnresolved, WebURLRequest::RequestContextStyle, false, false}, |
| 121 {"http://example.test/cat.wav", "media", "audio/wav", "", ResourceLoadPr iorityLow, WebURLRequest::RequestContextVideo, true, true}, | 120 {"http://example.test/cat.wav", "media", "audio/wav", "", ResourceLoadPr iorityLow, WebURLRequest::RequestContextVideo, true, true}, |
| 122 {"http://example.test/cat.wav", "media", "audio/mp57", "", ResourceLoadP riorityUnresolved, WebURLRequest::RequestContextVideo, false, false}, | 121 {"http://example.test/cat.wav", "media", "audio/mp57", "", ResourceLoadP riorityUnresolved, WebURLRequest::RequestContextVideo, false, false}, |
| 123 {"http://example.test/cat.webm", "media", "video/webm", "", ResourceLoad PriorityLow, WebURLRequest::RequestContextVideo, true, true}, | 122 {"http://example.test/cat.webm", "media", "video/webm", "", ResourceLoad PriorityLow, WebURLRequest::RequestContextVideo, true, true}, |
| 124 {"http://example.test/cat.mp199", "media", "video/mp199", "", ResourceLo adPriorityUnresolved, WebURLRequest::RequestContextVideo, false, false}, | 123 {"http://example.test/cat.mp199", "media", "video/mp199", "", ResourceLo adPriorityUnresolved, WebURLRequest::RequestContextVideo, false, false}, |
| 125 {"http://example.test/cat.vtt", "track", "text/vtt", "", ResourceLoadPri orityLow, WebURLRequest::RequestContextTrack, true, true}, | 124 {"http://example.test/cat.vtt", "track", "text/vtt", "", ResourceLoadPri orityLow, WebURLRequest::RequestContextTrack, true, true}, |
| 126 {"http://example.test/cat.vtt", "track", "text/subtitlething", "", Resou rceLoadPriorityUnresolved, WebURLRequest::RequestContextTrack, false, false}, | 125 {"http://example.test/cat.vtt", "track", "text/subtitlething", "", Resou rceLoadPriorityUnresolved, WebURLRequest::RequestContextTrack, false, false}, |
| 127 {"http://example.test/cat.woff", "font", "font/woff2", "", ResourceLoadP riorityVeryHigh, WebURLRequest::RequestContextFont, true, true}, | 126 {"http://example.test/cat.woff", "font", "font/woff2", "", ResourceLoadP riorityVeryHigh, WebURLRequest::RequestContextFont, true, true}, |
| 128 {"http://example.test/cat.woff", "font", "font/woff84", "", ResourceLoad PriorityUnresolved, WebURLRequest::RequestContextFont, false, false}, | 127 {"http://example.test/cat.woff", "font", "font/woff84", "", ResourceLoad PriorityUnresolved, WebURLRequest::RequestContextFont, false, false}, |
| 129 {"http://example.test/cat.empty", "", "foo/bar", "", ResourceLoadPriorit yLow, WebURLRequest::RequestContextSubresource, true, true}, | 128 {"http://example.test/cat.empty", "", "foo/bar", "", ResourceLoadPriorit yVeryLow, WebURLRequest::RequestContextSubresource, true, true}, |
| 130 {"http://example.test/cat.blob", "blabla", "foo/bar", "", ResourceLoadPr iorityLow, WebURLRequest::RequestContextSubresource, false, false}, | 129 {"http://example.test/cat.blob", "blabla", "foo/bar", "", ResourceLoadPr iorityVeryLow, WebURLRequest::RequestContextSubresource, false, false}, |
| 131 // Media tests | 130 // Media tests |
| 132 {"http://example.test/cat.gif", "image", "image/gif", "(max-width: 600px )", ResourceLoadPriorityLow, WebURLRequest::RequestContextImage, true, true}, | 131 {"http://example.test/cat.gif", "image", "image/gif", "(max-width: 600px )", ResourceLoadPriorityLow, WebURLRequest::RequestContextImage, true, true}, |
| 133 {"http://example.test/cat.gif", "image", "image/gif", "(max-width: 400px )", ResourceLoadPriorityUnresolved, WebURLRequest::RequestContextImage, true, fa lse}, | 132 {"http://example.test/cat.gif", "image", "image/gif", "(max-width: 400px )", ResourceLoadPriorityUnresolved, WebURLRequest::RequestContextImage, true, fa lse}, |
| 134 {"http://example.test/cat.gif", "image", "image/gif", "(max-width: 600px )", ResourceLoadPriorityLow, WebURLRequest::RequestContextImage, false, false}, | 133 {"http://example.test/cat.gif", "image", "image/gif", "(max-width: 600px )", ResourceLoadPriorityLow, WebURLRequest::RequestContextImage, false, false}, |
| 135 }; | 134 }; |
| 136 | 135 |
| 137 // Test the cases with a single header | 136 // Test the cases with a single header |
| 138 for (const auto& testCase : cases) { | 137 for (const auto& testCase : cases) { |
| 139 std::unique_ptr<DummyPageHolder> dummyPageHolder = DummyPageHolder::crea te(IntSize(500, 500)); | 138 std::unique_ptr<DummyPageHolder> dummyPageHolder = DummyPageHolder::crea te(IntSize(500, 500)); |
| 140 dummyPageHolder->frame().settings()->setScriptEnabled(true); | 139 dummyPageHolder->frame().settings()->setScriptEnabled(true); |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 241 hrefURL, | 240 hrefURL, |
| 242 dummyPageHolder->document(), | 241 dummyPageHolder->document(), |
| 243 networkHints); | 242 networkHints); |
| 244 ASSERT_EQ(testCase.shouldLoad, networkHints.didPreconnect()); | 243 ASSERT_EQ(testCase.shouldLoad, networkHints.didPreconnect()); |
| 245 ASSERT_EQ(testCase.isHTTPS, networkHints.isHTTPS()); | 244 ASSERT_EQ(testCase.isHTTPS, networkHints.isHTTPS()); |
| 246 ASSERT_EQ(testCase.isCrossOrigin, networkHints.isCrossOrigin()); | 245 ASSERT_EQ(testCase.isCrossOrigin, networkHints.isCrossOrigin()); |
| 247 } | 246 } |
| 248 } | 247 } |
| 249 | 248 |
| 250 } // namespace blink | 249 } // namespace blink |
| OLD | NEW |