Skip to content
Snippets Groups Projects
Commit fedfacc3 authored by OZGCloud's avatar OZGCloud
Browse files

OZG-4713 OZG-4927 fix and add tests

parent efe7ee2d
No related branches found
No related tags found
No related merge requests found
......@@ -23,7 +23,6 @@ import de.ozgcloud.alfa.common.command.Command;
import de.ozgcloud.alfa.common.command.CommandOrder;
import de.ozgcloud.alfa.common.command.CommandTestFactory;
import de.ozgcloud.alfa.vorgang.Vorgang.VorgangStatus;
import de.ozgcloud.common.errorhandling.TechnicalException;
public class StatusChangeHistoryBuilderTest {
......@@ -81,7 +80,7 @@ public class StatusChangeHistoryBuilderTest {
void shouldReturnFalse(CommandOrder order) {
var isStatusChangeCommand = builder.isStatusChangeCommand(CommandTestFactory.createBuilder().order(order).build());
assertThat(isStatusChangeCommand).isTrue();
assertThat(isStatusChangeCommand).isFalse();
}
}
......@@ -131,6 +130,7 @@ public class StatusChangeHistoryBuilderTest {
private final CommandWithPrevious commandWithPrevious = new CommandWithPrevious(
command,
Optional.of(new CommandWithPrevious(previousCommand, Optional.empty())));
private final CommandWithPrevious commandWithoutPrevious = new CommandWithPrevious(command, Optional.empty());
@Test
void shouldReturnStatusBeforeChange() {
......@@ -144,7 +144,7 @@ public class StatusChangeHistoryBuilderTest {
@Test
void shouldReturnDefaultValue() {
var status = builder.getStatusBeforeChange(commandWithPrevious);
var status = builder.getStatusBeforeChange(commandWithoutPrevious);
assertThat(status).isEqualTo(StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.NEU));
}
......@@ -156,18 +156,81 @@ public class StatusChangeHistoryBuilderTest {
private final CommandWithPrevious commandWithPrevious = new CommandWithPrevious(command0105, Optional.empty());
@Test
void shouldReturnChangedFromStatus() {
var expectedStatus = LoremIpsum.getInstance().getWords(2);
void shouldReturnStatusAfterChange() {
var status = "Status";
doReturn(status).when(builder).getStatus(command0105);
var statusAfterChange = builder.getStatusAfterChange(commandWithPrevious);
assertThat(statusAfterChange).isEqualTo(status);
}
}
@Nested
class TestGetStatus {
@ParameterizedTest
@EnumSource(mode = Mode.INCLUDE, names = { "VORGANG_ANNEHMEN", "VORGANG_ZURUECKSTELLEN" })
void shouldReturnAngenommen(CommandOrder order) {
var status = builder.getStatus(CommandTestFactory.createBuilder().order(order).build());
assertThat(status).isEqualTo(StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.ANGENOMMEN));
}
@Test
void shouldReturnVerworfen() {
var status = builder.getStatus(CommandTestFactory.createBuilder().order(CommandOrder.VORGANG_VERWERFEN).build());
assertThat(status).isEqualTo(StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.VERWORFEN));
}
@Test
void shouldReturnNeu() {
var status = builder.getStatus(CommandTestFactory.createBuilder().order(CommandOrder.VORGANG_ZURUECKHOLEN).build());
assertThat(status).isEqualTo(StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.NEU));
}
@ParameterizedTest
@EnumSource(mode = Mode.INCLUDE, names = { "VORGANG_BEARBEITEN", "VORGANG_WIEDEREROEFFNEN" })
void shouldReturnInBearbeitung(CommandOrder order) {
var status = builder.getStatus(CommandTestFactory.createBuilder().order(order).build());
assertThat(status).isEqualTo(StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.IN_BEARBEITUNG));
}
@Test
void shouldReturnBeschieden() {
var status = builder.getStatus(CommandTestFactory.createBuilder().order(CommandOrder.VORGANG_BESCHEIDEN).build());
assertThat(status).isEqualTo(StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.BESCHIEDEN));
}
var status = builder.getStatusAfterChange(commandWithPrevious);
@Test
void shouldReturnAbschliessen() {
var status = builder.getStatus(CommandTestFactory.createBuilder().order(CommandOrder.VORGANG_ABSCHLIESSEN).build());
assertThat(status).isEqualTo(StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.ABGESCHLOSSEN));
}
@Test
void shouldReturnZuLoeschen() {
var status = builder.getStatus(CommandTestFactory.createBuilder().order(CommandOrder.VORGANG_ZUM_LOESCHEN_MARKIEREN).build());
assertThat(status).isEqualTo(StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.ZU_LOESCHEN));
}
@Test
void shouldReturnGeloescht() {
var status = builder.getStatus(CommandTestFactory.createBuilder().order(CommandOrder.VORGANG_LOESCHEN).build());
assertThat(status).isEqualTo(expectedStatus);
assertThat(status).isEqualTo(StatusChangeHistoryBuilder.GELOESCHT_NAME);
}
@Test
void shouldThrowExceptionIfStatusIsEmpty() {
assertThatExceptionOfType(TechnicalException.class).isThrownBy(() -> builder.getStatusAfterChange(commandWithPrevious))
.withMessageStartingWith("Unknown status after change for command " + command0105.getId());
void shouldtThrowIllegalArgumentException() {
assertThatThrownBy(() -> builder.getStatus(CommandTestFactory.createBuilder().order(CommandOrder.ASSIGN_USER).build())).isInstanceOf(
IllegalArgumentException.class);
}
}
}
......@@ -104,12 +104,24 @@ public class VorgangChangeHistoryServiceITCase {
var history = service.createVorgangChangeHistory(vorgangWithEingang).getStatusChangeHistory();
assertThat(history).hasSize(6);
checkBeforeAndAfterValues(history.get(0), VorgangStatus.NEU.name(), VorgangStatus.ANGENOMMEN.name());
checkBeforeAndAfterValues(history.get(1), VorgangStatus.ANGENOMMEN.name(), VorgangStatus.IN_BEARBEITUNG.name());
checkBeforeAndAfterValues(history.get(2), VorgangStatus.IN_BEARBEITUNG.name(), VorgangStatus.BESCHIEDEN.name());
checkBeforeAndAfterValues(history.get(3), VorgangStatus.BESCHIEDEN.name(), VorgangStatus.ABGESCHLOSSEN.name());
checkBeforeAndAfterValues(history.get(4), VorgangStatus.ABGESCHLOSSEN.name(), VorgangStatus.ZU_LOESCHEN.name());
checkBeforeAndAfterValues(history.get(5), VorgangStatus.ZU_LOESCHEN.name(), VorgangStatus.ABGESCHLOSSEN.name());
checkBeforeAndAfterValues(history.get(0),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.NEU),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.ANGENOMMEN));
checkBeforeAndAfterValues(history.get(1),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.ANGENOMMEN),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.IN_BEARBEITUNG));
checkBeforeAndAfterValues(history.get(2),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.IN_BEARBEITUNG),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.BESCHIEDEN));
checkBeforeAndAfterValues(history.get(3),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.BESCHIEDEN),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.ABGESCHLOSSEN));
checkBeforeAndAfterValues(history.get(4),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.ABGESCHLOSSEN),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.ZU_LOESCHEN));
checkBeforeAndAfterValues(history.get(5),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.ZU_LOESCHEN),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.ABGESCHLOSSEN));
}
@Test
......@@ -119,9 +131,15 @@ public class VorgangChangeHistoryServiceITCase {
var history = service.createVorgangChangeHistory(vorgangWithEingang).getStatusChangeHistory();
assertThat(history).hasSize(3);
checkBeforeAndAfterValues(history.get(0), VorgangStatus.NEU.name(), VorgangStatus.VERWORFEN.name());
checkBeforeAndAfterValues(history.get(1), VorgangStatus.VERWORFEN.name(), VorgangStatus.ZU_LOESCHEN.name());
checkBeforeAndAfterValues(history.get(2), VorgangStatus.ZU_LOESCHEN.name(), VorgangStatus.VERWORFEN.name());
checkBeforeAndAfterValues(history.get(0),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.NEU),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.VERWORFEN));
checkBeforeAndAfterValues(history.get(1),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.VERWORFEN),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.ZU_LOESCHEN));
checkBeforeAndAfterValues(history.get(2),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.ZU_LOESCHEN),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.VERWORFEN));
}
@Test
......@@ -131,8 +149,12 @@ public class VorgangChangeHistoryServiceITCase {
var history = service.createVorgangChangeHistory(vorgangWithEingang).getStatusChangeHistory();
assertThat(history).hasSize(2);
checkBeforeAndAfterValues(history.get(0), VorgangStatus.NEU.name(), VorgangStatus.VERWORFEN.name());
checkBeforeAndAfterValues(history.get(1), VorgangStatus.VERWORFEN.name(), VorgangStatus.NEU.name());
checkBeforeAndAfterValues(history.get(0),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.NEU),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.VERWORFEN));
checkBeforeAndAfterValues(history.get(1),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.VERWORFEN),
StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.NEU));
}
@Test
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment