summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorluccioman <luccioman@users.noreply.github.com>2016-10-13 15:39:47 +0200
committerluccioman <luccioman@users.noreply.github.com>2016-10-13 15:39:47 +0200
commitf1f4459f88fa8ee25a1823a0fbbdca45cff85492 (patch)
tree900dc5003e39b53522679e7041aee134b589760f /test
parent4b699c469a5654db30acb43fbcb52ea247cfcf89 (diff)
Added some unit tests for Blacklist.isListed()
Diffstat (limited to 'test')
-rw-r--r--test/java/net/yacy/repository/BlacklistTest.java65
1 files changed, 63 insertions, 2 deletions
diff --git a/test/java/net/yacy/repository/BlacklistTest.java b/test/java/net/yacy/repository/BlacklistTest.java
index 3c48fbd58..abde977a5 100644
--- a/test/java/net/yacy/repository/BlacklistTest.java
+++ b/test/java/net/yacy/repository/BlacklistTest.java
@@ -1,9 +1,12 @@
package net.yacy.repository;
+import java.util.HashMap;
import java.util.HashSet;
+import java.util.Map;
import java.util.Set;
import java.util.regex.Pattern;
-import net.yacy.cora.document.id.Punycode;
+
+import org.junit.Assert;
import org.junit.Test;
import static org.junit.Assert.*;
@@ -14,7 +17,7 @@ public class BlacklistTest {
* needed and works
*/
@Test
- public void testContains() throws Punycode.PunycodeException {
+ public void testContains() {
String path = ".*"; // simplest test pattern
Pattern pattern = Pattern.compile(path, Pattern.CASE_INSENSITIVE);
@@ -39,5 +42,63 @@ public class BlacklistTest {
}
assertTrue("match blacklist pattern " + path, ret);
}
+
+ /**
+ * Tests static Blacklist.isListed() function with some sample patterns.
+ */
+ @Test
+ public void testIsListed() {
+ final Map<String, Set<Pattern>> blacklistMapMatched = new HashMap<>();
+ Set<Pattern> patterns = new HashSet<>();
+ patterns.add(Pattern.compile(".*"));
+ blacklistMapMatched.put("stats.example.com", patterns);
+
+ patterns = new HashSet<>();
+ patterns.add(Pattern.compile(".*"));
+ blacklistMapMatched.put("site.blacklisted.net", patterns);
+
+ patterns = new HashSet<>();
+ patterns.add(Pattern.compile("data/js/\\d*\\.js"));
+ blacklistMapMatched.put("js.blacklisted.org", patterns);
+
+
+ patterns = new HashSet<>();
+ patterns.add(Pattern.compile(".*"));
+ blacklistMapMatched.put("ftp.*", patterns);
+
+ patterns = new HashSet<>();
+ patterns.add(Pattern.compile("bestenlisten/.*"));
+ patterns.add(Pattern.compile("produkte/.*"));
+ blacklistMapMatched.put("esample.de", patterns);
+
+ final Map<String, Set<Pattern>> blacklistMapNotMatched = new HashMap<>();
+ patterns = new HashSet<>();
+ patterns.add(Pattern.compile(".*"));
+ blacklistMapNotMatched.put("mobil\\..*", patterns);
+
+ patterns = new HashSet<>();
+ patterns.add(Pattern.compile("counter\\?.*"));
+ blacklistMapNotMatched.put(".*samples.fr", patterns);
+
+ patterns = new HashSet<>();
+ patterns.add(Pattern.compile(".*\\.js"));
+ patterns.add(Pattern.compile(".*\\.jpg"));
+ patterns.add(Pattern.compile(".*BannerAd.*"));
+ patterns.add(Pattern.compile("(.*/)*search.*"));
+ patterns.add(Pattern.compile("(.*/)*bizad.*"));
+ patterns.add(Pattern.compile("(.*/)*member/.*"));
+ blacklistMapNotMatched.put(".*.*", patterns);
+
+ Assert.assertTrue(Blacklist.isListed("site.blacklisted.net", "", blacklistMapMatched, blacklistMapNotMatched));
+ Assert.assertTrue(Blacklist.isListed("site.blacklisted.net", "/index.html", blacklistMapMatched, blacklistMapNotMatched));
+ Assert.assertTrue(Blacklist.isListed("mobil.news.fr", "/index.htm", blacklistMapMatched, blacklistMapNotMatched));
+ Assert.assertTrue(Blacklist.isListed("mobil.news.fr", "/news/latest.html", blacklistMapMatched, blacklistMapNotMatched));
+ Assert.assertTrue(Blacklist.isListed("fr.notblacklisted.org", "/script.js", blacklistMapMatched, blacklistMapNotMatched));
+ Assert.assertTrue(Blacklist.isListed("fr.notblacklisted.org", "/js/script.js", blacklistMapMatched, blacklistMapNotMatched));
+
+
+ Assert.assertFalse(Blacklist.isListed("fr.notblacklisted.org", "/index.html", blacklistMapMatched, blacklistMapNotMatched));
+ Assert.assertFalse(Blacklist.isListed("js.blacklisted.org", "/index.html", blacklistMapMatched, blacklistMapNotMatched));
+ }
}