From 008a8f53b3359a03b6e43863118765fdb620b8b1 Mon Sep 17 00:00:00 2001 From: Michael Folz Date: Tue, 25 Feb 2025 10:12:16 +0100 Subject: [PATCH] #374 - Extend API to save and load cohort and dataselection - remove some unused methods and variables --- .../config/WebSecurityConfig.java | 2 -- .../query/QueryHandlerService.java | 4 --- .../query/QueryHandlerServiceTest.java | 36 +++++-------------- 3 files changed, 9 insertions(+), 33 deletions(-) diff --git a/src/main/java/de/numcodex/feasibility_gui_backend/config/WebSecurityConfig.java b/src/main/java/de/numcodex/feasibility_gui_backend/config/WebSecurityConfig.java index 2282095c..5a35857f 100644 --- a/src/main/java/de/numcodex/feasibility_gui_backend/config/WebSecurityConfig.java +++ b/src/main/java/de/numcodex/feasibility_gui_backend/config/WebSecurityConfig.java @@ -43,13 +43,11 @@ public class WebSecurityConfig { public static final String PATH_FEASIBILITY = "/feasibility"; public static final String PATH_ID_MATCHER = "/{id:\\d+}"; public static final String PATH_USER_ID_MATCHER = "/by-user/{id:[\\w-]+}"; - public static final String PATH_SAVED = "/saved"; public static final String PATH_CONTENT = "/content"; public static final String PATH_SUMMARY_RESULT = "/summary-result"; public static final String PATH_DETAILED_OBFUSCATED_RESULT = "/detailed-obfuscated-result"; public static final String PATH_DETAILED_RESULT = "/detailed-result"; public static final String PATH_TERMINOLOGY = "/terminology"; - public static final String PATH_TEMPLATE = "/template"; public static final String PATH_DSE = "/dse"; public static final String PATH_CODEABLE_CONCEPT = "/codeable-concept"; public static final String PATH_SWAGGER_UI = "/swagger-ui/**"; diff --git a/src/main/java/de/numcodex/feasibility_gui_backend/query/QueryHandlerService.java b/src/main/java/de/numcodex/feasibility_gui_backend/query/QueryHandlerService.java index 5939a165..e763fc45 100644 --- a/src/main/java/de/numcodex/feasibility_gui_backend/query/QueryHandlerService.java +++ b/src/main/java/de/numcodex/feasibility_gui_backend/query/QueryHandlerService.java @@ -22,7 +22,6 @@ import java.util.ArrayList; import java.util.List; -import java.util.Optional; @Service @RequiredArgsConstructor @@ -49,9 +48,6 @@ public enum ResultDetail { @NonNull private final ResultService resultService; - @NonNull - private final DataqueryRepository dataqueryRepository; - @NonNull private final StructuredQueryValidation structuredQueryValidation; diff --git a/src/test/java/de/numcodex/feasibility_gui_backend/query/QueryHandlerServiceTest.java b/src/test/java/de/numcodex/feasibility_gui_backend/query/QueryHandlerServiceTest.java index 6352f7ba..78288b9e 100644 --- a/src/test/java/de/numcodex/feasibility_gui_backend/query/QueryHandlerServiceTest.java +++ b/src/test/java/de/numcodex/feasibility_gui_backend/query/QueryHandlerServiceTest.java @@ -1,5 +1,6 @@ package de.numcodex.feasibility_gui_backend.query; +import de.numcodex.feasibility_gui_backend.query.dataquery.DataqueryHandler; import de.numcodex.feasibility_gui_backend.query.dispatch.QueryDispatchException; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; @@ -10,7 +11,6 @@ import de.numcodex.feasibility_gui_backend.query.dispatch.QueryDispatcher; import de.numcodex.feasibility_gui_backend.query.persistence.*; import de.numcodex.feasibility_gui_backend.query.result.ResultService; -import de.numcodex.feasibility_gui_backend.query.templates.QueryTemplateHandler; import de.numcodex.feasibility_gui_backend.terminology.validation.StructuredQueryValidation; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; @@ -53,7 +53,7 @@ class QueryHandlerServiceTest { private QueryDispatcher queryDispatcher; @Mock - private QueryTemplateHandler queryTemplateHandler; + private DataqueryHandler dataqueryHandler; @Mock private QueryRepository queryRepository; @@ -64,26 +64,20 @@ class QueryHandlerServiceTest { @Mock private ResultService resultService; - @Mock - private QueryTemplateRepository queryTemplateRepository; - - @Mock - private SavedQueryRepository savedQueryRepository; - @Mock private StructuredQueryValidation structuredQueryValidation; private QueryHandlerService queryHandlerService; private QueryHandlerService createQueryHandlerService() { - return new QueryHandlerService(queryDispatcher, queryTemplateHandler, queryRepository, queryContentRepository, - resultService, queryTemplateRepository, savedQueryRepository, structuredQueryValidation, jsonUtil); + return new QueryHandlerService(queryDispatcher, dataqueryHandler, queryRepository, queryContentRepository, + resultService, structuredQueryValidation, jsonUtil); } @BeforeEach void setUp() { - Mockito.reset(queryDispatcher, queryTemplateHandler, queryRepository, queryContentRepository, - resultService, queryTemplateRepository, savedQueryRepository, jsonUtil); + Mockito.reset(queryDispatcher, dataqueryHandler, queryRepository, queryContentRepository, + resultService, jsonUtil); queryHandlerService = createQueryHandlerService(); } @@ -104,7 +98,7 @@ public void testRunQuery_failsWithMonoErrorOnQueryDispatchException() throws Que @ParameterizedTest @CsvSource({"true,true", "true,false", "false,true", "false,false"}) void convertQueriesToQueryListEntries(String withSavedQuery, String skipValidation) throws JsonProcessingException { - var queryList = List.of(createQuery(Boolean.parseBoolean(withSavedQuery))); + var queryList = List.of(createQuery()); if (!Boolean.parseBoolean(skipValidation)) { doReturn( new Random().nextBoolean() @@ -129,7 +123,7 @@ void convertQueriesToQueryListEntries(String withSavedQuery, String skipValidati @Test void convertQueriesToQueryListEntries_JsonProcessingExceptionCausesInvalidQuery() throws JsonProcessingException { - var queryList = List.of(createQuery(false)); + var queryList = List.of(createQuery()); doThrow(JsonProcessingException.class).when(jsonUtil).readValue(any(String.class), any(Class.class)); List queryListEntries = queryHandlerService.convertQueriesToQueryListEntries(queryList, false); @@ -140,27 +134,15 @@ void convertQueriesToQueryListEntries_JsonProcessingExceptionCausesInvalidQuery( assertThat(queryListEntries.get(0).isValid()).isFalse(); } - private Query createQuery(boolean withSavedQuery) throws JsonProcessingException { + private Query createQuery() throws JsonProcessingException { var query = new Query(); query.setId(QUERY_ID); query.setCreatedAt(LAST_MODIFIED); query.setCreatedBy(CREATOR); query.setQueryContent(createQueryContent()); - if (withSavedQuery) { - query.setSavedQuery(createSavedQuery()); - } return query; } - private SavedQuery createSavedQuery() { - var savedQuery = new SavedQuery(); - savedQuery.setId(0L); - savedQuery.setLabel(LABEL); - savedQuery.setComment(COMMENT); - savedQuery.setResultSize(RESULT_SIZE); - return savedQuery; - } - private QueryContent createQueryContent() throws JsonProcessingException { var queryContentString = jsonUtil.writeValueAsString(createValidStructuredQuery()); var queryContent = new QueryContent(queryContentString);