Skip to content

Commit 5c6654c

Browse files
committed
Legger til test
1 parent 9f01174 commit 5c6654c

File tree

3 files changed

+27
-8
lines changed

3 files changed

+27
-8
lines changed

behandlingslager/domene/src/main/java/no/nav/ung/sak/behandlingslager/tilkjentytelse/TilkjentYtelseRepository.java

-2
Original file line numberDiff line numberDiff line change
@@ -37,8 +37,6 @@ public void lagre(long behandlingId, List<KontrollertInntektPeriode> perioder) {
3737
allePerioder.addAll(eksisterendePerioderSomSkalBeholdes);
3838
allePerioder.addAll(perioder);
3939

40-
allePerioder.forEach(entityManager::persist);
41-
4240
final var ny = KontrollertInntektPerioder.ny(behandlingId)
4341
.medPerioder(allePerioder)
4442
.build();

behandlingsprosess/src/main/java/no/nav/ung/sak/domene/behandling/steg/beregnytelse/LagTilkjentYtelse.java

+4-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,10 @@ static LocalDateTimeline<TilkjentYtelsePeriodeResultat> lagTidslinje(LocalDateTi
3131
final var førstePeriode = new LocalDateTimeline<>(godkjentTidslinje.getMinLocalDate(), godkjentTidslinje.getMinLocalDate().with(TemporalAdjusters.lastDayOfMonth()), true).intersection(godkjentTidslinje);
3232
tidslinjeSomSkalHaTilkjentYtelse = tidslinjeSomSkalHaTilkjentYtelse.crossJoin(førstePeriode);
3333
final var sistePeriode = new LocalDateTimeline<>(godkjentTidslinje.getMaxLocalDate().withDayOfMonth(1), godkjentTidslinje.getMaxLocalDate(), true).intersection(godkjentTidslinje);
34-
tidslinjeSomSkalHaTilkjentYtelse = tidslinjeSomSkalHaTilkjentYtelse.crossJoin(sistePeriode);
34+
// Legger til siste periode kun om vi har gjort kontroll av perioden før
35+
if (tidslinjeSomSkalHaTilkjentYtelse.getMaxLocalDate().plusDays(1).isEqual(sistePeriode.getMinLocalDate())) {
36+
tidslinjeSomSkalHaTilkjentYtelse = tidslinjeSomSkalHaTilkjentYtelse.crossJoin(sistePeriode);
37+
}
3538

3639

3740
return totalsatsTidslinje.combine(rapportertInntektTidslinje, (di, sats, rapportertInntekt) -> {

behandlingsprosess/src/test/java/no/nav/ung/sak/domene/behandling/steg/beregnytelse/BeregnYtelseStegTest.java

+23-5
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,11 @@
44

55
import java.math.BigDecimal;
66
import java.time.LocalDate;
7+
import java.time.temporal.TemporalAdjusters;
78
import java.util.List;
89

10+
import no.nav.ung.sak.behandlingslager.tilkjentytelse.KontrollertInntektPeriode;
11+
import no.nav.ung.sak.behandlingslager.tilkjentytelse.TilkjentYtelsePeriode;
912
import no.nav.ung.sak.ytelse.KontrollerteInntektperioderTjeneste;
1013
import org.junit.jupiter.api.BeforeEach;
1114
import org.junit.jupiter.api.Test;
@@ -44,6 +47,7 @@
4447
@ExtendWith(JpaExtension.class)
4548
@ExtendWith(CdiAwareExtension.class)
4649
class BeregnYtelseStegTest {
50+
public static final LocalDate FOM = LocalDate.now();
4751
@Inject
4852
private EntityManager entityManager;
4953
private BeregnYtelseSteg beregnYtelseSteg;
@@ -72,11 +76,10 @@ void setUp() {
7276

7377
fagsakRepository = new FagsakRepository(entityManager);
7478

75-
final var fom = LocalDate.now();
76-
lagFagsakOgBehandling(fom);
77-
lagUngdomsprogramperioder(fom);
78-
lagSatser(fom);
79-
lagUttakPerioder(fom);
79+
lagFagsakOgBehandling(FOM);
80+
lagUngdomsprogramperioder(FOM);
81+
lagSatser(FOM);
82+
lagUttakPerioder(FOM);
8083

8184

8285
lagreIAYUtenRapportertInntekt();
@@ -94,6 +97,21 @@ void skal_opprette_tilkjent_ytelse_med_sporing_og_input() {
9497
assertThat(tilkjentYtelse.get().getSporing()).isNotNull();
9598
}
9699

100+
@Test
101+
void skal_få_tilkjent_ytelse_i_periode_uten_inntekt_med_gjenomført_kontroll() {
102+
final var kontrollertInntektPeriode = KontrollertInntektPeriode.ny().medPeriode(DatoIntervallEntitet.fraOgMedTilOgMed(FOM.plusMonths(1).withDayOfMonth(1), FOM.plusMonths(1).with(TemporalAdjusters.lastDayOfMonth()))).build();
103+
tilkjentYtelseRepository.lagre(behandling.getId(), List.of(kontrollertInntektPeriode));
104+
final var behandleStegResultat = beregnYtelseSteg.utførSteg(new BehandlingskontrollKontekst(behandling.getFagsakId(), behandling.getAktørId(), behandlingRepository.taSkriveLås(behandling.getId())));
105+
final var tilkjentYtelse = tilkjentYtelseRepository.hentTilkjentYtelse(behandling.getId());
106+
assertThat(tilkjentYtelse.get().getInput()).isNotNull();
107+
assertThat(tilkjentYtelse.get().getSporing()).isNotNull();
108+
109+
final var perioder = tilkjentYtelse.get().getPerioder();
110+
assertThat(perioder.size()).isEqualTo(2);
111+
assertThat(perioder.get(0).getPeriode()).isEqualTo(DatoIntervallEntitet.fraOgMedTilOgMed(FOM, FOM.with(TemporalAdjusters.lastDayOfMonth())));
112+
assertThat(perioder.get(1).getPeriode()).isEqualTo(DatoIntervallEntitet.fraOgMedTilOgMed(FOM.plusMonths(1).withDayOfMonth(1), FOM.plusMonths(1).with(TemporalAdjusters.lastDayOfMonth())));
113+
}
114+
97115
private void lagUngdomsprogramperioder(LocalDate fom) {
98116
ungdomsprogramPeriodeRepository.lagre(behandling.getId(), List.of(new UngdomsprogramPeriode(DatoIntervallEntitet.fraOgMed(fom))));
99117
}

0 commit comments

Comments
 (0)