Changeset 222294 in webkit
- Timestamp:
- Sep 20, 2017, 3:27:23 PM (8 years ago)
- Location:
- trunk
- Files:
-
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified trunk/Source/WebCore/ChangeLog ¶
r222292 r222294 1 2017-09-20 Alex Christensen <achristensen@webkit.org> 2 3 Remove ActionType::CSSDisplayNoneStyleSheet 4 https://bugs.webkit.org/show_bug.cgi?id=177275 5 6 Reviewed by Andy Estes. 7 8 It not a real action type anyways. It was a fake action type 9 that stored a String indicating which ContentRuleLists had not triggered 10 an ignore-previous-rules action, so we should apply the default stylesheet, 11 which is the css-display-none selectors that match everything. 12 13 No change in behaviour. Covered by existing tests. 14 15 * contentextensions/ContentExtensionActions.h: 16 * contentextensions/ContentExtensionCompiler.cpp: 17 (WebCore::ContentExtensions::serializeActions): 18 * contentextensions/ContentExtensionRule.cpp: 19 (WebCore::ContentExtensions::Action::deserialize): 20 (WebCore::ContentExtensions::Action::deserializeType): 21 (WebCore::ContentExtensions::Action::serializedLength): 22 * contentextensions/ContentExtensionRule.h: 23 (WebCore::ContentExtensions::Action::Action): 24 * contentextensions/ContentExtensionsBackend.cpp: 25 (WebCore::ContentExtensions::ContentExtensionsBackend::actionsForResourceLoad const): 26 (WebCore::ContentExtensions::ContentExtensionsBackend::processContentExtensionRulesForLoad): 27 (WebCore::ContentExtensions::ContentExtensionsBackend::processContentExtensionRulesForPingLoad): 28 * contentextensions/ContentExtensionsBackend.h: 29 * page/DOMWindow.cpp: 30 (WebCore::DOMWindow::open): 31 * page/UserContentProvider.cpp: 32 (WebCore::UserContentProvider::actionsForResourceLoad): 33 * page/UserContentProvider.h: 34 1 35 2017-09-20 Zalan Bujtas <zalan@apple.com> 2 36 -
TabularUnified trunk/Source/WebCore/contentextensions/ContentExtensionActions.h ¶
r222283 r222294 40 40 BlockCookies, 41 41 CSSDisplayNoneSelector, 42 CSSDisplayNoneStyleSheet, 43 IgnorePreviousRules, 44 MakeHTTPS, 42 IgnorePreviousRules = 3, 43 MakeHTTPS = 4, 45 44 }; 46 45 -
TabularUnified trunk/Source/WebCore/contentextensions/ContentExtensionCompiler.cpp ¶
r222283 r222294 152 152 153 153 switch (actionType) { 154 case ActionType::CSSDisplayNoneStyleSheet:155 RELEASE_ASSERT_NOT_REACHED();156 157 154 case ActionType::CSSDisplayNoneSelector: { 158 155 const auto addResult = cssDisplayNoneActionsMap.add(rule.trigger(), PendingDisplayNoneActions()); -
TabularUnified trunk/Source/WebCore/contentextensions/ContentExtensionRule.cpp ¶
r222283 r222294 68 68 case ActionType::CSSDisplayNoneSelector: 69 69 return Action(actionType, deserializeString(actions, actionsLength, location + sizeof(ActionType)), location); 70 case ActionType::CSSDisplayNoneStyleSheet:71 break;72 70 } 73 71 RELEASE_ASSERT_NOT_REACHED(); … … 85 83 case ActionType::MakeHTTPS: 86 84 return type; 87 case ActionType::CSSDisplayNoneStyleSheet:88 break;89 85 } 90 86 RELEASE_ASSERT_NOT_REACHED(); … … 111 107 return prefixLength + stringLength * sizeof(LChar); 112 108 } 113 case ActionType::CSSDisplayNoneStyleSheet:114 break;115 109 } 116 110 RELEASE_ASSERT_NOT_REACHED(); -
TabularUnified trunk/Source/WebCore/contentextensions/ContentExtensionRule.h ¶
r222283 r222294 136 136 , m_stringArgument(stringArgument) 137 137 { 138 ASSERT(type == ActionType::CSSDisplayNoneSelector || type == ActionType::CSSDisplayNoneStyleSheet);138 ASSERT(type == ActionType::CSSDisplayNoneSelector); 139 139 } 140 140 … … 144 144 { 145 145 ASSERT(type != ActionType::CSSDisplayNoneSelector); 146 ASSERT(type != ActionType::CSSDisplayNoneStyleSheet);147 146 } 148 147 -
TabularUnified trunk/Source/WebCore/contentextensions/ContentExtensionsBackend.cpp ¶
r222283 r222294 69 69 } 70 70 71 Vector<Action> ContentExtensionsBackend::actionsForResourceLoad(const ResourceLoadInfo& resourceLoadInfo) const71 std::pair<Vector<Action>, Vector<String>> ContentExtensionsBackend::actionsForResourceLoad(const ResourceLoadInfo& resourceLoadInfo) const 72 72 { 73 73 #if CONTENT_EXTENSIONS_PERFORMANCE_REPORTING … … 75 75 #endif 76 76 if (resourceLoadInfo.resourceURL.protocolIsData()) 77 return Vector<Action>();77 return { }; 78 78 79 79 const String& urlString = resourceLoadInfo.resourceURL.string(); … … 82 82 83 83 Vector<Action> finalActions; 84 Vector<String> stylesheetIdentifiers; 84 85 ResourceFlags flags = resourceLoadInfo.getResourceFlags(); 85 86 for (auto& contentExtension : m_contentExtensions.values()) { … … 123 124 } 124 125 } 125 if (!sawIgnorePreviousRules) { 126 finalActions.append(Action(ActionType::CSSDisplayNoneStyleSheet, contentExtension->identifier())); 127 finalActions.last().setExtensionIdentifier(contentExtension->identifier()); 128 } 126 if (!sawIgnorePreviousRules) 127 stylesheetIdentifiers.append(contentExtension->identifier()); 129 128 } 130 129 #if CONTENT_EXTENSIONS_PERFORMANCE_REPORTING … … 132 131 dataLogF("Time added: %f microseconds %s \n", (addedTimeEnd - addedTimeStart) * 1.0e6, resourceLoadInfo.resourceURL.string().utf8().data()); 133 132 #endif 134 return finalActions;133 return { WTFMove(finalActions), WTFMove(stylesheetIdentifiers) }; 135 134 } 136 135 … … 167 166 168 167 ResourceLoadInfo resourceLoadInfo = { url, mainDocumentURL, resourceType }; 169 Vector<ContentExtensions::Action>actions = actionsForResourceLoad(resourceLoadInfo);168 auto actions = actionsForResourceLoad(resourceLoadInfo); 170 169 171 170 bool willBlockLoad = false; 172 171 bool willBlockCookies = false; 173 172 bool willMakeHTTPS = false; 174 for (const auto& action : actions ) {173 for (const auto& action : actions.first) { 175 174 switch (action.type()) { 176 175 case ContentExtensions::ActionType::BlockLoad: … … 186 185 currentDocument->extensionStyleSheets().addDisplayNoneSelector(action.extensionIdentifier(), action.stringArgument(), action.actionID()); 187 186 break; 188 case ContentExtensions::ActionType::CSSDisplayNoneStyleSheet: {189 StyleSheetContents* styleSheetContents = globalDisplayNoneStyleSheet(action.stringArgument());190 if (styleSheetContents) {191 if (resourceType == ResourceType::Document)192 initiatingDocumentLoader.addPendingContentExtensionSheet(action.stringArgument(), *styleSheetContents);193 else if (currentDocument)194 currentDocument->extensionStyleSheets().maybeAddContentExtensionSheet(action.stringArgument(), *styleSheetContents);195 }196 break;197 }198 187 case ContentExtensions::ActionType::MakeHTTPS: { 199 188 if ((url.protocolIs("http") || url.protocolIs("ws")) … … 204 193 case ContentExtensions::ActionType::IgnorePreviousRules: 205 194 RELEASE_ASSERT_NOT_REACHED(); 195 } 196 } 197 198 for (const auto& identifier : actions.second) { 199 if (auto* styleSheetContents = globalDisplayNoneStyleSheet(identifier)) { 200 if (resourceType == ResourceType::Document) 201 initiatingDocumentLoader.addPendingContentExtensionSheet(identifier, *styleSheetContents); 202 else if (currentDocument) 203 currentDocument->extensionStyleSheets().maybeAddContentExtensionSheet(identifier, *styleSheetContents); 206 204 } 207 205 } … … 225 223 226 224 ResourceLoadInfo resourceLoadInfo = { url, mainDocumentURL, ResourceType::Raw }; 227 Vector<ContentExtensions::Action>actions = actionsForResourceLoad(resourceLoadInfo);225 auto actions = actionsForResourceLoad(resourceLoadInfo); 228 226 229 227 bool willBlockLoad = false; 230 228 bool willBlockCookies = false; 231 229 bool willMakeHTTPS = false; 232 for (const auto& action : actions ) {230 for (const auto& action : actions.first) { 233 231 switch (action.type()) { 234 232 case ContentExtensions::ActionType::BlockLoad: … … 243 241 break; 244 242 case ContentExtensions::ActionType::CSSDisplayNoneSelector: 245 case ContentExtensions::ActionType::CSSDisplayNoneStyleSheet:246 243 break; 247 244 case ContentExtensions::ActionType::IgnorePreviousRules: -
TabularUnified trunk/Source/WebCore/contentextensions/ContentExtensionsBackend.h ¶
r220996 r222294 62 62 63 63 // - Internal WebCore Interface. 64 WEBCORE_EXPORT Vector<Action> actionsForResourceLoad(const ResourceLoadInfo&) const;64 WEBCORE_EXPORT std::pair<Vector<Action>, Vector<String>> actionsForResourceLoad(const ResourceLoadInfo&) const; 65 65 WEBCORE_EXPORT StyleSheetContents* globalDisplayNoneStyleSheet(const String& identifier) const; 66 66 -
TabularUnified trunk/Source/WebCore/page/DOMWindow.cpp ¶
r222238 r222294 2252 2252 && firstFrame->mainFrame().document()->loader()) { 2253 2253 ResourceLoadInfo resourceLoadInfo { firstFrame->document()->completeURL(urlString), firstFrame->mainFrame().document()->url(), ResourceType::Popup }; 2254 for (auto& action : firstFrame->page()->userContentProvider().actionsForResourceLoad(resourceLoadInfo, *firstFrame->mainFrame().document()->loader()) ) {2254 for (auto& action : firstFrame->page()->userContentProvider().actionsForResourceLoad(resourceLoadInfo, *firstFrame->mainFrame().document()->loader()).first) { 2255 2255 if (action.type() == ContentExtensions::ActionType::BlockLoad) 2256 2256 return nullptr; -
TabularUnified trunk/Source/WebCore/page/UserContentProvider.cpp ¶
r220996 r222294 110 110 } 111 111 112 Vector<ContentExtensions::Action> UserContentProvider::actionsForResourceLoad(const ResourceLoadInfo& resourceLoadInfo, DocumentLoader& initiatingDocumentLoader)112 std::pair<Vector<ContentExtensions::Action>, Vector<String>> UserContentProvider::actionsForResourceLoad(const ResourceLoadInfo& resourceLoadInfo, DocumentLoader& initiatingDocumentLoader) 113 113 { 114 114 if (!contentExtensionsEnabled(initiatingDocumentLoader)) -
TabularUnified trunk/Source/WebCore/page/UserContentProvider.h ¶
r220996 r222294 92 92 // which should always exist. 93 93 ContentExtensions::BlockedStatus processContentExtensionRulesForLoad(const URL&, ResourceType, DocumentLoader& initiatingDocumentLoader); 94 Vector<ContentExtensions::Action> actionsForResourceLoad(const ResourceLoadInfo&, DocumentLoader& initiatingDocumentLoader);94 std::pair<Vector<ContentExtensions::Action>, Vector<String>> actionsForResourceLoad(const ResourceLoadInfo&, DocumentLoader& initiatingDocumentLoader); 95 95 WEBCORE_EXPORT void forEachContentExtension(const WTF::Function<void(const String&, ContentExtensions::ContentExtension&)>&, DocumentLoader& initiatingDocumentLoader); 96 96 #endif -
TabularUnified trunk/Tools/ChangeLog ¶
r222293 r222294 1 2017-09-20 Alex Christensen <achristensen@webkit.org> 2 3 Remove ActionType::CSSDisplayNoneStyleSheet 4 https://bugs.webkit.org/show_bug.cgi?id=177275 5 6 Reviewed by Andy Estes. 7 8 * TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp: 9 (WebCore::ContentExtensions::operator<<): 10 (TestWebKitAPI::testRequest): 11 (TestWebKitAPI::TEST_F): 12 1 13 2017-09-20 Jonathan Bedard <jbedard@apple.com> 2 14 -
TabularUnified trunk/Tools/TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp ¶
r222283 r222294 57 57 case ActionType::CSSDisplayNoneSelector: 58 58 return os << "ActionType::CSSDisplayNone"; 59 case ActionType::CSSDisplayNoneStyleSheet:60 return os << "ActionType::CSSDisplayNoneStyleSheet";61 59 case ActionType::IgnorePreviousRules: 62 60 return os << "ActionType::IgnorePreviousRules"; … … 188 186 }; 189 187 190 void static testRequest(const ContentExtensions::ContentExtensionsBackend& contentExtensionsBackend, const ResourceLoadInfo& resourceLoadInfo, Vector<ContentExtensions::ActionType> expectedActions, bool ignorePreviousRules = false)188 void static testRequest(const ContentExtensions::ContentExtensionsBackend& contentExtensionsBackend, const ResourceLoadInfo& resourceLoadInfo, Vector<ContentExtensions::ActionType> expectedActions, size_t stylesheets = 1) 191 189 { 192 190 auto actions = contentExtensionsBackend.actionsForResourceLoad(resourceLoadInfo); 193 unsigned expectedSize = actions.size(); 194 if (!ignorePreviousRules) 195 expectedSize--; // The last action is applying the compiled stylesheet. 196 191 unsigned expectedSize = actions.first.size(); 197 192 EXPECT_EQ(expectedActions.size(), expectedSize); 198 193 if (expectedActions.size() != expectedSize) … … 200 195 201 196 for (unsigned i = 0; i < expectedActions.size(); ++i) 202 EXPECT_EQ(expectedActions[i], actions[i].type()); 203 if (!ignorePreviousRules) 204 EXPECT_EQ(actions[actions.size() - 1].type(), ContentExtensions::ActionType::CSSDisplayNoneStyleSheet); 197 EXPECT_EQ(expectedActions[i], actions.first[i].type()); 198 EXPECT_EQ(actions.second.size(), stylesheets); 205 199 } 206 200 … … 776 770 testRequest(backend, mainDocumentRequest("http://webkit.org/ignore-previous-trigger-on-scripts.html.test.html", ResourceType::Script), { ContentExtensions::ActionType::CSSDisplayNoneSelector, ContentExtensions::ActionType::BlockLoad, ContentExtensions::ActionType::BlockCookies }); 777 771 778 testRequest(backend, mainDocumentRequest("http://notwebkit.org/ignore-previous-trigger-on-scripts.html", ResourceType::Image), { }, true);779 testRequest(backend, mainDocumentRequest("http://webkit.org/ignore-previous-trigger-on-scripts.html", ResourceType::Image), { }, true);780 testRequest(backend, mainDocumentRequest("http://notwebkit.org/ignore-previous-trigger-on-scripts.html.test.html", ResourceType::Image), { }, true);781 testRequest(backend, mainDocumentRequest("http://webkit.org/ignore-previous-trigger-on-scripts.html.test.html", ResourceType::Image), { }, true);772 testRequest(backend, mainDocumentRequest("http://notwebkit.org/ignore-previous-trigger-on-scripts.html", ResourceType::Image), { }, 0); 773 testRequest(backend, mainDocumentRequest("http://webkit.org/ignore-previous-trigger-on-scripts.html", ResourceType::Image), { }, 0); 774 testRequest(backend, mainDocumentRequest("http://notwebkit.org/ignore-previous-trigger-on-scripts.html.test.html", ResourceType::Image), { }, 0); 775 testRequest(backend, mainDocumentRequest("http://webkit.org/ignore-previous-trigger-on-scripts.html.test.html", ResourceType::Image), { }, 0); 782 776 783 777 testRequest(backend, mainDocumentRequest("http://notwebkit.org/except-this-ignore-previous-trigger-on-scripts.html"), { ContentExtensions::ActionType::BlockCookies }); … … 785 779 testRequest(backend, mainDocumentRequest("http://notwebkit.org/except-this-ignore-previous-trigger-on-scripts.html.test.html"), { ContentExtensions::ActionType::BlockCookies, ContentExtensions::ActionType::BlockCookies }); 786 780 testRequest(backend, mainDocumentRequest("http://webkit.org/except-this-ignore-previous-trigger-on-scripts.html.test.html"), { ContentExtensions::ActionType::BlockCookies, ContentExtensions::ActionType::BlockLoad, ContentExtensions::ActionType::BlockCookies }); 787 testRequest(backend, mainDocumentRequest("http://notwebkit.org/except-this-ignore-previous-trigger-on-scripts.html", ResourceType::Image), { ContentExtensions::ActionType::BlockCookies }, true);788 testRequest(backend, mainDocumentRequest("http://webkit.org/except-this-ignore-previous-trigger-on-scripts.html", ResourceType::Image), { ContentExtensions::ActionType::BlockCookies }, true);789 testRequest(backend, mainDocumentRequest("http://notwebkit.org/except-this-ignore-previous-trigger-on-scripts.html.test.html", ResourceType::Image), { ContentExtensions::ActionType::BlockCookies }, true);790 testRequest(backend, mainDocumentRequest("http://webkit.org/except-this-ignore-previous-trigger-on-scripts.html.test.html", ResourceType::Image), { ContentExtensions::ActionType::BlockCookies }, true);781 testRequest(backend, mainDocumentRequest("http://notwebkit.org/except-this-ignore-previous-trigger-on-scripts.html", ResourceType::Image), { ContentExtensions::ActionType::BlockCookies }, 0); 782 testRequest(backend, mainDocumentRequest("http://webkit.org/except-this-ignore-previous-trigger-on-scripts.html", ResourceType::Image), { ContentExtensions::ActionType::BlockCookies }, 0); 783 testRequest(backend, mainDocumentRequest("http://notwebkit.org/except-this-ignore-previous-trigger-on-scripts.html.test.html", ResourceType::Image), { ContentExtensions::ActionType::BlockCookies }, 0); 784 testRequest(backend, mainDocumentRequest("http://webkit.org/except-this-ignore-previous-trigger-on-scripts.html.test.html", ResourceType::Image), { ContentExtensions::ActionType::BlockCookies }, 0); 791 785 testRequest(backend, mainDocumentRequest("http://notwebkit.org/except-this-ignore-previous-trigger-on-scripts.html", ResourceType::Script), { ContentExtensions::ActionType::BlockCookies, ContentExtensions::ActionType::CSSDisplayNoneSelector }); 792 786 testRequest(backend, mainDocumentRequest("http://webkit.org/except-this-ignore-previous-trigger-on-scripts.html", ResourceType::Script), { ContentExtensions::ActionType::BlockCookies, ContentExtensions::ActionType::CSSDisplayNoneSelector }); … … 869 863 backend.addContentExtension("testFilter2", WTFMove(extension2)); 870 864 871 // These each have two display:none stylesheets. The second one is implied by using the default parameter ignorePreviousRules = false. 872 testRequest(backend, mainDocumentRequest("http://webkit.org"), { ContentExtensions::ActionType::CSSDisplayNoneStyleSheet }); 873 testRequest(backend, mainDocumentRequest("http://webkit.org/block_load.html"), { ContentExtensions::ActionType::CSSDisplayNoneStyleSheet, ContentExtensions::ActionType::BlockLoad}); 874 testRequest(backend, mainDocumentRequest("http://webkit.org/block_cookies.html"), { ContentExtensions::ActionType::BlockCookies, ContentExtensions::ActionType::CSSDisplayNoneStyleSheet}); 875 testRequest(backend, mainDocumentRequest("http://webkit.org/block_load/block_cookies.html"), { ContentExtensions::ActionType::BlockCookies, ContentExtensions::ActionType::CSSDisplayNoneStyleSheet, ContentExtensions::ActionType::BlockLoad }); 876 testRequest(backend, mainDocumentRequest("http://webkit.org/block_cookies/block_load.html"), { ContentExtensions::ActionType::BlockCookies, ContentExtensions::ActionType::CSSDisplayNoneStyleSheet, ContentExtensions::ActionType::BlockLoad }); 865 testRequest(backend, mainDocumentRequest("http://webkit.org"), { }, 2); 866 testRequest(backend, mainDocumentRequest("http://webkit.org/block_load.html"), { ContentExtensions::ActionType::BlockLoad }, 2); 867 testRequest(backend, mainDocumentRequest("http://webkit.org/block_cookies.html"), { ContentExtensions::ActionType::BlockCookies }, 2); 868 testRequest(backend, mainDocumentRequest("http://webkit.org/block_load/block_cookies.html"), { ContentExtensions::ActionType::BlockCookies, ContentExtensions::ActionType::BlockLoad }, 2); 869 testRequest(backend, mainDocumentRequest("http://webkit.org/block_cookies/block_load.html"), { ContentExtensions::ActionType::BlockCookies, ContentExtensions::ActionType::BlockLoad }, 2); 877 870 878 871 auto ignoreExtension1 = InMemoryCompiledContentExtension::createFromFilter("[{\"action\":{\"type\":\"block\"},\"trigger\":{\"url-filter\":\"block_load\"}}," … … 883 876 backendWithIgnore.addContentExtension("testFilter1", WTFMove(ignoreExtension1)); 884 877 backendWithIgnore.addContentExtension("testFilter2", WTFMove(ignoreExtension2)); 885 886 testRequest(backendWithIgnore, mainDocumentRequest("http://webkit.org"), { ContentExtensions::ActionType::CSSDisplayNoneStyleSheet, ContentExtensions::ActionType::CSSDisplayNoneStyleSheet }, true);887 testRequest(backendWithIgnore, mainDocumentRequest("http://webkit.org/block_load/ignore1.html"), { ContentExtensions::ActionType::CSSDisplayNoneStyleSheet }, true);888 testRequest(backendWithIgnore, mainDocumentRequest("http://webkit.org/block_cookies/ignore1.html"), { ContentExtensions::ActionType::BlockCookies , ContentExtensions::ActionType::CSSDisplayNoneStyleSheet}, true);889 testRequest(backendWithIgnore, mainDocumentRequest("http://webkit.org/block_load/ignore2.html"), { ContentExtensions::ActionType::BlockLoad , ContentExtensions::ActionType::CSSDisplayNoneStyleSheet }, true);890 testRequest(backendWithIgnore, mainDocumentRequest("http://webkit.org/block_cookies/ignore2.html"), { ContentExtensions::ActionType::CSSDisplayNoneStyleSheet}, true);891 testRequest(backendWithIgnore, mainDocumentRequest("http://webkit.org/block_load/block_cookies/ignore1/ignore2.html"), { }, true);878 879 testRequest(backendWithIgnore, mainDocumentRequest("http://webkit.org"), { }, 2); 880 testRequest(backendWithIgnore, mainDocumentRequest("http://webkit.org/block_load/ignore1.html"), { }, 1); 881 testRequest(backendWithIgnore, mainDocumentRequest("http://webkit.org/block_cookies/ignore1.html"), { ContentExtensions::ActionType::BlockCookies }, 1); 882 testRequest(backendWithIgnore, mainDocumentRequest("http://webkit.org/block_load/ignore2.html"), { ContentExtensions::ActionType::BlockLoad }, 1); 883 testRequest(backendWithIgnore, mainDocumentRequest("http://webkit.org/block_cookies/ignore2.html"), { }, 1); 884 testRequest(backendWithIgnore, mainDocumentRequest("http://webkit.org/block_load/block_cookies/ignore1/ignore2.html"), { }, 0); 892 885 } 893 886 … … 1073 1066 "{\"action\":{\"type\":\"ignore-previous-rules\"},\"trigger\":{\"url-filter\":\".*\",\"load-type\":[\"first-party\"]}}]"); 1074 1067 1075 testRequest(backend, mainDocumentRequest("http://webkit.org"), { }, true);1068 testRequest(backend, mainDocumentRequest("http://webkit.org"), { }, 0); 1076 1069 testRequest(backend, {URL(URL(), "http://webkit.org"), URL(URL(), "http://not_webkit.org"), ResourceType::Document}, { ContentExtensions::ActionType::BlockCookies }); 1077 1070 testRequest(backend, {URL(URL(), "http://webkit.org"), URL(URL(), "http://not_webkit.org"), ResourceType::Image}, { ContentExtensions::ActionType::BlockCookies, ContentExtensions::ActionType::BlockLoad }); … … 1114 1107 testRequest(backend, mainDocumentRequest("http://webkit.org/AAA"), { ContentExtensions::ActionType::CSSDisplayNoneSelector }); 1115 1108 testRequest(backend, mainDocumentRequest("http://webkit.org/YAA"), { ContentExtensions::ActionType::CSSDisplayNoneSelector }); 1116 testRequest(backend, mainDocumentRequest("http://webkit.org/ZAA"), { }, true);1117 testRequest(backend, mainDocumentRequest("http://webkit.org/LAA/AAA"), { }, true);1118 testRequest(backend, mainDocumentRequest("http://webkit.org/LAA/MAA"), { ContentExtensions::ActionType::CSSDisplayNoneSelector }, true);1109 testRequest(backend, mainDocumentRequest("http://webkit.org/ZAA"), { }, 0); 1110 testRequest(backend, mainDocumentRequest("http://webkit.org/LAA/AAA"), { }, 0); 1111 testRequest(backend, mainDocumentRequest("http://webkit.org/LAA/MAA"), { ContentExtensions::ActionType::CSSDisplayNoneSelector }, 0); 1119 1112 testRequest(backend, mainDocumentRequest("http://webkit.org/"), { }); 1120 1113 } … … 1305 1298 "{\"action\":{\"type\":\"css-display-none\",\"selector\":\".hidden\"},\"trigger\":{\"url-filter\":\".*\"}}]"); 1306 1299 EXPECT_EQ(nullptr, backend5.globalDisplayNoneStyleSheet(ASCIILiteral("testFilter"))); 1307 testRequest(backend5, mainDocumentRequest("http://webkit.org"), { ContentExtensions::ActionType::CSSDisplayNoneSelector }, true);1300 testRequest(backend5, mainDocumentRequest("http://webkit.org"), { ContentExtensions::ActionType::CSSDisplayNoneSelector }, 0); 1308 1301 1309 1302 auto backend6 = makeBackend("[{\"action\":{\"type\":\"block\"},\"trigger\":{\"url-filter\":\".*\",\"if-domain\":[\"webkit.org\",\"*w3c.org\"],\"resource-type\":[\"document\",\"script\"]}}," … … 1317 1310 testRequest(backend6, mainDocumentRequest("http://sub.w3c.org"), { ContentExtensions::ActionType::BlockLoad }); 1318 1311 testRequest(backend6, mainDocumentRequest("http://sub.whatwg.org"), { }); 1319 testRequest(backend6, mainDocumentRequest("http://webkit.org/ignore"), { }, true);1320 testRequest(backend6, mainDocumentRequest("http://w3c.org/ignore"), { }, true);1312 testRequest(backend6, mainDocumentRequest("http://webkit.org/ignore"), { }, 0); 1313 testRequest(backend6, mainDocumentRequest("http://w3c.org/ignore"), { }, 0); 1321 1314 testRequest(backend6, mainDocumentRequest("http://whatwg.org/ignore"), { }); 1322 testRequest(backend6, mainDocumentRequest("http://sub.webkit.org/ignore"), { }, true);1315 testRequest(backend6, mainDocumentRequest("http://sub.webkit.org/ignore"), { }, 0); 1323 1316 testRequest(backend6, mainDocumentRequest("http://sub.w3c.org/ignore"), { ContentExtensions::ActionType::BlockLoad }); 1324 1317 testRequest(backend6, mainDocumentRequest("http://sub.whatwg.org/ignore"), { }); … … 1329 1322 testRequest(backend6, subResourceRequest("http://example.com/script.js", "http://w3c.org/", ResourceType::Script), { ContentExtensions::ActionType::BlockCookies, ContentExtensions::ActionType::BlockLoad }); 1330 1323 testRequest(backend6, subResourceRequest("http://example.com/script.js", "http://example.com/", ResourceType::Script), { }); 1331 testRequest(backend6, subResourceRequest("http://example.com/ignore/image.png", "http://webkit.org/", ResourceType::Image), { }, true);1324 testRequest(backend6, subResourceRequest("http://example.com/ignore/image.png", "http://webkit.org/", ResourceType::Image), { }, 0); 1332 1325 testRequest(backend6, subResourceRequest("http://example.com/ignore/image.png", "http://example.com/", ResourceType::Image), { }); 1333 1326 testRequest(backend6, subResourceRequest("http://example.com/ignore/image.png", "http://example.org/", ResourceType::Image), { ContentExtensions::ActionType::BlockCookies }); 1334 1327 testRequest(backend6, subResourceRequest("http://example.com/doc.html", "http://example.org/", ResourceType::Document), { }); 1335 1328 testRequest(backend6, subResourceRequest("http://example.com/", "http://example.com/", ResourceType::Font), { }); 1336 testRequest(backend6, subResourceRequest("http://example.com/ignore", "http://webkit.org/", ResourceType::Image), { }, true);1337 testRequest(backend6, subResourceRequest("http://example.com/ignore", "http://webkit.org/", ResourceType::Font), { }, true);1329 testRequest(backend6, subResourceRequest("http://example.com/ignore", "http://webkit.org/", ResourceType::Image), { }, 0); 1330 testRequest(backend6, subResourceRequest("http://example.com/ignore", "http://webkit.org/", ResourceType::Font), { }, 0); 1338 1331 testRequest(backend6, subResourceRequest("http://example.com/", "http://example.com/", ResourceType::Script), { }); 1339 1332 testRequest(backend6, subResourceRequest("http://example.com/ignore", "http://example.com/", ResourceType::Script), { }); … … 1522 1515 testRequest(backend, mainDocumentRequest("http://webkit.org/AAD"), { ContentExtensions::ActionType::BlockLoad }); 1523 1516 testRequest(backend, mainDocumentRequest("http://webkit.org/AB"), { }); 1524 testRequest(backend, mainDocumentRequest("http://webkit.org/ABA"), { }, true);1525 testRequest(backend, mainDocumentRequest("http://webkit.org/ABAD"), { }, true);1517 testRequest(backend, mainDocumentRequest("http://webkit.org/ABA"), { }, 0); 1518 testRequest(backend, mainDocumentRequest("http://webkit.org/ABAD"), { }, 0); 1526 1519 testRequest(backend, mainDocumentRequest("http://webkit.org/BC"), { ContentExtensions::ActionType::MakeHTTPS }); 1527 1520 testRequest(backend, mainDocumentRequest("http://webkit.org/ABC"), { ContentExtensions::ActionType::MakeHTTPS }); 1528 testRequest(backend, mainDocumentRequest("http://webkit.org/ABABC"), { ContentExtensions::ActionType::MakeHTTPS }, true);1529 testRequest(backend, mainDocumentRequest("http://webkit.org/ABABCAD"), { ContentExtensions::ActionType::MakeHTTPS }, true);1521 testRequest(backend, mainDocumentRequest("http://webkit.org/ABABC"), { ContentExtensions::ActionType::MakeHTTPS }, 0); 1522 testRequest(backend, mainDocumentRequest("http://webkit.org/ABABCAD"), { ContentExtensions::ActionType::MakeHTTPS }, 0); 1530 1523 testRequest(backend, mainDocumentRequest("http://webkit.org/ABCAD"), { ContentExtensions::ActionType::MakeHTTPS, ContentExtensions::ActionType::BlockLoad }); 1531 1524 } … … 1945 1938 testRequest(matchBackend, mainDocumentRequest("a://www.webkit.org/"), { ContentExtensions::ActionType::BlockLoad }); 1946 1939 testRequest(matchBackend, mainDocumentRequest("b://www.webkit.org/"), { ContentExtensions::ActionType::BlockLoad }); 1947 testRequest(matchBackend, mainDocumentRequest("c://www.webkit.org/"), { }, true);1948 testRequest(matchBackend, mainDocumentRequest("d://www.webkit.org/"), { }, true);1949 testRequest(matchBackend, mainDocumentRequest("e://www.webkit.org/"), { }, true);1940 testRequest(matchBackend, mainDocumentRequest("c://www.webkit.org/"), { }, 0); 1941 testRequest(matchBackend, mainDocumentRequest("d://www.webkit.org/"), { }, 0); 1942 testRequest(matchBackend, mainDocumentRequest("e://www.webkit.org/"), { }, 0); 1950 1943 testRequest(matchBackend, mainDocumentRequest("f://www.webkit.org/"), { ContentExtensions::ActionType::BlockLoad }); 1951 1944 testRequest(matchBackend, mainDocumentRequest("m://www.webkit.org/"), { ContentExtensions::ActionType::BlockLoad }); … … 1956 1949 testRequest(searchBackend, mainDocumentRequest("zzz://www.a.xxx/"), { ContentExtensions::ActionType::BlockLoad }); 1957 1950 testRequest(searchBackend, mainDocumentRequest("zzz://www.b.xxx/"), { ContentExtensions::ActionType::BlockLoad }); 1958 testRequest(searchBackend, mainDocumentRequest("zzz://www.c.xxx/"), { }, true);1959 testRequest(searchBackend, mainDocumentRequest("zzz://www.d.xxx/"), { }, true);1960 testRequest(searchBackend, mainDocumentRequest("zzz://www.e.xxx/"), { }, true);1951 testRequest(searchBackend, mainDocumentRequest("zzz://www.c.xxx/"), { }, 0); 1952 testRequest(searchBackend, mainDocumentRequest("zzz://www.d.xxx/"), { }, 0); 1953 testRequest(searchBackend, mainDocumentRequest("zzz://www.e.xxx/"), { }, 0); 1961 1954 testRequest(searchBackend, mainDocumentRequest("zzz://www.f.xxx/"), { ContentExtensions::ActionType::BlockLoad }); 1962 1955 testRequest(searchBackend, mainDocumentRequest("zzz://www.m.xxx/"), { ContentExtensions::ActionType::BlockLoad }); … … 1970 1963 1971 1964 testRequest(matchBackend, mainDocumentRequest("a://www.webkit.org/"), { ContentExtensions::ActionType::BlockLoad }); 1972 testRequest(matchBackend, mainDocumentRequest("b://www.webkit.org/"), { }, true);1965 testRequest(matchBackend, mainDocumentRequest("b://www.webkit.org/"), { }, 0); 1973 1966 testRequest(matchBackend, mainDocumentRequest("c://www.webkit.org/"), { ContentExtensions::ActionType::BlockLoad }); 1974 1967 testRequest(matchBackend, mainDocumentRequest("m://www.webkit.org/"), { ContentExtensions::ActionType::BlockLoad }); … … 1979 1972 testRequest(searchBackend, mainDocumentRequest("zzz://www.a.xxx/"), { ContentExtensions::ActionType::BlockLoad }); 1980 1973 testRequest(searchBackend, mainDocumentRequest("zzz://www.k.xxx/"), { ContentExtensions::ActionType::BlockLoad }); 1981 testRequest(searchBackend, mainDocumentRequest("zzz://www.l.xxx/"), { }, true);1974 testRequest(searchBackend, mainDocumentRequest("zzz://www.l.xxx/"), { }, 0); 1982 1975 testRequest(searchBackend, mainDocumentRequest("zzz://www.m.xxx/"), { ContentExtensions::ActionType::BlockLoad }); 1983 1976 testRequest(searchBackend, mainDocumentRequest("zzz://www.n.xxx/"), { }); … … 2410 2403 testRequest(matchBackend, mainDocumentRequest("a://www.webkit.org/"), { ContentExtensions::ActionType::BlockLoad }); 2411 2404 testRequest(matchBackend, mainDocumentRequest("b://www.webkit.org/"), { ContentExtensions::ActionType::BlockLoad }); 2412 testRequest(matchBackend, mainDocumentRequest("c://www.webkit.org/"), { }, true);2413 testRequest(matchBackend, mainDocumentRequest("d://www.webkit.org/"), { }, true);2414 testRequest(matchBackend, mainDocumentRequest("e://www.webkit.org/"), { }, true);2405 testRequest(matchBackend, mainDocumentRequest("c://www.webkit.org/"), { }, 0); 2406 testRequest(matchBackend, mainDocumentRequest("d://www.webkit.org/"), { }, 0); 2407 testRequest(matchBackend, mainDocumentRequest("e://www.webkit.org/"), { }, 0); 2415 2408 testRequest(matchBackend, mainDocumentRequest("f://www.webkit.org/"), { ContentExtensions::ActionType::BlockLoad }); 2416 2409 testRequest(matchBackend, mainDocumentRequest("m://www.webkit.org/"), { ContentExtensions::ActionType::BlockLoad }); … … 2421 2414 testRequest(searchBackend, mainDocumentRequest("zzz://www.a.xxx/"), { ContentExtensions::ActionType::BlockLoad }); 2422 2415 testRequest(searchBackend, mainDocumentRequest("zzz://www.b.xxx/"), { ContentExtensions::ActionType::BlockLoad }); 2423 testRequest(searchBackend, mainDocumentRequest("zzz://www.c.xxx/"), { }, true);2424 testRequest(searchBackend, mainDocumentRequest("zzz://www.d.xxx/"), { }, true);2425 testRequest(searchBackend, mainDocumentRequest("zzz://www.e.xxx/"), { }, true);2416 testRequest(searchBackend, mainDocumentRequest("zzz://www.c.xxx/"), { }, 0); 2417 testRequest(searchBackend, mainDocumentRequest("zzz://www.d.xxx/"), { }, 0); 2418 testRequest(searchBackend, mainDocumentRequest("zzz://www.e.xxx/"), { }, 0); 2426 2419 testRequest(searchBackend, mainDocumentRequest("zzz://www.f.xxx/"), { ContentExtensions::ActionType::BlockLoad }); 2427 2420 testRequest(searchBackend, mainDocumentRequest("zzz://www.m.xxx/"), { ContentExtensions::ActionType::BlockLoad }); … … 2436 2429 2437 2430 testRequest(matchBackend, mainDocumentRequest("a://www.webkit.org/"), { ContentExtensions::ActionType::BlockLoad }); 2438 testRequest(matchBackend, mainDocumentRequest("b://www.webkit.org/"), { }, true);2431 testRequest(matchBackend, mainDocumentRequest("b://www.webkit.org/"), { }, 0); 2439 2432 testRequest(matchBackend, mainDocumentRequest("c://www.webkit.org/"), { ContentExtensions::ActionType::BlockLoad }); 2440 2433 testRequest(matchBackend, mainDocumentRequest("m://www.webkit.org/"), { ContentExtensions::ActionType::BlockLoad }); … … 2445 2438 testRequest(searchBackend, mainDocumentRequest("zzz://www.a.xxx/"), { ContentExtensions::ActionType::BlockLoad }); 2446 2439 testRequest(searchBackend, mainDocumentRequest("zzz://www.k.xxx/"), { ContentExtensions::ActionType::BlockLoad }); 2447 testRequest(searchBackend, mainDocumentRequest("zzz://www.l.xxx/"), { }, true);2440 testRequest(searchBackend, mainDocumentRequest("zzz://www.l.xxx/"), { }, 0); 2448 2441 testRequest(searchBackend, mainDocumentRequest("zzz://www.m.xxx/"), { ContentExtensions::ActionType::BlockLoad }); 2449 2442 testRequest(searchBackend, mainDocumentRequest("zzz://www.n.xxx/"), { });
Note:
See TracChangeset
for help on using the changeset viewer.