package jnpf.limsService.support;
|
|
import java.util.Optional;
|
|
/**
|
* 无外部测试依赖的状态映射回归检查,通过 main 方法执行。
|
*/
|
public class LimsSxtFlowStatusResolverChecks {
|
|
public static void main(String[] args) {
|
resolvesKnownWorkflowStates();
|
doesNotResolveUnknownWorkflowState();
|
onlyPassedWorkflowEnablesPlan();
|
}
|
|
private static void resolvesKnownWorkflowStates() {
|
for (Object[] state : workflowStates()) {
|
assertEquals(Optional.of((String) state[1]),
|
LimsSxtFlowStatusResolver.resolveBizStatus((Integer) state[0]));
|
}
|
}
|
|
private static void doesNotResolveUnknownWorkflowState() {
|
assertEquals(Optional.empty(), LimsSxtFlowStatusResolver.resolveBizStatus(10));
|
assertEquals(Optional.empty(), LimsSxtFlowStatusResolver.resolveBizStatus(null));
|
}
|
|
private static void onlyPassedWorkflowEnablesPlan() {
|
assertTrue(LimsSxtFlowStatusResolver.isApproved(2));
|
assertFalse(LimsSxtFlowStatusResolver.isApproved(3));
|
assertFalse(LimsSxtFlowStatusResolver.isApproved(4));
|
assertFalse(LimsSxtFlowStatusResolver.isApproved(null));
|
}
|
|
private static Object[][] workflowStates() {
|
return new Object[][]{
|
{0, "pending"},
|
{1, "processing"},
|
{5, "processing"},
|
{6, "processing"},
|
{8, "processing"},
|
{2, "completed"},
|
{3, "completed"},
|
{4, "completed"},
|
{7, "completed"},
|
{9, "completed"}
|
};
|
}
|
|
private static void assertEquals(Object expected, Object actual) {
|
if (!expected.equals(actual)) {
|
throw new AssertionError("expected=" + expected + ", actual=" + actual);
|
}
|
}
|
|
private static void assertTrue(boolean value) {
|
if (!value) {
|
throw new AssertionError("expected true");
|
}
|
}
|
|
private static void assertFalse(boolean value) {
|
if (value) {
|
throw new AssertionError("expected false");
|
}
|
}
|
}
|