Fix race in Process Manager (#2748)
* Remove redundant JSON diff logging * Fix race in process manager test causing intermittent failure
This commit is contained in:
parent
38d14e0abd
commit
77b858db18
@ -51,6 +51,13 @@ public class ProcessManagerTests {
|
||||
processManager.queueProcess(process1);
|
||||
processManager.queueProcess(process2);
|
||||
processManager.onFailedProcess(process1, new IllegalArgumentException("unexpected error"));
|
||||
// Wait for process to complete to avoid race where they serialize with
|
||||
// different values for status: running vs done
|
||||
int total = 0;
|
||||
while (processManager.hasPending() && total < 1000) {
|
||||
Thread.sleep(100);
|
||||
total += 100;
|
||||
}
|
||||
String processJson = ParsingUtilities.defaultWriter.writeValueAsString(process2);
|
||||
TestUtils.isSerializedTo(processManager, "{"
|
||||
+ "\"processes\":["+processJson+"],\n"
|
||||
|
@ -26,7 +26,6 @@
|
||||
******************************************************************************/
|
||||
package com.google.refine.util;
|
||||
|
||||
import static org.testng.Assert.assertTrue;
|
||||
import static org.testng.Assert.fail;
|
||||
|
||||
import java.io.File;
|
||||
@ -83,8 +82,8 @@ public class TestUtils {
|
||||
JsonNode jsonB = mapper.readValue(actual, JsonNode.class);
|
||||
if (!jsonA.equals(jsonB)) {
|
||||
jsonDiff(expected, actual);
|
||||
fail("Objects above are not equal as JSON strings.");
|
||||
}
|
||||
assertTrue(jsonA.equals(jsonB));
|
||||
} catch(Exception e) {
|
||||
fail("\""+expected+"\" and \""+actual+"\" are not equal as JSON strings.");
|
||||
}
|
||||
@ -115,15 +114,11 @@ public class TestUtils {
|
||||
writer = ParsingUtilities.defaultWriter;
|
||||
}
|
||||
String jacksonJson = writer.writeValueAsString(o);
|
||||
if(!equalAsJson(targetJson, jacksonJson)) {
|
||||
System.out.println("jackson, "+o.getClass().getName());
|
||||
jsonDiff(targetJson, jacksonJson);
|
||||
}
|
||||
assertEqualAsJson(targetJson, jacksonJson);
|
||||
} catch (JsonProcessingException e) {
|
||||
e.printStackTrace();
|
||||
fail("jackson serialization failed");
|
||||
}
|
||||
assertEqualAsJson(targetJson, jacksonJson);
|
||||
} catch (JsonProcessingException e) {
|
||||
e.printStackTrace();
|
||||
fail("jackson serialization failed");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user