| LEFT | RIGHT | 
|---|
| 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-2016 Eyeo GmbH | 3  * Copyright (C) 2006-2016 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 | 
| 11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
| 12  * GNU General Public License for more details. | 12  * GNU General Public License for more details. | 
| 13  * | 13  * | 
| 14  * You should have received a copy of the GNU General Public License | 14  * You should have received a copy of the GNU General Public License | 
| 15  * along with Adblock Plus.  If not, see <http://www.gnu.org/licenses/>. | 15  * along with Adblock Plus.  If not, see <http://www.gnu.org/licenses/>. | 
| 16  */ | 16  */ | 
| 17 | 17 | 
| 18 "use strict"; | 18 "use strict"; | 
| 19 | 19 | 
| 20 let {createSandbox} = require("common"); | 20 let {createSandbox} = require("./_common"); | 
| 21 let sandboxedRequire = createSandbox(); | 21 | 
| 22 | 22 let Filter = null; | 
| 23 let {Filter, RegExpFilter} = sandboxedRequire("filterClasses"); | 23 let RegExpFilter = null; | 
|  | 24 | 
|  | 25 exports.setUp = function(callback) | 
|  | 26 { | 
|  | 27   let sandboxedRequire = createSandbox(); | 
|  | 28   ( | 
|  | 29     {Filter, RegExpFilter} = sandboxedRequire("../lib/filterClasses") | 
|  | 30   ); | 
|  | 31 | 
|  | 32   callback(); | 
|  | 33 }; | 
|  | 34 | 
|  | 35 | 
| 24 | 36 | 
| 25 function testMatch(test, text, location, contentType, docDomain, thirdParty, sit
     ekey, expected) | 37 function testMatch(test, text, location, contentType, docDomain, thirdParty, sit
     ekey, expected) | 
| 26 { | 38 { | 
| 27   function testMatch_internal(text, location, contentType, docDomain, thirdParty
     , sitekey, expected) | 39   function testMatch_internal(text, location, contentType, docDomain, thirdParty
     , sitekey, expected) | 
| 28   { | 40   { | 
| 29     let filter = Filter.fromText(text); | 41     let filter = Filter.fromText(text); | 
| 30     let result = filter.matches(location, RegExpFilter.typeMap[contentType], doc
     Domain, thirdParty, sitekey); | 42     let result = filter.matches(location, RegExpFilter.typeMap[contentType], doc
     Domain, thirdParty, sitekey); | 
| 31     test.equal(!!result, expected, '"' + text + '".matches(' + location + ", " +
      contentType + ", " + docDomain + ", " + (thirdParty ? "third-party" : "first-pa
     rty") + ", " + (sitekey || "no-sitekey") + ")"); | 43     test.equal(!!result, expected, '"' + text + '".matches(' + location + ", " +
      contentType + ", " + docDomain + ", " + (thirdParty ? "third-party" : "first-pa
     rty") + ", " + (sitekey || "no-sitekey") + ")"); | 
| 32   } | 44   } | 
| 33   testMatch_internal(text, location, contentType, docDomain, thirdParty, sitekey
     , expected); | 45   testMatch_internal(text, location, contentType, docDomain, thirdParty, sitekey
     , expected); | 
| (...skipping 308 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 342   testMatch(test, "@@test$document,~image", "http://test/", "DOCUMENT", null, fa
     lse, null, true); | 354   testMatch(test, "@@test$document,~image", "http://test/", "DOCUMENT", null, fa
     lse, null, true); | 
| 343   testMatch(test, "@@test$document,domain=foo.com", "http://test/", "DOCUMENT", 
     "foo.com", false, null, true); | 355   testMatch(test, "@@test$document,domain=foo.com", "http://test/", "DOCUMENT", 
     "foo.com", false, null, true); | 
| 344   testMatch(test, "@@test$document,domain=foo.com", "http://test/", "DOCUMENT", 
     "bar.com", false, null, false); | 356   testMatch(test, "@@test$document,domain=foo.com", "http://test/", "DOCUMENT", 
     "bar.com", false, null, false); | 
| 345   testMatch(test, "@@test$document,domain=~foo.com", "http://test/", "DOCUMENT",
      "foo.com", false, null, false); | 357   testMatch(test, "@@test$document,domain=~foo.com", "http://test/", "DOCUMENT",
      "foo.com", false, null, false); | 
| 346   testMatch(test, "@@test$document,domain=~foo.com", "http://test/", "DOCUMENT",
      "bar.com", false, null, true); | 358   testMatch(test, "@@test$document,domain=~foo.com", "http://test/", "DOCUMENT",
      "bar.com", false, null, true); | 
| 347   testMatch(test, "@@test$document,sitekey=foo-publickey", "http://test/", "DOCU
     MENT", "foo.com", false, "foo-publickey", true); | 359   testMatch(test, "@@test$document,sitekey=foo-publickey", "http://test/", "DOCU
     MENT", "foo.com", false, "foo-publickey", true); | 
| 348   testMatch(test, "@@test$document,sitekey=foo-publickey", "http://test/", "DOCU
     MENT", "foo.com", false, null, false); | 360   testMatch(test, "@@test$document,sitekey=foo-publickey", "http://test/", "DOCU
     MENT", "foo.com", false, null, false); | 
| 349 | 361 | 
| 350   test.done(); | 362   test.done(); | 
| 351 }; | 363 }; | 
| LEFT | RIGHT | 
|---|