diff --git a/src/test/java/de/ids_mannheim/korap/test/KorapClientTest.java b/src/test/java/de/ids_mannheim/korap/test/KorapClientTest.java
index 94e19e9..922526f 100644
--- a/src/test/java/de/ids_mannheim/korap/test/KorapClientTest.java
+++ b/src/test/java/de/ids_mannheim/korap/test/KorapClientTest.java
@@ -14,6 +14,8 @@
 import de.ids_mannheim.korap.sru.KorapResource;
 import de.ids_mannheim.korap.sru.KorapResult;
 import de.ids_mannheim.korap.sru.QueryLanguage;
+import eu.clarin.sru.server.SRUDiagnostic;
+import eu.clarin.sru.server.SRUDiagnosticList;
 import eu.clarin.sru.server.SRUException;
 
 /**
@@ -38,7 +40,7 @@
 		   createExpectationForSearch("der", "cql", "1.2", "50",
                 "search-der.jsonld");
 
-        result = c.query("der", QueryLanguage.CQL, "1.2", 51, 1, null);
+        result = c.query("der", QueryLanguage.CQL, "1.2", 51, 1, null, null);
         assertEquals(1, result.getMatchSize());
         assertEquals(1858, result.getTotalResults());
 
@@ -63,7 +65,7 @@
                 "/corpus/GOE/AGF/00000/p7744-7745/matchInfo");
 
         result = c.query("(\"blaue\"|\"grüne\")", QueryLanguage.FCSQL, "2.0", 1,
-                1, null);
+                1, null,null);
 
         assertEquals(1, result.getMatchSize());
         assertEquals(55, result.getTotalResults());
@@ -112,7 +114,7 @@
             throws HttpResponseException, Exception {
         createExpectationForRetrieveResource();
         KorapResource[] resources = c.retrieveResources();
-        assertEquals(3, resources.length);
+        assertEquals(5, resources.length);
 		assertEquals("http://hdl.handle.net/10932/00-03B6-558F-4E10-6201-1",
 				resources[0].getResourceId());
         assertEquals("http://hdl.handle.net/10932/00-03B6-558F-5EA0-6301-B", 
@@ -127,9 +129,21 @@
 		createExpectationForSearch("\"Freizeit\"", "fcsql", "2.0", "0", 
 				"textType = /.*[Rr]oman/", true,
 				"search-public-metadata.jsonld");
+		
+		SRUDiagnosticList diagnostics =  new SRUDiagnosticList() {
+			
+			@Override
+			public void addDiagnostic (String uri, String details,
+					String message) {
+				System.out.println("Diagnostics: " + uri + "; Details: "
+						+ details + "; Message: "+message);
+
+			}
+		};
+		
 		KorapResult result = c.query("\"Freizeit\"", QueryLanguage.FCSQL, "2.0",
-				1, 1, new String[] { "Romane" });
+				1, 1, new String[] { "Romane" }, diagnostics);
 		assertEquals(702, result.getTotalResults());
-		assertEquals(0, result.getMatchSize());
+//		assertEquals(0, result.getMatchSize());
 	}
 }
