use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class PatientDetailsResolverTest method testSosDoiIntygIntegrationWithNoDBIntygAndPuUnavailable.
/**
* DOI - Integration. DB saknas, PU saknas == Ingen info
*/
@Test
public void testSosDoiIntygIntegrationWithNoDBIntygAndPuUnavailable() throws ModuleNotFoundException, IOException {
when(puService.getPerson(any(Personnummer.class))).thenReturn(buildErrorPersonSvar());
when(webCertUserService.getUser()).thenReturn(integratedWebCertUser);
when(integratedWebCertUser.getValdVardgivare()).thenReturn(new Vardgivare("vg-1", "vardgivare-1"));
List<Utkast> drafts = new ArrayList<>();
when(utkastRepository.findDraftsByPatientAndVardgivareAndStatus(anyString(), anyString(), anyList(), anySet())).thenReturn(drafts);
Patient patient = testee.resolvePatient(PNR, "doi");
assertNull(patient);
}
use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class PatientDetailsResolverTest method testSosDoiIntygIntegrationWithNoDBIntygAndPuOk.
/**
* DOI - Integration. DB saknas, PU finns == allt från PU
*/
@Test
public void testSosDoiIntygIntegrationWithNoDBIntygAndPuOk() throws ModuleNotFoundException, IOException {
when(puService.getPerson(any(Personnummer.class))).thenReturn(buildPersonSvar());
when(webCertUserService.getUser()).thenReturn(integratedWebCertUser);
when(integratedWebCertUser.getValdVardgivare()).thenReturn(new Vardgivare("vg-1", "vardgivare-1"));
List<Utkast> drafts = new ArrayList<>();
when(utkastRepository.findDraftsByPatientAndVardgivareAndStatus(anyString(), anyString(), anyList(), anySet())).thenReturn(drafts);
Patient patient = testee.resolvePatient(PNR, "doi");
assertEquals(PNR.getPersonnummer(), patient.getPersonId().getPersonnummer());
assertEquals(FNAMN, patient.getFornamn());
assertEquals(MNAMN, patient.getMellannamn());
assertEquals(LNAMN, patient.getEfternamn());
assertEquals(POST_ADDR, patient.getPostadress());
assertEquals(POST_NR, patient.getPostnummer());
assertEquals(POST_ORT, patient.getPostort());
assertEquals(PU_AVLIDEN, patient.isAvliden());
assertEquals(false, patient.isSekretessmarkering());
}
use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class PatientDetailsResolverTest method testSosDoiIntygFristaendeWithNoDBIntygAndPuUnavailable.
/**
* DOI - Fristående. DB saknas, PU saknas. Rubbet från Integration
*/
@Test
public void testSosDoiIntygFristaendeWithNoDBIntygAndPuUnavailable() throws ModuleNotFoundException, IOException {
when(puService.getPerson(any(Personnummer.class))).thenReturn(buildErrorPersonSvar());
when(webCertUserService.getUser()).thenReturn(freeWebCertUser);
when(freeWebCertUser.getValdVardenhet()).thenReturn(buildVardenhet());
List<Utkast> drafts = new ArrayList<>();
when(utkastRepository.findDraftsByPatientAndEnhetAndStatus(anyString(), anyList(), anyList(), anySet())).thenReturn(drafts);
Patient patient = testee.resolvePatient(PNR, "doi");
assertNull(patient);
}
use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class PatientDetailsResolverTest method testSosDoiIntygIntegrationWithExistingDBIntygAndPuUnavailable.
/**
* DOI - Integration. DB finns, PU saknas. Namn och adress från DB-intyget, avliden från integrationsparam.
*/
@Test
public void testSosDoiIntygIntegrationWithExistingDBIntygAndPuUnavailable() throws ModuleNotFoundException, IOException {
when(puService.getPerson(any(Personnummer.class))).thenReturn(buildErrorPersonSvar());
when(webCertUserService.getUser()).thenReturn(integratedWebCertUser);
when(integratedWebCertUser.getValdVardgivare()).thenReturn(new Vardgivare("vg-1", "vardgivare-1"));
List<Utkast> drafts = buildSosDBDrafts();
when(utkastRepository.findDraftsByPatientAndVardgivareAndStatus(anyString(), anyString(), anyList(), anySet())).thenReturn(drafts);
ModuleApi moduleApi = mock(ModuleApi.class);
when(moduleApi.getUtlatandeFromJson(anyString())).thenReturn(buildSosDoiUtlatande());
when(moduleRegistry.getModuleApi("db")).thenReturn(moduleApi);
Patient patient = testee.resolvePatient(PNR, "doi");
assertEquals(PNR.getPersonnummer(), patient.getPersonId().getPersonnummer());
assertEquals(DB_FNAMN, patient.getFornamn());
assertEquals(DB_MNAMN, patient.getMellannamn());
assertEquals(DB_ENAMN, patient.getEfternamn());
assertEquals(DB_POST_ADDR, patient.getPostadress());
assertEquals(DB_POST_NR, patient.getPostnummer());
assertEquals(DB_POST_ORT, patient.getPostort());
assertEquals(INTEGR_AVLIDEN, patient.isAvliden());
assertEquals(false, patient.isSekretessmarkering());
}
use of se.inera.intyg.webcert.persistence.utkast.model.Utkast in project webcert by sklintyg.
the class PatientDetailsResolverTest method testSosDoiIntygFristaendeWithExistingDBIntygAndPuUnavailable.
/**
* DOI - Fristående. DB finns, PU saknas. Namn och adress från DB-intyget. Avliden vet vi egentligen inte...
*/
@Test
public void testSosDoiIntygFristaendeWithExistingDBIntygAndPuUnavailable() throws ModuleNotFoundException, IOException {
when(puService.getPerson(any(Personnummer.class))).thenReturn(buildErrorPersonSvar());
when(webCertUserService.getUser()).thenReturn(freeWebCertUser);
when(freeWebCertUser.getValdVardenhet()).thenReturn(buildVardenhet());
List<Utkast> drafts = buildSosDBDrafts();
when(utkastRepository.findDraftsByPatientAndEnhetAndStatus(anyString(), anyList(), anyList(), anySet())).thenReturn(drafts);
ModuleApi moduleApi = mock(ModuleApi.class);
when(moduleApi.getUtlatandeFromJson(anyString())).thenReturn(buildSosDoiUtlatande());
when(moduleRegistry.getModuleApi("db")).thenReturn(moduleApi);
Patient patient = testee.resolvePatient(PNR, "doi");
assertEquals(PNR.getPersonnummer(), patient.getPersonId().getPersonnummer());
assertEquals(DB_FNAMN, patient.getFornamn());
assertEquals(DB_MNAMN, patient.getMellannamn());
assertEquals(DB_ENAMN, patient.getEfternamn());
assertEquals(DB_POST_ADDR, patient.getPostadress());
assertEquals(DB_POST_NR, patient.getPostnummer());
assertEquals(DB_POST_ORT, patient.getPostort());
// Vi har ingen möjlighet att känna till avliden i det här fallet, men eftersom det är ett DB/DOI så kan vi utgå
// från att patienten är avliden.
assertEquals(true, patient.isAvliden());
assertEquals(false, patient.isSekretessmarkering());
}
Aggregations