diff --git a/src/test/java/de/ids_mannheim/korap/tokenizer/SentenceSplitterTest.java b/src/test/java/de/ids_mannheim/korap/tokenizer/SentenceSplitterTest.java
index 89b40bc..8bb2b5f 100644
--- a/src/test/java/de/ids_mannheim/korap/tokenizer/SentenceSplitterTest.java
+++ b/src/test/java/de/ids_mannheim/korap/tokenizer/SentenceSplitterTest.java
@@ -32,7 +32,6 @@
     }
 
     @Test
-    @Ignore
     public void testSentSplitterHost2 () {
         DerekoDfaTokenizer_de tok = new DerekoDfaTokenizer_de();
         String[] sentences = tok.sentDetect("Gefunden auf www.wikipedia.org");
@@ -46,7 +45,6 @@
         assertEquals(sentences.length, 1);
     }
 
-
     @Test
     public void testSentSplitterWeb1 () {
         DerekoDfaTokenizer_de tok = new DerekoDfaTokenizer_de();
@@ -54,7 +52,7 @@
         assertEquals(sentences.length, 1);
     }
 
-   @Test
+    @Test
     public void testSentSplitterServer () {
         DerekoDfaTokenizer_de tok = new DerekoDfaTokenizer_de();
         String[] sentences = tok.sentDetect("Unser Server ist 10.0.10.51.");
diff --git a/src/test/java/de/ids_mannheim/korap/tokenizer/TokenizerCoverTest.java b/src/test/java/de/ids_mannheim/korap/tokenizer/TokenizerCoverTest.java
index 1f6ba1c..cabe688 100644
--- a/src/test/java/de/ids_mannheim/korap/tokenizer/TokenizerCoverTest.java
+++ b/src/test/java/de/ids_mannheim/korap/tokenizer/TokenizerCoverTest.java
@@ -167,7 +167,7 @@
 
         test = "cmc_test_professional_chat";
         dist = distanceToGoldStandard(tok, "test_cmc", test);
-        assertTrue(test + " = " + dist, dist <= 20);
+        assertTrue(test + " = " + dist, dist <= 8);
 
         test = "cmc_test_social_chat";
         dist = distanceToGoldStandard(tok, "test_cmc", test);
@@ -175,11 +175,11 @@
 
         test = "cmc_test_twitter";
         dist = distanceToGoldStandard(tok, "test_cmc", test);
-        assertTrue(test + " = " + dist, dist <= 153);
+        assertTrue(test + " = " + dist, dist <= 142);
 
         test = "cmc_test_whatsapp";
         dist = distanceToGoldStandard(tok, "test_cmc", test);
-        assertTrue(test + " = " + dist, dist <= 0);
+        assertTrue(test + " = " + dist, dist == 0);
 
         test = "cmc_test_wiki_discussion";
         dist = distanceToGoldStandard(tok, "test_cmc", test);
@@ -203,15 +203,15 @@
 
         test = "web_test_003";
         dist = distanceToGoldStandard(tok, "test_web", test);
-        assertTrue(test + " = " + dist, dist <= 17);
+        assertTrue(test + " = " + dist, dist <= 9);
 
         test = "web_test_004";
         dist = distanceToGoldStandard(tok, "test_web", test);
-        assertTrue(test + " = " + dist, dist <= 20);
+        assertTrue(test + " = " + dist, dist == 0);
 
         test = "web_test_005";
         dist = distanceToGoldStandard(tok, "test_web", test);
-        assertTrue(test + " = " + dist, dist <= 8);
+        assertTrue(test + " = " + dist, dist <= 2);
 
         test = "web_test_006";
         dist = distanceToGoldStandard(tok, "test_web", test);
@@ -219,7 +219,7 @@
 
         test = "web_test_007";
         dist = distanceToGoldStandard(tok, "test_web", test);
-        assertTrue(test + " = " + dist, dist <= 12);
+        assertTrue(test + " = " + dist, dist <= 8);
 
         test = "web_test_008";
         dist = distanceToGoldStandard(tok, "test_web", test);
@@ -227,7 +227,7 @@
 
         test = "web_test_009";
         dist = distanceToGoldStandard(tok, "test_web", test);
-        assertTrue(test + " = " + dist, dist <= 8);
+        assertTrue(test + " = " + dist, dist <= 6);
 
         test = "web_test_010";
         dist = distanceToGoldStandard(tok, "test_web", test);
@@ -235,7 +235,7 @@
 
         test = "web_test_011";
         dist = distanceToGoldStandard(tok, "test_web", test);
-        assertTrue(test + " = " + dist, dist <= 28);
+        assertTrue(test + " = " + dist, dist <= 21);
 
         test = "web_test_012";
         dist = distanceToGoldStandard(tok, "test_web", test);
