package jnpf.dmsService.support;
|
|
import org.junit.jupiter.api.Test;
|
|
import static jnpf.dmsService.support.DmsWenjianBianhaoFlowStateResolver.Action.CANCEL;
|
import static jnpf.dmsService.support.DmsWenjianBianhaoFlowStateResolver.Action.ERROR;
|
import static jnpf.dmsService.support.DmsWenjianBianhaoFlowStateResolver.Action.FREEZE_SNAPSHOT;
|
import static jnpf.dmsService.support.DmsWenjianBianhaoFlowStateResolver.Action.HOLD;
|
import static jnpf.dmsService.support.DmsWenjianBianhaoFlowStateResolver.Action.ISSUE_NUMBER;
|
import static jnpf.dmsService.support.DmsWenjianBianhaoFlowStateResolver.Action.REJECT;
|
import static jnpf.dmsService.support.DmsWenjianBianhaoFlowStateResolver.Action.RESTORE_DRAFT;
|
import static jnpf.dmsService.support.DmsWenjianBianhaoFlowStateResolver.Action.REVOKE;
|
import static org.junit.jupiter.api.Assertions.assertEquals;
|
import static org.junit.jupiter.api.Assertions.assertFalse;
|
|
class DmsWenjianBianhaoFlowStateResolverTest {
|
|
@Test
|
void mapsEverySupportedJnpfFlowState() {
|
assertEquals(RESTORE_DRAFT, resolve(0));
|
assertEquals(FREEZE_SNAPSHOT, resolve(1));
|
assertEquals(ISSUE_NUMBER, resolve(2));
|
assertEquals(REJECT, resolve(3));
|
assertEquals(CANCEL, resolve(4));
|
assertEquals(HOLD, resolve(5));
|
assertEquals(HOLD, resolve(6));
|
assertEquals(REVOKE, resolve(7));
|
assertEquals(HOLD, resolve(8));
|
assertEquals(RESTORE_DRAFT, resolve(9));
|
assertEquals(ERROR, resolve(10));
|
}
|
|
@Test
|
void rejectsMissingAndUnknownStates() {
|
assertFalse(DmsWenjianBianhaoFlowStateResolver.resolve(null).isPresent());
|
assertFalse(DmsWenjianBianhaoFlowStateResolver.resolve(11).isPresent());
|
}
|
|
private DmsWenjianBianhaoFlowStateResolver.Action resolve(int state) {
|
return DmsWenjianBianhaoFlowStateResolver.resolve(state).orElseThrow(AssertionError::new);
|
}
|
}
|