use of se.inera.intyg.webcert.persistence.arende.model.Arende in project webcert by sklintyg.
the class ArendeConverterTest method testConvertArende.
@Test
public void testConvertArende() {
final ArendeAmne amneskod = ArendeAmne.AVSTMN;
final String intygId = "intygId";
final String kontaktInfo = "kontaktInfo";
final String skickatAv = PARTKOD_FKASSA;
final String frageId = "frageId";
final Integer instans = 1;
final String kompletteringsText = "kompletteringsText";
final String meddelande = "meddelande";
final String meddelandeId = "meddelandeId";
final String paminnelseMeddelandeId = "paminnelseMeddelandeId";
final String personId = "personId";
final String referensId = "referensId";
final String rubrik = "rubrik";
final LocalDate sistaDatum = LocalDate.now();
final LocalDateTime skickatTidpunkt = LocalDateTime.now();
final String svarPa = "svarPa";
final String svarReferensId = "svarReferensId";
SendMessageToCareType input = createSendMessageToCare(amneskod.name(), intygId, kontaktInfo, skickatAv, frageId, instans, kompletteringsText, meddelande, meddelandeId, paminnelseMeddelandeId, personId, referensId, rubrik, sistaDatum, skickatTidpunkt, svarPa, svarReferensId);
Arende res = ArendeConverter.convert(input);
assertEquals(amneskod, res.getAmne());
assertEquals(intygId, res.getIntygsId());
assertEquals(kontaktInfo, res.getKontaktInfo().get(0));
assertEquals(FRAGESTALLARKOD_FORSAKRINGSKASSA, res.getSkickatAv());
assertEquals(frageId, res.getKomplettering().get(0).getFrageId());
assertEquals(instans, res.getKomplettering().get(0).getInstans());
assertEquals(kompletteringsText, res.getKomplettering().get(0).getText());
assertEquals(meddelande, res.getMeddelande());
assertEquals(meddelandeId, res.getMeddelandeId());
assertEquals(paminnelseMeddelandeId, res.getPaminnelseMeddelandeId());
assertEquals(personId, res.getPatientPersonId());
assertEquals(referensId, res.getReferensId());
assertEquals(rubrik, res.getRubrik());
assertEquals(sistaDatum, res.getSistaDatumForSvar());
assertEquals(skickatTidpunkt, res.getSkickatTidpunkt());
assertEquals(svarPa, res.getSvarPaId());
assertEquals(svarReferensId, res.getSvarPaReferens());
}
use of se.inera.intyg.webcert.persistence.arende.model.Arende in project webcert by sklintyg.
the class ArendeConverterTest method testDecorateArendeFromUtkastHsaNotGivingName.
@Test
public void testDecorateArendeFromUtkastHsaNotGivingName() {
Utkast utkast = new Utkast();
utkast.setIntygsTyp("intygstyp");
utkast.setEnhetsId("enhetsid");
utkast.setSignatur(mock(Signatur.class));
when(utkast.getSignatur().getSigneradAv()).thenReturn("signeratav");
when(hsaEmployeeService.getEmployee(anyString(), eq(null))).thenReturn(createHsaResponse(null, null));
try {
ArendeConverter.decorateArendeFromUtkast(new Arende(), utkast, LocalDateTime.now(), hsaEmployeeService);
fail("Should throw");
} catch (WebCertServiceException e) {
assertEquals(WebCertServiceErrorCodeEnum.DATA_NOT_FOUND, e.getErrorCode());
}
}
use of se.inera.intyg.webcert.persistence.arende.model.Arende in project webcert by sklintyg.
the class ArendeServiceTest method testFilterArendeWithNoEnhetsIdAsParam.
@Test
public void testFilterArendeWithNoEnhetsIdAsParam() {
when(webcertUserService.getUser()).thenReturn(createUser());
List<Arende> queryResults = new ArrayList<>();
queryResults.add(buildArende(UUID.randomUUID().toString(), LocalDateTime.now(), null));
queryResults.add(buildArende(UUID.randomUUID().toString(), LocalDateTime.now().plusDays(1), null));
when(arendeRepository.filterArende(any(Filter.class))).thenReturn(queryResults);
QueryFragaSvarResponse fsResponse = new QueryFragaSvarResponse();
fsResponse.setResults(new ArrayList<>());
fsResponse.setTotalCount(0);
when(fragaSvarService.filterFragaSvar(any(Filter.class))).thenReturn(fsResponse);
QueryFragaSvarParameter params = new QueryFragaSvarParameter();
QueryFragaSvarResponse response = service.filterArende(params);
verify(webcertUserService).getUser();
verify(arendeRepository).filterArende(any(Filter.class));
// verify(arendeRepository).filterArendeCount(any(Filter.class));
verify(fragaSvarService).filterFragaSvar(any(Filter.class));
assertEquals(2, response.getResults().size());
// assertEquals(3, response.getTotalCount());
}
use of se.inera.intyg.webcert.persistence.arende.model.Arende in project webcert by sklintyg.
the class ArendeServiceTest method testProcessIncomingMessageUpdatingRelatedPaminnelse.
@Test
public void testProcessIncomingMessageUpdatingRelatedPaminnelse() throws WebCertServiceException {
final String paminnelseid = "paminnelseid";
Arende paminnelse = new Arende();
Arende svararende = new Arende();
svararende.setIntygsId(INTYG_ID);
svararende.setPaminnelseMeddelandeId(paminnelseid);
Utkast utkast = buildUtkast();
utkast.setIntygsTyp("intygstyp");
utkast.setEnhetsId(ENHET_ID);
when(utkastRepository.findOne(eq(INTYG_ID))).thenReturn(utkast);
when(arendeRepository.findOneByMeddelandeId(eq(paminnelseid))).thenReturn(paminnelse);
Arende res = service.processIncomingMessage(svararende);
assertEquals(FIXED_TIME_INSTANT, res.getSenasteHandelse().toInstant(ZoneId.systemDefault().getRules().getOffset(FIXED_TIME_INSTANT)));
verify(arendeRepository).findOneByMeddelandeId(eq(paminnelseid));
ArgumentCaptor<Arende> arendeCaptor = ArgumentCaptor.forClass(Arende.class);
verify(arendeRepository, times(2)).save(arendeCaptor.capture());
Arende updatedQuestion = arendeCaptor.getAllValues().get(1);
assertEquals(FIXED_TIME_INSTANT, updatedQuestion.getSenasteHandelse().toInstant(ZoneId.systemDefault().getRules().getOffset(FIXED_TIME_INSTANT)));
verify(notificationService, only()).sendNotificationForQuestionReceived(any(Arende.class));
verifyZeroInteractions(arendeDraftService);
}
use of se.inera.intyg.webcert.persistence.arende.model.Arende in project webcert by sklintyg.
the class ArendeServiceTest method testProcessIncomingMessageUpdatingRelatedSvar.
@Test
public void testProcessIncomingMessageUpdatingRelatedSvar() throws WebCertServiceException {
final String frageid = "frageid";
Arende fragearende = new Arende();
Arende svararende = new Arende();
svararende.setIntygsId(INTYG_ID);
svararende.setSvarPaId(frageid);
Utkast utkast = buildUtkast();
utkast.setIntygsTyp("intygstyp");
utkast.setEnhetsId(ENHET_ID);
when(utkastRepository.findOne(eq(INTYG_ID))).thenReturn(utkast);
when(arendeRepository.findOneByMeddelandeId(eq(frageid))).thenReturn(fragearende);
Arende res = service.processIncomingMessage(svararende);
assertEquals(Status.ANSWERED, res.getStatus());
assertEquals(FIXED_TIME_INSTANT, res.getSenasteHandelse().toInstant(ZoneId.systemDefault().getRules().getOffset(FIXED_TIME_INSTANT)));
verify(arendeRepository).findOneByMeddelandeId(eq(frageid));
ArgumentCaptor<Arende> arendeCaptor = ArgumentCaptor.forClass(Arende.class);
verify(arendeRepository, times(2)).save(arendeCaptor.capture());
Arende updatedQuestion = arendeCaptor.getAllValues().get(1);
assertEquals(FIXED_TIME_INSTANT, updatedQuestion.getSenasteHandelse().toInstant(ZoneId.systemDefault().getRules().getOffset(FIXED_TIME_INSTANT)));
assertEquals(Status.ANSWERED, updatedQuestion.getStatus());
verify(notificationService, only()).sendNotificationForAnswerRecieved(any(Arende.class));
verifyZeroInteractions(arendeDraftService);
}
Aggregations