Left: | ||
Right: |
OLD | NEW |
---|---|
1 (function() | 1 (function() |
2 { | 2 { |
3 let server = null; | 3 let server = null; |
4 let frame = null; | 4 let frame = null; |
5 | 5 |
6 module("Element hiding", { | 6 module("Element hiding", { |
7 setup: function() | 7 setup: function() |
8 { | 8 { |
9 prepareFilterComponents.call(this); | 9 prepareFilterComponents.call(this); |
10 preparePrefs.call(this); | 10 preparePrefs.call(this); |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
99 [["localhost,~foo###test1", "localhost#@##test1"], ["visible", "visible"]], | 99 [["localhost,~foo###test1", "localhost#@##test1"], ["visible", "visible"]], |
100 [["###test1", "foo#@##test1"], ["hidden", "visible"]], | 100 [["###test1", "foo#@##test1"], ["hidden", "visible"]], |
101 [["###test1", "~foo#@##test1"], ["visible", "visible"]], | 101 [["###test1", "~foo#@##test1"], ["visible", "visible"]], |
102 [["###test1", "~localhost#@##test1"], ["hidden", "visible"]], | 102 [["###test1", "~localhost#@##test1"], ["hidden", "visible"]], |
103 [["###test1", "#@##test1"], ["visible", "visible"]], | 103 [["###test1", "#@##test1"], ["visible", "visible"]], |
104 [["localhost###test1", "#@##test1"], ["visible", "visible"]], | 104 [["localhost###test1", "#@##test1"], ["visible", "visible"]], |
105 | 105 |
106 [["localhost.###test1"], ["visible", "visible"]], | 106 [["localhost.###test1"], ["visible", "visible"]], |
107 [["localhost.,localhost###test1"], ["hidden", "visible"]], | 107 [["localhost.,localhost###test1"], ["hidden", "visible"]], |
108 [["localhost.,foo.###test1"], ["visible", "visible"]], | 108 [["localhost.,foo.###test1"], ["visible", "visible"]], |
109 | |
110 [["#div(test1)", "@@localhost$generichide"], ["visible", "visible"]], | |
111 [["#div(test1)", "@@localhost$genericblock"], ["hidden", "visible"]], | |
112 [["localhost#div(test1)", "@@localhost$generichide"], ["hidden", "visible"]] , | |
113 [["~example.com#div(test1)", "@@localhost$generichide"], ["visible", "visibl e"]], | |
114 [["~example.com#div(test1)", "@@localhost$genericblock"], ["hidden", "visibl e"]], | |
115 [["~example.com,localhost#div(test1)", "@@localhost$generichide"], ["hidden" , "visible"]], | |
109 ]; | 116 ]; |
110 | 117 |
111 function runTest([filters, expected], stage) | 118 function runTest([filters, expected], stage) |
112 { | 119 { |
113 let listener = function(action) | 120 let listener = function(action) |
114 { | 121 { |
115 if (action != "elemhideupdate") | 122 if (action != "elemhideupdate") |
116 return; | 123 return; |
117 FilterNotifier.removeListener(listener); | 124 FilterNotifier.removeListener(listener); |
118 | 125 |
(...skipping 12 matching lines...) Expand all Loading... | |
131 Utils.runAsync(function() | 138 Utils.runAsync(function() |
132 { | 139 { |
133 let doc = frame.contentDocument; | 140 let doc = frame.contentDocument; |
134 equal(doc.getElementById("test1").offsetHeight > 0 ? "visible" : "hidd en", expected[0], "First element visible"); | 141 equal(doc.getElementById("test1").offsetHeight > 0 ? "visible" : "hidd en", expected[0], "First element visible"); |
135 equal(doc.getElementById("test2").offsetHeight > 0 ? "visible" : "hidd en", expected[1], "Second element visible"); | 142 equal(doc.getElementById("test2").offsetHeight > 0 ? "visible" : "hidd en", expected[1], "Second element visible"); |
136 | 143 |
137 start(); | 144 start(); |
138 }); | 145 }); |
139 }, false, true); | 146 }, false, true); |
140 frame.setAttribute("src", "http://localhost:1234/test"); | 147 frame.setAttribute("src", "http://localhost:1234/test"); |
148 }; | |
149 | |
150 for (let filter_text of filters) | |
151 { | |
152 let filter = Filter.fromText(filter_text); | |
153 if (filter instanceof WhitelistFilter) | |
Felix Dahlke
2015/10/01 11:53:40
What I (also) meant is that `!(filter instanceof E
kzar
2015/10/01 12:16:52
Ah I see, and good point. Unfortunately for reason
| |
154 defaultMatcher.add(filter); | |
155 else | |
156 ElemHide.add(Filter.fromText(filter)); | |
141 } | 157 } |
158 | |
142 FilterNotifier.addListener(listener); | 159 FilterNotifier.addListener(listener); |
143 | |
144 for (let filter of filters) | |
145 ElemHide.add(Filter.fromText(filter)); | |
146 ElemHide.isDirty = true; | 160 ElemHide.isDirty = true; |
147 ElemHide.apply(); | 161 ElemHide.apply(); |
148 } | 162 } |
149 | 163 |
150 let stageDescriptions = { | 164 let stageDescriptions = { |
151 1: "running without exceptions", | 165 1: "running without exceptions", |
152 2: "running with whitelisted document", | 166 2: "running with whitelisted document", |
153 3: "running with exception not applying to documents", | 167 3: "running with exception not applying to documents", |
154 4: "running with element hiding exception", | 168 4: "running with element hiding exception", |
155 }; | 169 }; |
156 | 170 |
157 for (let test = 0; test < tests.length; test++) | 171 for (let test = 0; test < tests.length; test++) |
158 { | 172 { |
159 let [filters, expected] = tests[test]; | 173 let [filters, expected] = tests[test]; |
160 for (let stage = 1; stage in stageDescriptions; stage++) | 174 for (let stage = 1; stage in stageDescriptions; stage++) |
161 asyncTest(filters.join(", ") + " (" + stageDescriptions[stage] + ")", runT est.bind(null, tests[test], stage)); | 175 asyncTest(filters.join(", ") + " (" + stageDescriptions[stage] + ")", runT est.bind(null, tests[test], stage)); |
162 } | 176 } |
163 })(); | 177 })(); |
OLD | NEW |