Skip to content

Commit 844721e

Browse files
Mistmatch i validering mellom Punsj & K9-Sak (#190)
* Testeksempel fra testmiljø * endret litt på tester. Lagt inn new line i json * fikset finnInnehold feil * fikset feil i test Co-authored-by: christofferlohne <[email protected]>
1 parent f6b3608 commit 844721e

File tree

5 files changed

+113
-5
lines changed

5 files changed

+113
-5
lines changed

soknad/src/test/java/no/nav/k9/søknad/ytelse/psb/SøknadJsonEksempel.java

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,4 +32,7 @@ private static String jsonFromFile(String filename) {
3232
return Søknad.SerDes.deserialize(jsonFromFile("5.1.33/minimum-søknad.json"));
3333
}
3434

35+
public static Søknad utenPeriodisertDataJson() {
36+
return Søknad.SerDes.deserialize(jsonFromFile("uten-periodisert-data.json"));
37+
}
3538
}
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
package no.nav.k9.søknad.ytelse.psb;
2+
3+
import static no.nav.k9.søknad.ytelse.psb.TestUtils.feilInneholder;
4+
import static no.nav.k9.søknad.ytelse.psb.ValiderUtil.verifyHarFeil;
5+
import static no.nav.k9.søknad.ytelse.psb.ValiderUtil.verifyIngenFeil;
6+
7+
import java.util.List;
8+
9+
import org.junit.jupiter.api.Test;
10+
11+
import no.nav.k9.søknad.felles.Feil;
12+
import no.nav.k9.søknad.felles.type.Periode;
13+
import no.nav.k9.søknad.ytelse.psb.v1.PleiepengerSyktBarnSøknadValidator;
14+
15+
public class UtenPeriodisertDataTest {
16+
17+
@Test
18+
public void søknad_uten_periodisert_data() {
19+
var validator = new PleiepengerSyktBarnSøknadValidator();
20+
var søknad = SøknadJsonEksempel.utenPeriodisertDataJson();
21+
var endringsPerioderFraK9Sak = List.of(new Periode("2021-01-01/2021-01-01"));
22+
// K9-Punsj validerer søknaden uten periodsert data med en gyldig endringsperiode hentet fra K9-Sak og får ingen valideringsfeil
23+
verifyIngenFeil(søknad, endringsPerioderFraK9Sak);
24+
25+
// K9-Sak på sin side validerer uten å bruke gyldig endringsperiode
26+
var feil = verifyHarFeil(søknad);
27+
feilInneholder(feil, new Feil("søknadsperiode/gyldigeEndringsperioder", "missingArgument", "Mangler søknadsperiode eller gyldigeEndringsperioder."));
28+
}
29+
}

soknad/src/test/java/no/nav/k9/søknad/ytelse/psb/ValiderUtil.java

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,10 @@ class ValiderUtil {
1919

2020

2121
public static List<Feil> verifyHarFeil(Søknad søknad) {
22-
final List<Feil> feil = valider(søknad);
22+
return verifyHarFeil(søknad, List.of());
23+
}
24+
public static List<Feil> verifyHarFeil(Søknad søknad, List<Periode> gyldigEndringsInterval) {
25+
final List<Feil> feil = valider(søknad, gyldigEndringsInterval);
2326
assertThat(feil).isNotEmpty();
2427
return feil;
2528
}
@@ -35,7 +38,11 @@ public static List<Feil> verifyHarFeil(PleiepengerSyktBarn ytelse, List<Periode>
3538
}
3639

3740
public static List<Feil> verifyIngenFeil(Søknad søknad) {
38-
final List<Feil> feil = valider(søknad);
41+
return verifyIngenFeil(søknad, List.of());
42+
}
43+
44+
public static List<Feil> verifyIngenFeil(Søknad søknad, List<Periode> gyldigEndringsInterval) {
45+
final List<Feil> feil = valider(søknad, gyldigEndringsInterval);
3946
assertThat(feil).isEmpty();
4047
return feil;
4148
}
@@ -50,9 +57,9 @@ public static List<Feil> verifyIngenFeil(PleiepengerSyktBarn ytelse, List<Period
5057
return feil;
5158
}
5259

53-
public static List<Feil> valider(Søknad søknad) {
60+
public static List<Feil> valider(Søknad søknad, List<Periode> gyldigEndringsInterval) {
5461
try {
55-
return validatorSøknad.valider(søknad);
62+
return validatorSøknad.valider(søknad, gyldigEndringsInterval);
5663
} catch (ValideringsFeil ex) {
5764
return ex.getFeil();
5865
}

soknad/src/test/resources/ytelse/psb/minimum-søknad.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,4 +27,4 @@
2727
"perioderSomSkalSlettes": {}
2828
}
2929
}
30-
}
30+
}
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
{
2+
"språk": "nb",
3+
"søker": {
4+
"norskIdentitetsnummer": "11111111111"
5+
},
6+
"ytelse": {
7+
"barn": {
8+
"fødselsdato": null,
9+
"norskIdentitetsnummer": "22222222222"
10+
},
11+
"type": "PLEIEPENGER_SYKT_BARN",
12+
"uttak": {
13+
"perioder": {},
14+
"perioderSomSkalSlettes": {}
15+
},
16+
"omsorg": {
17+
"relasjonTilBarnet": null,
18+
"beskrivelseAvOmsorgsrollen": null
19+
},
20+
"bosteder": {
21+
"perioder": {},
22+
"perioderSomSkalSlettes": {}
23+
},
24+
"beredskap": {
25+
"perioder": {},
26+
"perioderSomSkalSlettes": {}
27+
},
28+
"nattevåk": {
29+
"perioder": {},
30+
"perioderSomSkalSlettes": {}
31+
},
32+
"arbeidstid": {
33+
"arbeidstakerList": [],
34+
"frilanserArbeidstidInfo": null,
35+
"selvstendigNæringsdrivendeArbeidstidInfo": null
36+
},
37+
"infoFraPunsj": null,
38+
"tilsynsordning": {
39+
"perioder": {},
40+
"perioderSomSkalSlettes": {}
41+
},
42+
"endringsperiode": [],
43+
"lovbestemtFerie": {
44+
"perioder": {}
45+
},
46+
"søknadsperiode": [],
47+
"utenlandsopphold": {
48+
"perioder": {},
49+
"perioderSomSkalSlettes": {}
50+
},
51+
"trekkKravPerioder": [],
52+
"opptjeningAktivitet": {},
53+
"dataBruktTilUtledning": {
54+
"harMedsøker": null,
55+
"samtidigHjemme": null,
56+
"harBekreftetOpplysninger": null,
57+
"bekrefterPeriodeOver8Uker": null,
58+
"harForståttRettigheterOgPlikter": null
59+
}
60+
},
61+
"versjon": "1.0.0",
62+
"søknadId": "6b3ad728-c925-4489-bbb3-8c424a761f1d",
63+
"mottattDato": "2021-09-09T08:10:00.000Z",
64+
"journalposter": [{
65+
"journalpostId": "510000000",
66+
"inneholderMedisinskeOpplysninger": true,
67+
"inneholderInfomasjonSomIkkeKanPunsjes": false
68+
}]
69+
}

0 commit comments

Comments
 (0)