From b1f281fa59fb595dad5f5928b997598559c0b8c1 Mon Sep 17 00:00:00 2001 From: Paul-Christian Volkmer Date: Tue, 27 Jun 2023 11:31:08 +0200 Subject: Issue #4: Verschiebe Backend-Methode in EinzelempfehlungAnalyzer --- .../analyzer/EinzelempfehlungAnalyzerTest.java | 36 +++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) (limited to 'src/test/java/DNPM/analyzer/EinzelempfehlungAnalyzerTest.java') diff --git a/src/test/java/DNPM/analyzer/EinzelempfehlungAnalyzerTest.java b/src/test/java/DNPM/analyzer/EinzelempfehlungAnalyzerTest.java index f72159d..8812442 100644 --- a/src/test/java/DNPM/analyzer/EinzelempfehlungAnalyzerTest.java +++ b/src/test/java/DNPM/analyzer/EinzelempfehlungAnalyzerTest.java @@ -2,17 +2,21 @@ package DNPM.analyzer; import DNPM.security.PermissionType; import DNPM.security.PersonPoolBasedPermissionEvaluator; +import DNPM.services.StudienService; import DNPM.services.molekulargenetik.MolekulargenetikFormService; import de.itc.onkostar.api.IOnkostarApi; import de.itc.onkostar.api.Procedure; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import org.junit.jupiter.api.extension.ExtendWith; +import org.mockito.ArgumentCaptor; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; +import java.util.HashMap; import java.util.Map; +import static org.assertj.core.api.Assertions.assertThat; import static org.mockito.ArgumentMatchers.any; import static org.mockito.Mockito.*; @@ -21,6 +25,8 @@ class EinzelempfehlungAnalyzerTest { private IOnkostarApi onkostarApi; + private StudienService studienService; + private MolekulargenetikFormService molekulargenetikFormService; private PersonPoolBasedPermissionEvaluator permissionEvaluator; @@ -30,13 +36,15 @@ class EinzelempfehlungAnalyzerTest { @BeforeEach void setup( @Mock IOnkostarApi onkostarApi, + @Mock StudienService studienService, @Mock MolekulargenetikFormService molekulargenetikFormService, @Mock PersonPoolBasedPermissionEvaluator permissionEvaluator ) { this.onkostarApi = onkostarApi; + this.studienService = studienService; this.molekulargenetikFormService = molekulargenetikFormService; this.permissionEvaluator = permissionEvaluator; - this.analyzer = new EinzelempfehlungAnalyzer(onkostarApi, molekulargenetikFormService, permissionEvaluator); + this.analyzer = new EinzelempfehlungAnalyzer(onkostarApi, studienService, molekulargenetikFormService, permissionEvaluator); } @Test @@ -49,4 +57,30 @@ class EinzelempfehlungAnalyzerTest { verify(molekulargenetikFormService, times(1)).getVariants(any(Procedure.class)); } + @Test + void shouldRequestAllStudienForEmptyQueryString() { + var input = Map.of("q", (Object) " "); + this.analyzer.getStudien(input); + + verify(studienService, times(1)).findAll(); + } + + @Test + void shouldRequestAllStudienForEmptyInputMap() { + var input = new HashMap(); + this.analyzer.getStudien(input); + + verify(studienService, times(1)).findAll(); + } + + @Test + void shouldRequestFilteredStudien() { + var input = Map.of("q", (Object) "NCT-123"); + this.analyzer.getStudien(input); + + var captor = ArgumentCaptor.forClass(String.class); + verify(studienService, times(1)).findByQuery(captor.capture()); + assertThat(captor.getValue()).isEqualTo("NCT-123"); + } + } -- cgit v1.2.3