Explorar el Código

update test cases

Shinsuke Sugaya hace 8 años
padre
commit
cf48dd366e

+ 4 - 0
src/test/java/org/codelibs/fess/it/ITBase.java

@@ -55,6 +55,10 @@ public class ITBase {
         given().delete(getEsUrl() + "/.fess_config/access_token/" + DEFAULT_TEST_TOKEN_ID);
     }
 
+    public static void refresh() {
+        given().post(getEsUrl() + "/_refresh");
+    }
+
     public static String getFessUrl() {
         return System.getProperty("test.fess.url", DEFAULT_FESS_URL);
     }

+ 18 - 7
src/test/java/org/codelibs/fess/it/admin/CrawlerLogTests.java

@@ -64,12 +64,12 @@ public class CrawlerLogTests extends ITBase {
         try {
             createWebConfig();
             logger.info("WebConfig is created");
-            Thread.sleep(10000);
+            refresh();
             webConfigId = getWebConfigId();
 
             createJob();
             logger.info("Job is created");
-            Thread.sleep(30000);
+            refresh();
 
             startJob();
 
@@ -175,11 +175,21 @@ public class CrawlerLogTests extends ITBase {
     }
 
     private static void startJob() {
-        final Map<String, Object> requestBody = new HashMap<>();
-        final String schedulerId = getSchedulerId();
-        final Response response = checkMethodBase(requestBody).post("/api/admin/scheduler/" + schedulerId + "/start");
-        response.then().body("response.status", equalTo(0));
-        logger.info("Start scheduler \"" + schedulerId + "\"");
+        for (int i = 0; i < 30; i++) {
+            final Map<String, Object> requestBody = new HashMap<>();
+            final String schedulerId = getSchedulerId();
+            final Response response = checkMethodBase(requestBody).post("/api/admin/scheduler/" + schedulerId + "/start");
+            if (response.getBody().jsonPath().getInt("response.status") == 0) {
+                logger.info("Start scheduler \"" + schedulerId + "\"");
+                return;
+            }
+            try {
+                Thread.sleep(1000L);
+            } catch (InterruptedException e) {
+                // ignore
+            }
+        }
+        assertTrue(false, "could not start job.");
     }
 
     private static void waitJob() throws InterruptedException {
@@ -320,6 +330,7 @@ public class CrawlerLogTests extends ITBase {
         requestBody.put("q", "Example Domain");
 
         checkMethodBase(requestBody).delete("/api/admin/searchlist/query").then().body("response.status", equalTo(0));
+        refresh();
 
         final List<Map<String, Object>> results = getSearchResults();
         assertTrue(results.size() == 0);