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"); } } }