Skip to content

Commit

Permalink
#719 content option rules
Browse files Browse the repository at this point in the history
  • Loading branch information
Mizzick committed Jun 15, 2017
1 parent a32a082 commit 434d3da
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions Extension/tests/url-filter/test-url-filter.js
Expand Up @@ -181,53 +181,69 @@ QUnit.test("Content-specific URL blocking", function (assert) {
assert.notOk(rule.isFiltered("http://test.ru/script.js?ololo=ololo", false, RequestTypes.XMLHTTPREQUEST));
assert.notOk(rule.isFiltered("http://test.ru/?ololo=ololo", false, RequestTypes.SUBDOCUMENT));
assert.notOk(rule.isFiltered("http://test.ru/image.png", false, RequestTypes.IMAGE));

mask = "||test.ru/$~script";
rule = new adguard.rules.UrlFilterRule(mask);
assert.notOk(rule.isFiltered("http://test.ru/script.js?ololo=ololo", false, RequestTypes.SCRIPT));
assert.ok(rule.isFiltered("http://test.ru/script.js?ololo=ololo", false, RequestTypes.XMLHTTPREQUEST));
assert.ok(rule.isFiltered("http://test.ru/?ololo=ololo", false, RequestTypes.SUBDOCUMENT));
assert.ok(rule.isFiltered("http://test.ru/image.png", false, RequestTypes.IMAGE));
assert.ok(rule.isFiltered("ws://test.ru/?ololo=ololo", false, RequestTypes.WEBSOCKET));

mask = "||test.ru/$script,image";
rule = new adguard.rules.UrlFilterRule(mask);
assert.ok(rule.isFiltered("http://test.ru/script.js?ololo=ololo", false, RequestTypes.SCRIPT));
assert.ok(rule.isFiltered("http://test.ru/image.png", false, RequestTypes.IMAGE));
assert.notOk(rule.isFiltered("http://test.ru/?ololo=ololo", false, RequestTypes.SUBDOCUMENT));
assert.notOk(rule.isFiltered("http://test.ru/?ololo=ololo", false, RequestTypes.XMLHTTPREQUEST));
assert.notOk(rule.isFiltered("wss://test.ru/?ololo=ololo", false, RequestTypes.WEBSOCKET));

mask = "||test.ru/$~script,~image";
rule = new adguard.rules.UrlFilterRule(mask);
assert.notOk(rule.isFiltered("http://test.ru/script.js?ololo=ololo", false, RequestTypes.SCRIPT));
assert.ok(rule.isFiltered("http://test.ru/script.js?ololo=ololo", false, RequestTypes.XMLHTTPREQUEST));
assert.ok(rule.isFiltered("http://test.ru/?ololo=ololo", false, RequestTypes.SUBDOCUMENT));
assert.notOk(rule.isFiltered("http://test.ru/image.png", false, RequestTypes.IMAGE));

mask = "||test.ru/$~script,image";
rule = new adguard.rules.UrlFilterRule(mask);
assert.notOk(rule.isFiltered("http://test.ru/script.js?ololo=ololo", false, RequestTypes.SCRIPT));
assert.notOk(rule.isFiltered("http://test.ru/script.js?ololo=ololo", false, RequestTypes.XMLHTTPREQUEST));
assert.notOk(rule.isFiltered("http://test.ru/?ololo=ololo", false, RequestTypes.SUBDOCUMENT));
assert.ok(rule.isFiltered("http://test.ru/image.png", false, RequestTypes.IMAGE));
assert.notOk(rule.isFiltered("http://test.ru/image.png", false, RequestTypes.XMLHTTPREQUEST));

mask = "||test.ru/$script,image,xmlhttprequest";
rule = new adguard.rules.UrlFilterRule(mask);
assert.ok(rule.isFiltered("http://test.ru/script.js?ololo=ololo", false, RequestTypes.SCRIPT));
assert.notOk(rule.isFiltered("http://test.ru/?ololo=ololo", false, RequestTypes.SUBDOCUMENT));
assert.ok(rule.isFiltered("http://test.ru/?ololo=ololo", false, RequestTypes.XMLHTTPREQUEST));
assert.ok(rule.isFiltered("http://test.ru/image.png", false, RequestTypes.IMAGE));

mask = "||test.ru/$websocket";
rule = new adguard.rules.UrlFilterRule(mask);
assert.ok(rule.isFiltered("ws://test.ru/?ololo=ololo", false, RequestTypes.WEBSOCKET));
assert.notOk(rule.isFiltered("http://test.ru/?ololo=ololo", false, RequestTypes.SUBDOCUMENT));
assert.notOk(rule.isFiltered("http://test.ru/?ololo=ololo", false, RequestTypes.OTHER));

mask = "stun:test.ru$webrtc";
rule = new adguard.rules.UrlFilterRule(mask);
assert.ok(rule.isFiltered("stun:test.ru:19302/?ololo=ololo", false, RequestTypes.WEBRTC));
assert.notOk(rule.isFiltered("ws://test.ru/?ololo=ololo", false, RequestTypes.WEBSOCKET));
assert.notOk(rule.isFiltered("http://test.ru/?ololo=ololo", false, RequestTypes.SUBDOCUMENT));
assert.notOk(rule.isFiltered("http://test.ru/?ololo=ololo", false, RequestTypes.OTHER));

mask = "test.com$content,script";
rule = new adguard.rules.UrlFilterRule(mask);
assert.ok(rule != null);

mask = "test.com$content";
try {
rule = new adguard.rules.UrlFilterRule(mask);
assert.ok(false);
} catch (e) {
assert.ok(e != null);
}
});

QUnit.test("UrlFilter class tests", function (assert) {
Expand Down

0 comments on commit 434d3da

Please sign in to comment.