Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code

Unified Diff: chrome/content/tests/filterListener.js

Issue 29324604: Issue 2394 - Added unit tests for CSS property filters (Closed)
Patch Set: Rebased and adapted to review changes from #2392 and #2393 Created Nov. 25, 2015, 6:53 p.m.
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« chrome/content/tests/cssRules.js ('K') | « chrome/content/tests/filterClasses.js ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/content/tests/filterListener.js
===================================================================
--- a/chrome/content/tests/filterListener.js
+++ b/chrome/content/tests/filterListener.js
@@ -50,11 +50,21 @@
for (let selector in ElemHideGlobal.exceptions)
{
let list = ElemHideGlobal.exceptions[selector];
- for (let i = 0; i < list.length; i++)
- result.elemhideexception.push(list[i].text);
+ for (let exception of list)
+ result.elemhideexception.push(exception.text);
}
- for (let type of ["blacklist", "whitelist", "elemhide", "elemhideexception"])
+ let CSSRulesGlobal = getModuleGlobal("cssRules");
+ result.cssrule = [];
+ for (let key in CSSRulesGlobal.filters)
+ {
+ let filter = Filter.fromText(key);
+ result.cssrule.push(filter.text);
+ }
+
+ let types = ["blacklist", "whitelist", "elemhide", "elemhideexception",
+ "cssrule"];
+ for (let type of types)
if (!(type in expected))
expected[type] = [];
@@ -68,6 +78,8 @@
let filter3 = Filter.fromText("#filter3");
let filter4 = Filter.fromText("!filter4");
let filter5 = Filter.fromText("#@#filter5");
+ let filter6 = Filter.fromText("example.com##[-abp-properties='filter6']");
+ let filter7 = Filter.fromText("example.com#@#[-abp-properties='filter7']");
FilterStorage.addFilter(filter1);
checkKnownFilters("add filter1", {blacklist: [filter1.text]});
@@ -79,15 +91,19 @@
checkKnownFilters("add !filter4", {blacklist: [filter1.text], whitelist: [filter2.text], elemhide: [filter3.text]});
FilterStorage.addFilter(filter5);
checkKnownFilters("add #@#filter5", {blacklist: [filter1.text], whitelist: [filter2.text], elemhide: [filter3.text], elemhideexception: [filter5.text]});
+ FilterStorage.addFilter(filter6);
+ checkKnownFilters("add example.com##[-abp-properties='filter6']", {blacklist: [filter1.text], whitelist: [filter2.text], elemhide: [filter3.text], elemhideexception: [filter5.text], cssrule: [filter6.text]});
+ FilterStorage.addFilter(filter7);
+ checkKnownFilters("add example.com#@#[-abp-properties='filter7']", {blacklist: [filter1.text], whitelist: [filter2.text], elemhide: [filter3.text], elemhideexception: [filter5.text, filter7.text], cssrule: [filter6.text]});
FilterStorage.removeFilter(filter1);
- checkKnownFilters("remove filter1", {whitelist: [filter2.text], elemhide: [filter3.text], elemhideexception: [filter5.text]});
+ checkKnownFilters("remove filter1", {whitelist: [filter2.text], elemhide: [filter3.text], elemhideexception: [filter5.text, filter7.text], cssrule: [filter6.text]});
filter2.disabled = true;
- checkKnownFilters("disable filter2", {elemhide: [filter3.text], elemhideexception: [filter5.text]});
+ checkKnownFilters("disable filter2", {elemhide: [filter3.text], elemhideexception: [filter5.text, filter7.text], cssrule: [filter6.text]});
FilterStorage.removeFilter(filter2);
- checkKnownFilters("remove filter2", {elemhide: [filter3.text], elemhideexception: [filter5.text]});
+ checkKnownFilters("remove filter2", {elemhide: [filter3.text], elemhideexception: [filter5.text, filter7.text], cssrule: [filter6.text]});
FilterStorage.removeFilter(filter4);
- checkKnownFilters("remove filter4", {elemhide: [filter3.text], elemhideexception: [filter5.text]});
+ checkKnownFilters("remove filter4", {elemhide: [filter3.text], elemhideexception: [filter5.text, filter7.text], cssrule: [filter6.text]});
});
test("Disabling/enabling filters not in the list", function()
@@ -96,6 +112,8 @@
let filter2 = Filter.fromText("@@filter2");
let filter3 = Filter.fromText("#filter3");
let filter4 = Filter.fromText("#@#filter4");
+ let filter5 = Filter.fromText("example.com##[-abp-properties='filter5']");
+ let filter6 = Filter.fromText("example.com#@#[-abp-properties='filter6']");
filter1.disabled = true;
checkKnownFilters("disable filter1 while not in list", {});
@@ -116,6 +134,16 @@
checkKnownFilters("disable #@#filter4 while not in list", {});
filter4.disabled = false;
checkKnownFilters("enable #@#filter4 while not in list", {});
+
+ filter5.disabled = true;
+ checkKnownFilters("disable example.com##[-abp-properties='filter5'] while not in list", {});
+ filter5.disabled = false;
+ checkKnownFilters("enable example.com##[-abp-properties='filter5'] while not in list", {});
+
+ filter6.disabled = true;
+ checkKnownFilters("disable example.com#@#[-abp-properties='filter6'] while not in list", {});
+ filter6.disabled = false;
+ checkKnownFilters("enable example.com#@#[-abp-properties='filter6'] while not in list", {});
});
test("Filter subscription operations", function()
@@ -126,18 +154,20 @@
let filter3 = Filter.fromText("#filter3");
let filter4 = Filter.fromText("!filter4");
let filter5 = Filter.fromText("#@#filter5");
+ let filter6 = Filter.fromText("example.com##[-abp-properties='filter6']");
+ let filter7 = Filter.fromText("example.com#@#[-abp-properties='filter7']");
let subscription = Subscription.fromURL("http://test1/");
- subscription.filters = [filter1, filter2, filter3, filter4, filter5];
+ subscription.filters = [filter1, filter2, filter3, filter4, filter5, filter6, filter7];
FilterStorage.addSubscription(subscription);
- checkKnownFilters("add subscription with filter1, @@filter2, #filter3, !filter4, #@#filter5", {blacklist: [filter1.text], elemhide: [filter3.text], elemhideexception: [filter5.text]});
+ checkKnownFilters("add subscription with filter1, @@filter2, #filter3, !filter4, #@#filter5, example.com##[-abp-properties='filter6'], example.com#@#[-abp-properties='filter7']", {blacklist: [filter1.text], elemhide: [filter3.text], elemhideexception: [filter5.text, filter7.text], cssrule: [filter6.text]});
filter2.disabled = false;
- checkKnownFilters("enable @@filter2", {blacklist: [filter1.text], whitelist: [filter2.text], elemhide: [filter3.text], elemhideexception: [filter5.text]});
+ checkKnownFilters("enable @@filter2", {blacklist: [filter1.text], whitelist: [filter2.text], elemhide: [filter3.text], elemhideexception: [filter5.text, filter7.text], cssrule: [filter6.text]});
FilterStorage.addFilter(filter1);
- checkKnownFilters("add filter1", {blacklist: [filter1.text], whitelist: [filter2.text], elemhide: [filter3.text], elemhideexception: [filter5.text]});
+ checkKnownFilters("add filter1", {blacklist: [filter1.text], whitelist: [filter2.text], elemhide: [filter3.text], elemhideexception: [filter5.text, filter7.text], cssrule: [filter6.text]});
FilterStorage.updateSubscriptionFilters(subscription, [filter4]);
checkKnownFilters("change subscription filters to filter4", {blacklist: [filter1.text]});
« chrome/content/tests/cssRules.js ('K') | « chrome/content/tests/filterClasses.js ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld