From 828d7ac568a7db2d2b842967cba8fc22c1712378 Mon Sep 17 00:00:00 2001 From: Christoph Date: Wed, 22 Apr 2020 14:27:04 +0200 Subject: [PATCH] tests --- .../api/GroupRequestWrapper.java | 2 ++ .../controller/APIController.java | 2 ++ .../controller/APIControllerTest.java | 32 ++++++++++++++++++- 3 files changed, 35 insertions(+), 1 deletion(-) diff --git a/src/main/java/mops/gruppen2/infrastructure/api/GroupRequestWrapper.java b/src/main/java/mops/gruppen2/infrastructure/api/GroupRequestWrapper.java index 93a0c20..d2d059d 100644 --- a/src/main/java/mops/gruppen2/infrastructure/api/GroupRequestWrapper.java +++ b/src/main/java/mops/gruppen2/infrastructure/api/GroupRequestWrapper.java @@ -1,12 +1,14 @@ package mops.gruppen2.infrastructure.api; import lombok.AllArgsConstructor; +import lombok.Getter; import java.util.List; /** * Kombiniert den Status und die Gruppenliste zur ausgabe über die API. */ +@Getter @AllArgsConstructor public class GroupRequestWrapper { diff --git a/src/main/java/mops/gruppen2/infrastructure/controller/APIController.java b/src/main/java/mops/gruppen2/infrastructure/controller/APIController.java index 3e3f9b9..1c79bd2 100644 --- a/src/main/java/mops/gruppen2/infrastructure/controller/APIController.java +++ b/src/main/java/mops/gruppen2/infrastructure/controller/APIController.java @@ -41,6 +41,8 @@ public class APIController { * * @param eventId Die Event-ID, welche der Anfragesteller beim letzten Aufruf erhalten hat */ + //TODO: sollte den cache benutzen, am besten wäre eine groupversion, welche der eventid + //TODO: entspricht, dann kann man leicht alle geänderten gruppen finden @GetMapping("/update/{id}") @Secured("ROLE_api_user") @ApiOperation("Gibt veränderte Gruppen zurück") diff --git a/src/test/java/mops/gruppen2/infrastructure/controller/APIControllerTest.java b/src/test/java/mops/gruppen2/infrastructure/controller/APIControllerTest.java index 312376a..e4cbf27 100644 --- a/src/test/java/mops/gruppen2/infrastructure/controller/APIControllerTest.java +++ b/src/test/java/mops/gruppen2/infrastructure/controller/APIControllerTest.java @@ -1,22 +1,52 @@ package mops.gruppen2.infrastructure.controller; +import mops.gruppen2.domain.service.EventStoreService; +import mops.gruppen2.infrastructure.GroupCache; import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Disabled; import org.junit.jupiter.api.Test; +import org.springframework.security.test.context.support.WithMockUser; + +import static org.assertj.core.api.Assertions.assertThat; +import static org.mockito.Mockito.mock; +import static org.mockito.Mockito.when; class APIControllerTest { + private EventStoreService store; + private GroupCache cache; + private APIController controller; + @BeforeEach void setUp() { + store = mock(EventStoreService.class); + cache = new GroupCache(store); + controller = new APIController(cache, store); } + @WithMockUser("ROLE_api_user") @Test - void getApiUpdate() { + void getApiUpdate_noEvents() { + when(store.findMaxEventId()).thenReturn(0L); + + assertThat(controller.getApiUpdate(0).getVersion()).isZero(); + assertThat(controller.getApiUpdate(0).getGroups()).isEmpty(); } + @Disabled + @WithMockUser("ROLE_api_user") + @Test + void getApiUpdate_noUpdate() { + } + + @Disabled + @WithMockUser("ROLE_api_user") @Test void getApiUserGroups() { } + @Disabled + @WithMockUser("ROLE_api_user") @Test void getApiGroup() { }