diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/historie/FixedVorgangStatusFinder.java b/alfa-service/src/main/java/de/ozgcloud/alfa/historie/FixedVorgangStatusFinder.java deleted file mode 100644 index 84697de3450c82fc6568790d2cd4ed0e9ae28cf7..0000000000000000000000000000000000000000 --- a/alfa-service/src/main/java/de/ozgcloud/alfa/historie/FixedVorgangStatusFinder.java +++ /dev/null @@ -1,16 +0,0 @@ -package de.ozgcloud.alfa.historie; - -import java.util.Optional; - -import lombok.RequiredArgsConstructor; - -@RequiredArgsConstructor -class FixedVorgangStatusFinder implements VorgangStatusFinder { - - private final String vorgangStatus; - - @Override - public Optional<String> findVorgangStatus(CommandWithPrevious commandWithPrevious) { - return Optional.of(vorgangStatus); - } -} diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/historie/PreviousCommandChangedToStatusFinder.java b/alfa-service/src/main/java/de/ozgcloud/alfa/historie/PreviousCommandChangedToStatusFinder.java deleted file mode 100644 index 37d384cde676444a7d3ff9831c2ee32072f782da..0000000000000000000000000000000000000000 --- a/alfa-service/src/main/java/de/ozgcloud/alfa/historie/PreviousCommandChangedToStatusFinder.java +++ /dev/null @@ -1,15 +0,0 @@ -package de.ozgcloud.alfa.historie; - -import java.util.Optional; - -class PreviousCommandChangedToStatusFinder implements VorgangStatusFinder { - @Override - public Optional<String> findVorgangStatus(CommandWithPrevious commandWithPrevious) { - return commandWithPrevious.previous().flatMap(this::getChangedToStatus); - } - - private Optional<String> getChangedToStatus(CommandWithPrevious commandWithPrevious) { - var statusChangeInfo = StatusChangeInfo.getStatusChangeInfoFor(commandWithPrevious); - return statusChangeInfo.getChangedToStatus(commandWithPrevious); - } -} diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/historie/StatusChangeHistoryBuilder.java b/alfa-service/src/main/java/de/ozgcloud/alfa/historie/StatusChangeHistoryBuilder.java index c9fc4e2c10aff62768e73bbbbed669840fb32639..8109044ae578c425ef01c44138d46fcb2947fb39 100644 --- a/alfa-service/src/main/java/de/ozgcloud/alfa/historie/StatusChangeHistoryBuilder.java +++ b/alfa-service/src/main/java/de/ozgcloud/alfa/historie/StatusChangeHistoryBuilder.java @@ -1,16 +1,40 @@ package de.ozgcloud.alfa.historie; +import java.util.Map; +import java.util.Set; import java.util.stream.Stream; import de.ozgcloud.alfa.common.command.Command; -import de.ozgcloud.alfa.vorgang.Vorgang; -import de.ozgcloud.common.errorhandling.TechnicalException; +import de.ozgcloud.alfa.common.command.CommandOrder; +import de.ozgcloud.alfa.vorgang.Vorgang.VorgangStatus; import lombok.AccessLevel; import lombok.NoArgsConstructor; @NoArgsConstructor(access = AccessLevel.PRIVATE) public class StatusChangeHistoryBuilder extends ChangeHistoryBuilder<StatusChangeHistoryBuilder> { + static final String GELOESCHT_NAME = "Gelöscht"; + static final Map<VorgangStatus, String> VORGANG_STATUS_TO_NAME = Map.of( + VorgangStatus.NEU, "Neu", + VorgangStatus.ANGENOMMEN, "Angenommen", + VorgangStatus.VERWORFEN, "Verworfen", + VorgangStatus.IN_BEARBEITUNG, "In Bearbeitung", + VorgangStatus.BESCHIEDEN, "Beschieden", + VorgangStatus.ABGESCHLOSSEN, "Abgeschlossen", + VorgangStatus.WEITERGELEITET, "Weitergeleitet", + VorgangStatus.ZU_LOESCHEN, "Zu Löschen" + ); + static final Set<CommandOrder> STATUS_CHANGE_COMMAND_ORDER = Set.of( + CommandOrder.VORGANG_ANNEHMEN, + CommandOrder.VORGANG_VERWERFEN, + CommandOrder.VORGANG_ZURUECKHOLEN, + CommandOrder.VORGANG_BEARBEITEN, + CommandOrder.VORGANG_BESCHEIDEN, + CommandOrder.VORGANG_ABSCHLIESSEN, + CommandOrder.VORGANG_ZUM_LOESCHEN_MARKIEREN, + CommandOrder.VORGANG_LOESCHEN, + CommandOrder.VORGANG_ZURUECKSTELLEN); + public static StatusChangeHistoryBuilder builder() { return new StatusChangeHistoryBuilder(); } @@ -21,24 +45,36 @@ public class StatusChangeHistoryBuilder extends ChangeHistoryBuilder<StatusChang } boolean isStatusChangeCommand(Command command) { - return StatusChangeInfo.isStatusChangeOrder(command.getOrder()); + return STATUS_CHANGE_COMMAND_ORDER.contains(command.getOrder()); } @Override CommandWithChangeValues toCommandWithChangeValues(CommandWithPrevious commandWithPrevious) { - var statusChangeInfo = StatusChangeInfo.getStatusChangeInfoFor(commandWithPrevious); - return new CommandWithChangeValues( - commandWithPrevious.command(), - getStatusBeforeChange(commandWithPrevious, statusChangeInfo), - getStatusAfterChange(commandWithPrevious, statusChangeInfo)); + return new CommandWithChangeValues(commandWithPrevious.command(), + getStatusBeforeChange(commandWithPrevious), + getStatusAfterChange(commandWithPrevious)); + } + + String getStatusBeforeChange(CommandWithPrevious commandWithPrevious) { + return commandWithPrevious.previous().map(CommandWithPrevious::command).map(this::getStatus) + .orElse(VORGANG_STATUS_TO_NAME.get(VorgangStatus.NEU)); } - String getStatusBeforeChange(CommandWithPrevious commandWithPrevious, StatusChangeInfo statusChangeInfo) { - return statusChangeInfo.getChangedFromStatus(commandWithPrevious).orElse(Vorgang.VorgangStatus.NEU.name()); + String getStatusAfterChange(CommandWithPrevious commandWithPrevious) { + return getStatus(commandWithPrevious.command()); } - String getStatusAfterChange(CommandWithPrevious commandWithPrevious, StatusChangeInfo statusChangeInfo) { - return statusChangeInfo.getChangedToStatus(commandWithPrevious) - .orElseThrow(() -> new TechnicalException("Unknown status after change for command " + commandWithPrevious.command().getId())); + String getStatus(Command command) { + return switch (command.getOrder()) { + case VORGANG_ANNEHMEN, VORGANG_ZURUECKSTELLEN -> VORGANG_STATUS_TO_NAME.get(VorgangStatus.ANGENOMMEN); + case VORGANG_VERWERFEN -> VORGANG_STATUS_TO_NAME.get(VorgangStatus.VERWORFEN); + case VORGANG_ZURUECKHOLEN -> VORGANG_STATUS_TO_NAME.get(VorgangStatus.NEU); + case VORGANG_BEARBEITEN, VORGANG_WIEDEREROEFFNEN -> VORGANG_STATUS_TO_NAME.get(VorgangStatus.IN_BEARBEITUNG); + case VORGANG_BESCHEIDEN -> VORGANG_STATUS_TO_NAME.get(VorgangStatus.BESCHIEDEN); + case VORGANG_ABSCHLIESSEN -> VORGANG_STATUS_TO_NAME.get(VorgangStatus.ABGESCHLOSSEN); + case VORGANG_ZUM_LOESCHEN_MARKIEREN -> VORGANG_STATUS_TO_NAME.get(VorgangStatus.ZU_LOESCHEN); + case VORGANG_LOESCHEN -> GELOESCHT_NAME; + default -> throw new IllegalArgumentException("Unexpected or unknown command order " + command.getOrder()); + }; } } diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/historie/StatusChangeInfo.java b/alfa-service/src/main/java/de/ozgcloud/alfa/historie/StatusChangeInfo.java deleted file mode 100644 index 3f72835df7df85c7b18a77c381c2e01ef118752a..0000000000000000000000000000000000000000 --- a/alfa-service/src/main/java/de/ozgcloud/alfa/historie/StatusChangeInfo.java +++ /dev/null @@ -1,73 +0,0 @@ -package de.ozgcloud.alfa.historie; - -import java.util.HashMap; -import java.util.Map; -import java.util.Optional; - -import de.ozgcloud.alfa.common.command.CommandOrder; -import de.ozgcloud.alfa.vorgang.Vorgang; -import lombok.AccessLevel; -import lombok.RequiredArgsConstructor; - -@RequiredArgsConstructor(access = AccessLevel.PACKAGE) -class StatusChangeInfo { - - private final VorgangStatusFinder changedFromFinder; - private final VorgangStatusFinder changedToFinder; - - public static StatusChangeInfo getStatusChangeInfoFor(CommandWithPrevious commandWithPrevious) { - return STATUS_CHANGE_ORDERS.get(commandWithPrevious.command().getOrder()); - } - - public Optional<String> getChangedFromStatus(CommandWithPrevious commandWithPrevious) { - return changedFromFinder.findVorgangStatus(commandWithPrevious); - } - - public Optional<String> getChangedToStatus(CommandWithPrevious commandWithPrevious) { - return changedToFinder.findVorgangStatus(commandWithPrevious); - } - - public static boolean isStatusChangeOrder(CommandOrder commandOrder) { - return STATUS_CHANGE_ORDERS.containsKey(commandOrder); - } - - private static final Map<CommandOrder, StatusChangeInfo> STATUS_CHANGE_ORDERS = new HashMap<>(); - - static { - addStatusChangeInfo(CommandOrder.VORGANG_ANNEHMEN, - new PreviousCommandChangedToStatusFinder(), - new FixedVorgangStatusFinder(Vorgang.VorgangStatus.ANGENOMMEN.name())); - addStatusChangeInfo(CommandOrder.VORGANG_VERWERFEN, - new PreviousCommandChangedToStatusFinder(), - new FixedVorgangStatusFinder(Vorgang.VorgangStatus.VERWORFEN.name())); - addStatusChangeInfo(CommandOrder.VORGANG_ZURUECKHOLEN, - new PreviousCommandChangedToStatusFinder(), - new FixedVorgangStatusFinder(Vorgang.VorgangStatus.NEU.name())); - addStatusChangeInfo(CommandOrder.VORGANG_BEARBEITEN, - new PreviousCommandChangedToStatusFinder(), - new FixedVorgangStatusFinder(Vorgang.VorgangStatus.IN_BEARBEITUNG.name())); - addStatusChangeInfo(CommandOrder.VORGANG_ZURUECKSTELLEN, - new PreviousCommandChangedToStatusFinder(), - new FixedVorgangStatusFinder(Vorgang.VorgangStatus.ANGENOMMEN.name())); - addStatusChangeInfo(CommandOrder.VORGANG_BESCHEIDEN, - new PreviousCommandChangedToStatusFinder(), - new FixedVorgangStatusFinder(Vorgang.VorgangStatus.BESCHIEDEN.name())); - addStatusChangeInfo(CommandOrder.VORGANG_WIEDEREROEFFNEN, - new PreviousCommandChangedToStatusFinder(), - new FixedVorgangStatusFinder(Vorgang.VorgangStatus.IN_BEARBEITUNG.name())); - addStatusChangeInfo(CommandOrder.VORGANG_ABSCHLIESSEN, - new PreviousCommandChangedToStatusFinder(), - new FixedVorgangStatusFinder(Vorgang.VorgangStatus.ABGESCHLOSSEN.name())); - addStatusChangeInfo(CommandOrder.VORGANG_ZUM_LOESCHEN_MARKIEREN, - new PreviousCommandChangedToStatusFinder(), - new FixedVorgangStatusFinder(Vorgang.VorgangStatus.ZU_LOESCHEN.name())); - addStatusChangeInfo(CommandOrder.VORGANG_LOESCHEN, - new PreviousCommandChangedToStatusFinder(), - new FixedVorgangStatusFinder("GELOESCHT")); - } - - private static void addStatusChangeInfo(CommandOrder commandOrder, VorgangStatusFinder changedFromFinder, - VorgangStatusFinder changedToFinder) { - STATUS_CHANGE_ORDERS.put(commandOrder, new StatusChangeInfo(changedFromFinder, changedToFinder)); - } -} diff --git a/alfa-service/src/main/java/de/ozgcloud/alfa/historie/VorgangStatusFinder.java b/alfa-service/src/main/java/de/ozgcloud/alfa/historie/VorgangStatusFinder.java deleted file mode 100644 index e64afe777780eb144bf205e2b4a344cb2b0afdf1..0000000000000000000000000000000000000000 --- a/alfa-service/src/main/java/de/ozgcloud/alfa/historie/VorgangStatusFinder.java +++ /dev/null @@ -1,8 +0,0 @@ -package de.ozgcloud.alfa.historie; - -import java.util.Optional; - -interface VorgangStatusFinder { - - Optional<String> findVorgangStatus(CommandWithPrevious commandWithPrevious); -} diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/historie/FixedVorgangStatusFinderTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/historie/FixedVorgangStatusFinderTest.java deleted file mode 100644 index 04ff13ad46e4397a3719c0f01a52d4caf2e038b9..0000000000000000000000000000000000000000 --- a/alfa-service/src/test/java/de/ozgcloud/alfa/historie/FixedVorgangStatusFinderTest.java +++ /dev/null @@ -1,21 +0,0 @@ -package de.ozgcloud.alfa.historie; - -import static org.assertj.core.api.Assertions.*; -import static org.mockito.Mockito.*; - -import org.junit.jupiter.api.Test; - -import de.ozgcloud.alfa.vorgang.Vorgang; - -public class FixedVorgangStatusFinderTest { - - @Test - void shouldReturnVorgangStatus() { - var status = Vorgang.VorgangStatus.IN_BEARBEITUNG.name(); - var statusFinder = new FixedVorgangStatusFinder(status); - - var returnedStatus = statusFinder.findVorgangStatus(mock(CommandWithPrevious.class)); - - assertThat(returnedStatus).isPresent().get().isEqualTo(status); - } -} diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/historie/PreviousCommandBasedStatusFinderTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/historie/PreviousCommandBasedStatusFinderTest.java deleted file mode 100644 index 0fc2bf973260868133e873270acb701e255dbf49..0000000000000000000000000000000000000000 --- a/alfa-service/src/test/java/de/ozgcloud/alfa/historie/PreviousCommandBasedStatusFinderTest.java +++ /dev/null @@ -1,41 +0,0 @@ -package de.ozgcloud.alfa.historie; - -import static org.mockito.Mockito.*; - -import java.util.Optional; - -import org.junit.jupiter.api.AfterEach; -import org.junit.jupiter.api.BeforeEach; -import org.mockito.Mock; -import org.mockito.MockedStatic; - -import de.ozgcloud.alfa.common.command.CommandTestFactory; - -public abstract class PreviousCommandBasedStatusFinderTest { - - MockedStatic<StatusChangeInfo> staticStatusChangeInfo; - @Mock - StatusChangeInfo statusChangeInfo; - CommandWithPrevious previousCommand; - CommandWithPrevious command; - - @BeforeEach - void init() { - staticStatusChangeInfo = mockStatic(StatusChangeInfo.class); - initPreviousCommand(); - initStatusChangeInfoOfPreviousCommand(); - } - - @AfterEach - void cleanup() { - staticStatusChangeInfo.close(); - } - - private void initPreviousCommand() { - previousCommand = new CommandWithPrevious(CommandTestFactory.create(), Optional.empty()); - } - - private void initStatusChangeInfoOfPreviousCommand() { - staticStatusChangeInfo.when(() -> StatusChangeInfo.getStatusChangeInfoFor(previousCommand)).thenReturn(statusChangeInfo); - } -} diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/historie/PreviousCommandChangedToStatusFinderTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/historie/PreviousCommandChangedToStatusFinderTest.java deleted file mode 100644 index c6c075138cdbd217e1a4b93ecf4471605fec79d0..0000000000000000000000000000000000000000 --- a/alfa-service/src/test/java/de/ozgcloud/alfa/historie/PreviousCommandChangedToStatusFinderTest.java +++ /dev/null @@ -1,33 +0,0 @@ -package de.ozgcloud.alfa.historie; - -import static org.assertj.core.api.Assertions.*; -import static org.mockito.Mockito.*; - -import java.util.Optional; - -import org.junit.jupiter.api.Test; - -import de.ozgcloud.alfa.common.command.CommandTestFactory; - -public class PreviousCommandChangedToStatusFinderTest extends PreviousCommandBasedStatusFinderTest { - - @Test - void shouldReturnChangedToStatusFromPreviousCommand() { - var expectedVorgangStatus = "EXPECTED_VORGANG_STATUS"; - when(statusChangeInfo.getChangedToStatus(previousCommand)).thenReturn(Optional.of(expectedVorgangStatus)); - command = new CommandWithPrevious(CommandTestFactory.create(), Optional.of(previousCommand)); - - var foundStatus = new PreviousCommandChangedToStatusFinder().findVorgangStatus(command); - - assertThat(foundStatus).isPresent().get().isEqualTo(expectedVorgangStatus); - } - - @Test - void shouldReturnEmptyIfThereIsNoPreviousCommand() { - command = new CommandWithPrevious(CommandTestFactory.create(), Optional.empty()); - - var foundStatus = new PreviousCommandChangedToStatusFinder().findVorgangStatus(command); - - assertThat(foundStatus).isEmpty(); - } -} diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/historie/StatusChangeHistoryBuilderTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/historie/StatusChangeHistoryBuilderTest.java index a6ff5b298774d01d7e435d9db5b0f122ebc49a3b..d29f4d2b7d5aec54469268bc304b8bea16a87a6f 100644 --- a/alfa-service/src/test/java/de/ozgcloud/alfa/historie/StatusChangeHistoryBuilderTest.java +++ b/alfa-service/src/test/java/de/ozgcloud/alfa/historie/StatusChangeHistoryBuilderTest.java @@ -9,20 +9,20 @@ import java.util.List; import java.util.Optional; import java.util.UUID; -import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; import org.junit.jupiter.params.ParameterizedTest; -import org.junit.jupiter.params.provider.ValueSource; -import org.mockito.Mock; -import org.mockito.MockedStatic; +import org.junit.jupiter.params.provider.EnumSource; +import org.junit.jupiter.params.provider.EnumSource.Mode; import org.mockito.Spy; import com.thedeanda.lorem.LoremIpsum; import de.ozgcloud.alfa.common.command.Command; -import de.ozgcloud.alfa.vorgang.Vorgang; +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 { @@ -66,33 +66,22 @@ public class StatusChangeHistoryBuilderTest { @Nested class TestIsStatusChangeCommand { - private MockedStatic<StatusChangeInfo> statusChangeInfo; - - @BeforeEach - void init() { - statusChangeInfo = mockStatic(StatusChangeInfo.class); - } - - @AfterEach - void cleanup() { - statusChangeInfo.close(); - } - - @Test - void shouldDelegateToStatusChangeInfo() { - builder.isStatusChangeCommand(command0105); + @EnumSource(mode = Mode.INCLUDE, names = { "VORGANG_ANNEHMEN", "VORGANG_VERWERFEN", "VORGANG_ZURUECKHOLEN", "VORGANG_BEARBEITEN", + "VORGANG_BESCHEIDEN", "VORGANG_ABSCHLIESSEN", "VORGANG_ZUM_LOESCHEN_MARKIEREN", "VORGANG_LOESCHEN", "VORGANG_ZURUECKSTELLEN" }) + @ParameterizedTest + void shouldReturnTrue(CommandOrder order) { + var isStatusChangeCommand = builder.isStatusChangeCommand(CommandTestFactory.createBuilder().order(order).build()); - statusChangeInfo.verify(() -> StatusChangeInfo.isStatusChangeOrder(command0105.getOrder())); + assertThat(isStatusChangeCommand).isTrue(); } + @EnumSource(mode = Mode.EXCLUDE, names = { "VORGANG_ANNEHMEN", "VORGANG_VERWERFEN", "VORGANG_ZURUECKHOLEN", "VORGANG_BEARBEITEN", + "VORGANG_BESCHEIDEN", "VORGANG_ABSCHLIESSEN", "VORGANG_ZUM_LOESCHEN_MARKIEREN", "VORGANG_LOESCHEN", "VORGANG_ZURUECKSTELLEN" }) @ParameterizedTest - @ValueSource(booleans = { false, true }) - void shouldReturnValueFromStatusChangeInfo(boolean expectedValue) { - statusChangeInfo.when(() -> StatusChangeInfo.isStatusChangeOrder(command0105.getOrder())).thenReturn(expectedValue); + void shouldReturnFalse(CommandOrder order) { + var isStatusChangeCommand = builder.isStatusChangeCommand(CommandTestFactory.createBuilder().order(order).build()); - var result = builder.isStatusChangeCommand(command0105); - - assertThat(result).isEqualTo(expectedValue); + assertThat(isStatusChangeCommand).isTrue(); } } @@ -102,21 +91,10 @@ public class StatusChangeHistoryBuilderTest { private static final String EXPECTED_STATUS_BEFORE_CHANGE = LoremIpsum.getInstance().getWords(2); private static final String EXPECTED_STATUS_AFTER_CHANGE = LoremIpsum.getInstance().getWords(2); - private MockedStatic<StatusChangeInfo> staticStatusChangeInfo; - @Mock - private StatusChangeInfo statusChangeInfo; - @BeforeEach void init() { - staticStatusChangeInfo = mockStatic(StatusChangeInfo.class); - staticStatusChangeInfo.when(() -> StatusChangeInfo.getStatusChangeInfoFor(command0106WithPrevious)).thenReturn(statusChangeInfo); - doReturn(EXPECTED_STATUS_BEFORE_CHANGE).when(builder).getStatusBeforeChange(command0106WithPrevious, statusChangeInfo); - doReturn(EXPECTED_STATUS_AFTER_CHANGE).when(builder).getStatusAfterChange(command0106WithPrevious, statusChangeInfo); - } - - @AfterEach - void cleanup() { - staticStatusChangeInfo.close(); + doReturn(EXPECTED_STATUS_BEFORE_CHANGE).when(builder).getStatusBeforeChange(command0106WithPrevious); + doReturn(EXPECTED_STATUS_AFTER_CHANGE).when(builder).getStatusAfterChange(command0106WithPrevious); } @Test @@ -148,28 +126,27 @@ public class StatusChangeHistoryBuilderTest { @Nested class TestGetStatusBeforeChange { - private final CommandWithPrevious commandWithPrevious = new CommandWithPrevious(command0105, Optional.empty()); - - @Mock - private StatusChangeInfo statusChangeInfo; + private final Command command = CommandTestFactory.create(); + private final Command previousCommand = CommandTestFactory.create(); + private final CommandWithPrevious commandWithPrevious = new CommandWithPrevious( + command, + Optional.of(new CommandWithPrevious(previousCommand, Optional.empty()))); @Test - void shouldReturnChangedFromStatus() { - var expectedStatus = LoremIpsum.getInstance().getWords(2); - when(statusChangeInfo.getChangedFromStatus(commandWithPrevious)).thenReturn(Optional.of(expectedStatus)); + void shouldReturnStatusBeforeChange() { + var status = "Status"; + doReturn(status).when(builder).getStatus(previousCommand); - var status = builder.getStatusBeforeChange(commandWithPrevious, statusChangeInfo); + var statusBeforeChange = builder.getStatusBeforeChange(commandWithPrevious); - assertThat(status).isEqualTo(expectedStatus); + assertThat(statusBeforeChange).isEqualTo(status); } @Test void shouldReturnDefaultValue() { - when(statusChangeInfo.getChangedFromStatus(commandWithPrevious)).thenReturn(Optional.empty()); - - var status = builder.getStatusBeforeChange(commandWithPrevious, statusChangeInfo); + var status = builder.getStatusBeforeChange(commandWithPrevious); - assertThat(status).isEqualTo(Vorgang.VorgangStatus.NEU.name()); + assertThat(status).isEqualTo(StatusChangeHistoryBuilder.VORGANG_STATUS_TO_NAME.get(VorgangStatus.NEU)); } } @@ -178,25 +155,18 @@ public class StatusChangeHistoryBuilderTest { private final CommandWithPrevious commandWithPrevious = new CommandWithPrevious(command0105, Optional.empty()); - @Mock - private StatusChangeInfo statusChangeInfo; - @Test void shouldReturnChangedFromStatus() { var expectedStatus = LoremIpsum.getInstance().getWords(2); - when(statusChangeInfo.getChangedToStatus(commandWithPrevious)).thenReturn(Optional.of(expectedStatus)); - var status = builder.getStatusAfterChange(commandWithPrevious, statusChangeInfo); + var status = builder.getStatusAfterChange(commandWithPrevious); assertThat(status).isEqualTo(expectedStatus); } @Test void shouldThrowExceptionIfStatusIsEmpty() { - when(statusChangeInfo.getChangedToStatus(commandWithPrevious)).thenReturn(Optional.empty()); - - assertThatExceptionOfType(TechnicalException.class).isThrownBy( - () -> builder.getStatusAfterChange(commandWithPrevious, statusChangeInfo)) + assertThatExceptionOfType(TechnicalException.class).isThrownBy(() -> builder.getStatusAfterChange(commandWithPrevious)) .withMessageStartingWith("Unknown status after change for command " + command0105.getId()); } } diff --git a/alfa-service/src/test/java/de/ozgcloud/alfa/historie/StatusChangeInfoTest.java b/alfa-service/src/test/java/de/ozgcloud/alfa/historie/StatusChangeInfoTest.java deleted file mode 100644 index 61adb7cb1868b7630dddab2bc8f2cee98e8b93f5..0000000000000000000000000000000000000000 --- a/alfa-service/src/test/java/de/ozgcloud/alfa/historie/StatusChangeInfoTest.java +++ /dev/null @@ -1,29 +0,0 @@ -package de.ozgcloud.alfa.historie; - -import static org.assertj.core.api.Assertions.*; - -import org.junit.jupiter.api.Nested; -import org.junit.jupiter.api.Test; - -import de.ozgcloud.alfa.common.command.CommandOrder; - -public class StatusChangeInfoTest { - - @Nested - class TestIsStatusChangeOrder { - - @Test - void shouldReturnTrueForOrderCorrespondingToStatusChange() { - var result = StatusChangeInfo.isStatusChangeOrder(CommandOrder.VORGANG_BESCHEIDEN); - - assertThat(result).isTrue(); - } - - @Test - void shouldReturnFalseIfOrderIsNotConnectedToStatusChange() { - var result = StatusChangeInfo.isStatusChangeOrder(CommandOrder.ASSIGN_USER); - - assertThat(result).isFalse(); - } - } -}