From 20c9d2ced6368f73d8f94ef58a9e0aeba24b1eb1 Mon Sep 17 00:00:00 2001 From: Felix Reichenbach <felix.reichenbach@mgm-tp.com> Date: Thu, 27 Mar 2025 10:39:44 +0100 Subject: [PATCH] OZG-7609 apply code review changes --- .../AggregationMappingRepository.java | 2 +- ...ngAggregationManagerSettingDtoService.java | 2 +- ...gationMappingEnvironmentSettingITCase.java | 2 +- .../AggregationMappingRepositoryITCase.java | 46 +++++++++++-------- ...gregationManagerSettingDtoServiceTest.java | 4 +- .../admin/setting/PropertiesTestFactory.java | 2 +- .../settings/aggregation.json.tmpl | 30 ++++++++++++ .../settings/aggregation.json.tmpl | 1 - 8 files changed, 62 insertions(+), 27 deletions(-) create mode 100644 src/test/resources/jsonTemplates/settings/aggregation.json.tmpl delete mode 100644 src/test/resources/yamlTemplates/settings/aggregation.json.tmpl diff --git a/src/main/java/de/ozgcloud/admin/reporting/AggregationMappingRepository.java b/src/main/java/de/ozgcloud/admin/reporting/AggregationMappingRepository.java index 437b5f0e..f762a367 100644 --- a/src/main/java/de/ozgcloud/admin/reporting/AggregationMappingRepository.java +++ b/src/main/java/de/ozgcloud/admin/reporting/AggregationMappingRepository.java @@ -38,5 +38,5 @@ interface AggregationMappingRepository extends MongoRepository<AggregationMappin List<AggregationMapping> findAll(); @Query("{}") - List<AggregationMapping> findAllUnsecured(); + List<AggregationMapping> findAllBypassAuth(); } diff --git a/src/main/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoService.java b/src/main/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoService.java index 72197f81..a1fcc5f3 100644 --- a/src/main/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoService.java +++ b/src/main/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoService.java @@ -40,7 +40,7 @@ class ReportingAggregationManagerSettingDtoService implements SettingDtoService @Override public ReportingAggregationManagerSettingDto getDataTransferObject() { - return mapToDto(repository.findAllUnsecured()); + return mapToDto(repository.findAllBypassAuth()); } ReportingAggregationManagerSettingDto mapToDto(List<AggregationMapping> aggregationMappings) { diff --git a/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingEnvironmentSettingITCase.java b/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingEnvironmentSettingITCase.java index 197adf56..8f7ff069 100644 --- a/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingEnvironmentSettingITCase.java +++ b/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingEnvironmentSettingITCase.java @@ -63,7 +63,7 @@ public class AggregationMappingEnvironmentSettingITCase { var result = getAggregationSettings(); assertThat(result.andReturn().getResponse().getContentAsString()) - .isEqualTo(PropertiesTestFactory.createAggregationProperties()); + .isEqualToIgnoringWhitespace(PropertiesTestFactory.createAggregationProperties()); } private ResultActions getAggregationSettings() throws Exception { diff --git a/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingRepositoryITCase.java b/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingRepositoryITCase.java index 9a0a9ca6..19356279 100644 --- a/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingRepositoryITCase.java +++ b/src/test/java/de/ozgcloud/admin/reporting/AggregationMappingRepositoryITCase.java @@ -26,6 +26,7 @@ package de.ozgcloud.admin.reporting; import static org.assertj.core.api.Assertions.*; import org.junit.jupiter.api.BeforeEach; +import org.junit.jupiter.api.Nested; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.mongodb.core.MongoOperations; @@ -50,32 +51,37 @@ class AggregationMappingRepositoryITCase { operations.dropCollection(AggregationMapping.COLLECTION_NAME); } - @Test - @WithMockUser(roles = UserRole.DATENBEAUFTRAGUNG) - void shouldLoadOnlyFieldMapping() { - operations.save(AggregationMappingTestFactory.create()); - operations.save(SettingTestFactory.create()); + @Nested + class TestFindAll { + @Test + @WithMockUser(roles = UserRole.DATENBEAUFTRAGUNG) + void shouldLoadOnlyFieldMapping() { + operations.save(AggregationMappingTestFactory.create()); + operations.save(SettingTestFactory.create()); - var result = repository.findAll(); + var result = repository.findAll(); - assertThat(result).hasSize(1); - } - - @Test - void shouldLoadWithoutRole() { - operations.save(AggregationMappingTestFactory.create()); + assertThat(result).hasSize(1); + } - var result = repository.findAllUnsecured(); + @Test + @WithMockUser + void shouldThrowExceptionOnMissingRole() { + operations.save(AggregationMappingTestFactory.create()); - assertThat(result).hasSize(1); + assertThatThrownBy(() -> repository.findAll()).isInstanceOf(AuthorizationDeniedException.class); + } } - @Test - @WithMockUser - void shouldThrowExceptionOnMissingRole() { - operations.save(AggregationMappingTestFactory.create()); + @Nested + class TestFindAllBypassAuth { + @Test + void shouldLoadWithoutRole() { + operations.save(AggregationMappingTestFactory.create()); - assertThatThrownBy(() -> repository.findAll()).isInstanceOf(AuthorizationDeniedException.class); - } + var result = repository.findAllBypassAuth(); + assertThat(result).hasSize(1); + } + } } diff --git a/src/test/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoServiceTest.java b/src/test/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoServiceTest.java index db27eeb3..aae1ec4b 100644 --- a/src/test/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoServiceTest.java +++ b/src/test/java/de/ozgcloud/admin/reporting/ReportingAggregationManagerSettingDtoServiceTest.java @@ -88,13 +88,13 @@ class ReportingAggregationManagerSettingDtoServiceTest { void shouldCallRepository() { service.getDataTransferObject(); - verify(repository).findAllUnsecured(); + verify(repository).findAllBypassAuth(); } @Test void shouldCallMapToDto() { AggregationMapping mapping = AggregationMappingTestFactory.create(); - when(repository.findAllUnsecured()).thenReturn(List.of(mapping)); + when(repository.findAllBypassAuth()).thenReturn(List.of(mapping)); service.getDataTransferObject(); diff --git a/src/test/java/de/ozgcloud/admin/setting/PropertiesTestFactory.java b/src/test/java/de/ozgcloud/admin/setting/PropertiesTestFactory.java index 3c149bd9..62df9cc7 100644 --- a/src/test/java/de/ozgcloud/admin/setting/PropertiesTestFactory.java +++ b/src/test/java/de/ozgcloud/admin/setting/PropertiesTestFactory.java @@ -73,7 +73,7 @@ public class PropertiesTestFactory { } public static String createAggregationProperties() { - return TestUtils.loadTextFile("yamlTemplates/settings/aggregation.json.tmpl", + return TestUtils.loadTextFile("jsonTemplates/settings/aggregation.json.tmpl", FORM_ENGINE_NAME_1, FORM_ID_1, SOURCE_PATH_1_1, diff --git a/src/test/resources/jsonTemplates/settings/aggregation.json.tmpl b/src/test/resources/jsonTemplates/settings/aggregation.json.tmpl new file mode 100644 index 00000000..ce56cc5a --- /dev/null +++ b/src/test/resources/jsonTemplates/settings/aggregation.json.tmpl @@ -0,0 +1,30 @@ +{ + "name": "OzgCloud_AggregationManager", + "profiles": [ + "default" + ], + "label": null, + "version": null, + "state": null, + "propertySources": [ + { + "name": "", + "source": { + "ozgcloud.aggregation.aggregationMappings[0].formIdentifier.formEngineName": "%s", + "ozgcloud.aggregation.aggregationMappings[0].formIdentifier.formId": "%s", + "ozgcloud.aggregation.aggregationMappings[0].fieldMappings[0].sourcePath": "%s", + "ozgcloud.aggregation.aggregationMappings[0].fieldMappings[0].targetPath": "%s", + "ozgcloud.aggregation.aggregationMappings[0].fieldMappings[1].sourcePath": "%s", + "ozgcloud.aggregation.aggregationMappings[0].fieldMappings[1].targetPath": "%s", + "ozgcloud.aggregation.aggregationMappings[0].fieldMappings[2].sourcePath": "%s", + "ozgcloud.aggregation.aggregationMappings[0].fieldMappings[2].targetPath": "%s", + "ozgcloud.aggregation.aggregationMappings[1].formIdentifier.formEngineName": "%s", + "ozgcloud.aggregation.aggregationMappings[1].formIdentifier.formId": "%s", + "ozgcloud.aggregation.aggregationMappings[1].fieldMappings[0].sourcePath": "%s", + "ozgcloud.aggregation.aggregationMappings[1].fieldMappings[0].targetPath": "%s", + "ozgcloud.aggregation.aggregationMappings[1].fieldMappings[1].sourcePath": "%s", + "ozgcloud.aggregation.aggregationMappings[1].fieldMappings[1].targetPath": "%s" + } + } + ] +} \ No newline at end of file diff --git a/src/test/resources/yamlTemplates/settings/aggregation.json.tmpl b/src/test/resources/yamlTemplates/settings/aggregation.json.tmpl deleted file mode 100644 index b4db7c45..00000000 --- a/src/test/resources/yamlTemplates/settings/aggregation.json.tmpl +++ /dev/null @@ -1 +0,0 @@ -{"name":"OzgCloud_AggregationManager","profiles":["default"],"label":null,"version":null,"state":null,"propertySources":[{"name":"","source":{"ozgcloud.aggregation.aggregationMappings[0].formIdentifier.formEngineName":"%s","ozgcloud.aggregation.aggregationMappings[0].formIdentifier.formId":"%s","ozgcloud.aggregation.aggregationMappings[0].fieldMappings[0].sourcePath":"%s","ozgcloud.aggregation.aggregationMappings[0].fieldMappings[0].targetPath":"%s","ozgcloud.aggregation.aggregationMappings[0].fieldMappings[1].sourcePath":"%s","ozgcloud.aggregation.aggregationMappings[0].fieldMappings[1].targetPath":"%s","ozgcloud.aggregation.aggregationMappings[0].fieldMappings[2].sourcePath":"%s","ozgcloud.aggregation.aggregationMappings[0].fieldMappings[2].targetPath":"%s","ozgcloud.aggregation.aggregationMappings[1].formIdentifier.formEngineName":"%s","ozgcloud.aggregation.aggregationMappings[1].formIdentifier.formId":"%s","ozgcloud.aggregation.aggregationMappings[1].fieldMappings[0].sourcePath":"%s","ozgcloud.aggregation.aggregationMappings[1].fieldMappings[0].targetPath":"%s","ozgcloud.aggregation.aggregationMappings[1].fieldMappings[1].sourcePath":"%s","ozgcloud.aggregation.aggregationMappings[1].fieldMappings[1].targetPath":"%s"}}]} \ No newline at end of file -- GitLab