4
4
5
5
import java .math .BigDecimal ;
6
6
import java .time .LocalDate ;
7
+ import java .time .temporal .TemporalAdjusters ;
7
8
import java .util .List ;
8
9
10
+ import no .nav .ung .sak .behandlingslager .tilkjentytelse .KontrollertInntektPeriode ;
11
+ import no .nav .ung .sak .behandlingslager .tilkjentytelse .TilkjentYtelsePeriode ;
9
12
import no .nav .ung .sak .ytelse .KontrollerteInntektperioderTjeneste ;
10
13
import org .junit .jupiter .api .BeforeEach ;
11
14
import org .junit .jupiter .api .Test ;
44
47
@ ExtendWith (JpaExtension .class )
45
48
@ ExtendWith (CdiAwareExtension .class )
46
49
class BeregnYtelseStegTest {
50
+ public static final LocalDate FOM = LocalDate .now ();
47
51
@ Inject
48
52
private EntityManager entityManager ;
49
53
private BeregnYtelseSteg beregnYtelseSteg ;
@@ -72,11 +76,10 @@ void setUp() {
72
76
73
77
fagsakRepository = new FagsakRepository (entityManager );
74
78
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 );
80
83
81
84
82
85
lagreIAYUtenRapportertInntekt ();
@@ -94,6 +97,21 @@ void skal_opprette_tilkjent_ytelse_med_sporing_og_input() {
94
97
assertThat (tilkjentYtelse .get ().getSporing ()).isNotNull ();
95
98
}
96
99
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
+
97
115
private void lagUngdomsprogramperioder (LocalDate fom ) {
98
116
ungdomsprogramPeriodeRepository .lagre (behandling .getId (), List .of (new UngdomsprogramPeriode (DatoIntervallEntitet .fraOgMed (fom ))));
99
117
}
0 commit comments