| OLD | NEW | 
|    1 /* |    1 /* | 
|    2  * This file is part of Adblock Plus <https://adblockplus.org/>, |    2  * This file is part of Adblock Plus <https://adblockplus.org/>, | 
|    3  * Copyright (C) 2006-2017 eyeo GmbH |    3  * Copyright (C) 2006-2017 eyeo GmbH | 
|    4  * |    4  * | 
|    5  * Adblock Plus is free software: you can redistribute it and/or modify |    5  * Adblock Plus is free software: you can redistribute it and/or modify | 
|    6  * it under the terms of the GNU General Public License version 3 as |    6  * it under the terms of the GNU General Public License version 3 as | 
|    7  * published by the Free Software Foundation. |    7  * published by the Free Software Foundation. | 
|    8  * |    8  * | 
|    9  * Adblock Plus is distributed in the hope that it will be useful, |    9  * Adblock Plus is distributed in the hope that it will be useful, | 
|   10  * but WITHOUT ANY WARRANTY; without even the implied warranty of |   10  * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   45       {trigger: {"url-filter": "^https?://([^/:]*\\.)?test\\.com[/:]", |   45       {trigger: {"url-filter": "^https?://([^/:]*\\.)?test\\.com[/:]", | 
|   46                  "url-filter-is-case-sensitive": true}, |   46                  "url-filter-is-case-sensitive": true}, | 
|   47        action: {type: "css-display-none", selector: ".whatever"}} |   47        action: {type: "css-display-none", selector: ".whatever"}} | 
|   48     ]); |   48     ]); | 
|   49  |   49  | 
|   50     test.done(); |   50     test.done(); | 
|   51   }, |   51   }, | 
|   52  |   52  | 
|   53   testElementHidingExceptions: function(test) |   53   testElementHidingExceptions: function(test) | 
|   54   { |   54   { | 
|   55     // Element hiding rules should be in the following order: (1) generic |  | 
|   56     // rules, (2) exceptions for generic rules, (3) domain-specific rules, |  | 
|   57     // (4) exceptions for all rules. |  | 
|   58     testRules(test, [ |   55     testRules(test, [ | 
|   59       "##.whatever", |   56       "##.whatever", | 
|   60       "test.com###something", |   57       "test.com###something", | 
|   61       "@@||special.test.com^$elemhide", |   58       "@@||special.test.com^$elemhide", | 
|   62       "@@||test.com^$generichide" |   59       "@@||test.com^$generichide", | 
 |   60       "@@^something^$elemhide", | 
 |   61       "@@^anything^$generichide" | 
|   63     ], [ |   62     ], [ | 
|   64       ["^https?://", "css-display-none"], |   63       ["^https?://", ["*test.com", "*special.test.com"]], | 
|   65       ["^https?://([^/]+\\.)?test\\.com", "ignore-previous-rules"], |   64       ["^https?://([^/:]*\\.)?test\\.com[/:]", ["*special.test.com"]] | 
|   66       ["^https?://([^/:]*\\.)?test\\.com[/:]", "css-display-none"], |  | 
|   67       ["^https?://([^/]+\\.)?special\\.test\\.com", "ignore-previous-rules"] |  | 
|   68     ], rules => rules.map(rule => [rule.trigger["url-filter"], |   65     ], rules => rules.map(rule => [rule.trigger["url-filter"], | 
|   69                                    rule.action.type])); |   66                                    rule.trigger["unless-domain"]])); | 
|   70  |   67  | 
|   71     testRules(test, ["#@#whatever"], []); |   68     testRules(test, ["#@#whatever"], []); | 
|   72     testRules(test, ["test.com#@#whatever"], []); |   69     testRules(test, ["test.com#@#whatever"], []); | 
|   73     testRules(test, ["~test.com#@#whatever"], []); |   70     testRules(test, ["~test.com#@#whatever"], []); | 
|   74  |   71  | 
|   75     // We currently completely ignore any element hiding filters that have the |   72     // We currently completely ignore any element hiding filters that have the | 
|   76     // same selector as an element hiding exception. In these examples #whatever |   73     // same selector as an element hiding exception. In these examples #whatever | 
|   77     // should be hidden for all domains not ending in test.com instead of |   74     // should be hidden for all domains not ending in test.com instead of | 
|   78     // nowhere! |   75     // nowhere! | 
|   79     testRules(test, ["test.com#@#whatever", "##whatever"], []); |   76     testRules(test, ["test.com#@#whatever", "##whatever"], []); | 
| (...skipping 195 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|  275   testUnicode: function(test) |  272   testUnicode: function(test) | 
|  276   { |  273   { | 
|  277     testRules(test, ["$domain=🐈.cat"], ["*xn--zn8h.cat"], |  274     testRules(test, ["$domain=🐈.cat"], ["*xn--zn8h.cat"], | 
|  278               rules => rules[0]["trigger"]["if-domain"]); |  275               rules => rules[0]["trigger"]["if-domain"]); | 
|  279     testRules(test, ["🐈$domain=🐈.cat"], []); |  276     testRules(test, ["🐈$domain=🐈.cat"], []); | 
|  280     testRules(test, ["###🐈"], []); |  277     testRules(test, ["###🐈"], []); | 
|  281  |  278  | 
|  282     test.done(); |  279     test.done(); | 
|  283   } |  280   } | 
|  284 }; |  281 }; | 
| OLD | NEW |