Skip to content

Commit

Permalink
Bug causing empty sak list if hjelpestønad does not exist
Browse files Browse the repository at this point in the history
  • Loading branch information
jacob-meidell committed Sep 28, 2023
1 parent d3b5ac6 commit 66658df
Show file tree
Hide file tree
Showing 2 changed files with 35 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -55,14 +55,15 @@ class BarnetrygdmottakerService(
ident = barnetrygdmottaker.ident,
ar = barnetrygdmottaker.år,
)
val barnetrygdOgHjelpestønad = barnetrygd.barnetrygdsaker.flatMap { sak ->
val barnetrygdOgHjelpestønad = barnetrygd.barnetrygdsaker.map { sak ->
val minMaxDatePerOmsorgsmottaker =
sak.hentOmsorgsmottakere().associateWith { mottaker ->
sak.vedtaksperioder.filter { it.omsorgsmottaker == mottaker }
.let { vedtaksperioder -> vedtaksperioder.minOf { it.fom } to vedtaksperioder.maxOf { it.tom } }
}
hjelpestønadService.hentForOmsorgsmottakere(minMaxDatePerOmsorgsmottaker)
.map { sak.leggTilVedtaksperiode(it) }
val hjelpestønad =
hjelpestønadService.hentForOmsorgsmottakere(minMaxDatePerOmsorgsmottaker)
sak.copy(vedtaksperioder = sak.vedtaksperioder + hjelpestønad)
}
kafkaProducer.send(
createKafkaMessage(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -277,6 +277,37 @@ class BarnetrygdmottakerServiceTest : SpringContextTest.NoKafka() {
}
}

@Test
fun `omsorgsgrunnlag sender bare barnetrygd dersom hjelpestønad ikke eksisterer`() {
val captor = argumentCaptor<ProducerRecord<String, String>> { }
given(kafkaTemplate.send(captor.capture())).willAnswer {
CompletableFuture.completedFuture(it.arguments[0])
}
given(clock.instant()).willReturn(Instant.now())

val innlesing = lagreFullførtInnlesing()

barnetrygdmottakerRepository.insert(
Barnetrygdmottaker.Transient(
ident = "12345678910",
correlationId = CorrelationId.generate(),
innlesingId = innlesing.id
)
)

wiremock.`hent-barnetrygd ok`()
wiremock.`hent hjelpestønad ok - ingen hjelpestønad`()

barnetrygdService.process()

deserialize<OmsorgsgrunnlagMelding>(captor.allValues.single().value()).also { omsorgsgrunnlagMelding ->
omsorgsgrunnlagMelding.saker.single().also { sak ->
assertEquals(1, sak.vedtaksperioder.count())
assertEquals(1, sak.vedtaksperioder.count { it.omsorgstype == Omsorgstype.FULL_BARNETRYGD })
}
}
}

private fun lagreFullførtInnlesing(): BarnetrygdInnlesing {
val bestilt = innlesingRepository.bestilt(
BarnetrygdInnlesing.Bestilt(
Expand Down

0 comments on commit 66658df

Please sign in to comment.