Skip to content

Commit

Permalink
fikset test for å sjekke om interval for endring er tomt (#196)
Browse files Browse the repository at this point in the history
  • Loading branch information
christofferlohne authored Sep 21, 2021
1 parent 40f4138 commit d6d0c0c
Show file tree
Hide file tree
Showing 4 changed files with 73 additions and 4 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,8 @@ public List<Feil> valider(Ytelse ytelse, List<Periode> gyldigeEndringsperioder)
.map(this::toFeil)
.collect(Collectors.toList());

feil.addAll(inneholderSøknadsperiodeEllerGyldigeEndringsperioder(psb, gyldigeEndringsperioder));
//TODO endre getEndringsperioder til gyldigeEndringsperioder
feil.addAll(inneholderSøknadsperiodeEllerGyldigeEndringsperioder(psb, psb.getEndringsperiode()));
feil.addAll(validerKomplettSøknad(psb));

feil.addAll(validerPerioderErLukketOgIkkeFeilRekkefølge(gyldigeEndringsperioder, "gyldigeEndringsperioder"));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@ class EndringTest {
var endringsperiode = new Periode(LocalDate.now().minusWeeks(2), LocalDate.now().plusWeeks(3));

var psb = YtelseEksempel.komplettEndringssøknad(endringsperiode);

//TODO ta bort nå endringsperiode funker
psb.medEndringsperiode(endringsperiode);
verifyIngenFeil(psb, List.of(gyldigEndringsInterval));
assertEndringsperioderIJson(psb);
}
Expand Down
66 changes: 63 additions & 3 deletions soknad/src/test/java/no/nav/k9/søknad/ytelse/psb/SøknadTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,15 @@
import static no.nav.k9.søknad.ytelse.psb.TestUtils.feilInneholder;
import static no.nav.k9.søknad.ytelse.psb.ValiderUtil.verifyHarFeil;
import static no.nav.k9.søknad.ytelse.psb.ValiderUtil.verifyIngenFeil;
import static no.nav.k9.søknad.ytelse.psb.YtelseEksempel.lagArbeidstaker;
import static no.nav.k9.søknad.ytelse.psb.YtelseEksempel.lagBeredskap;
import static no.nav.k9.søknad.ytelse.psb.YtelseEksempel.lagBosteder;
import static no.nav.k9.søknad.ytelse.psb.YtelseEksempel.lagLovbestemtFerie;
import static no.nav.k9.søknad.ytelse.psb.YtelseEksempel.lagNattevåk;
import static no.nav.k9.søknad.ytelse.psb.YtelseEksempel.lagTilsynsordning;
import static no.nav.k9.søknad.ytelse.psb.YtelseEksempel.lagUtenlandsopphold;
import static no.nav.k9.søknad.ytelse.psb.YtelseEksempel.lagUttak;
import static no.nav.k9.søknad.ytelse.psb.YtelseEksempel.leggPåKomplettEndringsøknad;

import java.time.LocalDate;
import java.util.List;
Expand All @@ -11,10 +20,15 @@

import no.nav.k9.søknad.Søknad;
import no.nav.k9.søknad.felles.Feil;
import no.nav.k9.søknad.felles.personopplysninger.Barn;
import no.nav.k9.søknad.felles.personopplysninger.Søker;
import no.nav.k9.søknad.felles.type.NorskIdentitetsnummer;
import no.nav.k9.søknad.felles.type.Periode;
import no.nav.k9.søknad.ytelse.psb.v1.DataBruktTilUtledning;
import no.nav.k9.søknad.ytelse.psb.v1.InfoFraPunsj;
import no.nav.k9.søknad.ytelse.psb.v1.Omsorg;
import no.nav.k9.søknad.ytelse.psb.v1.PleiepengerSyktBarn;
import no.nav.k9.søknad.ytelse.psb.v1.arbeidstid.Arbeidstid;

class SøknadTest {
private static final Periode TEST_PERIODE = new Periode(LocalDate.now(), LocalDate.now().plusMonths(2));
Expand Down Expand Up @@ -57,7 +71,7 @@ class SøknadTest {
var bostedperiode = new Periode(LocalDate.now().minusMonths(2), søknadsperiode.getTilOgMed());

var søknad = SøknadEksempel.komplettSøknad(søknadsperiode);
((PleiepengerSyktBarn)søknad.getYtelse()).medBosteder(YtelseEksempel.lagBosteder(List.of(bostedperiode)));
((PleiepengerSyktBarn) søknad.getYtelse()).medBosteder(lagBosteder(List.of(bostedperiode)));

verifyIngenFeil(søknad);
}
Expand All @@ -68,7 +82,7 @@ class SøknadTest {
var bostedperiode = new Periode(søknadsperiode.getTilOgMed(), LocalDate.now().minusMonths(2));

var søknad = SøknadEksempel.komplettSøknad(søknadsperiode);
((PleiepengerSyktBarn)søknad.getYtelse()).medBosteder(YtelseEksempel.lagBosteder(List.of(bostedperiode)));
((PleiepengerSyktBarn) søknad.getYtelse()).medBosteder(lagBosteder(List.of(bostedperiode)));

var feil = verifyHarFeil(søknad);
feilInneholder(feil, "bosteder[0]", "ugyldigPeriode", "Fra og med (FOM) må være før eller lik til og med (TOM).");
Expand All @@ -80,12 +94,58 @@ class SøknadTest {
var bostedperiode = new Periode(LocalDate.now().minusMonths(2), søknadsperiode.getTilOgMed());

var søknad = SøknadEksempel.komplettSøknad(søknadsperiode);
((PleiepengerSyktBarn)søknad.getYtelse()).medUtenlandsopphold(YtelseEksempel.lagUtenlandsopphold(List.of(bostedperiode)));
((PleiepengerSyktBarn) søknad.getYtelse()).medUtenlandsopphold(lagUtenlandsopphold(List.of(bostedperiode)));

var feil = verifyHarFeil(søknad);
feilInneholder(feil, "utenlandsopphold.perioder", "ugyldigPeriode");
}

@Test
public void søknadHarIkkeIntervalForEndring() {
var søknadsperiode = new Periode(LocalDate.now(), LocalDate.now().plusWeeks(2));
var endringsperiode = new Periode(LocalDate.now().minusWeeks(2), søknadsperiode.getFraOgMed().minusDays(1));
var ytese = ytelseUtenSøknadsperiode(List.of(søknadsperiode));
leggPåKomplettEndringsøknad(endringsperiode, ytese);
var søknad = SøknadEksempel.søknad(ytese);

var feil = verifyHarFeil(søknad);
feilInneholder(feil, "missingArgument");
}

//TODO legge på getSøknadsperioder test

private PleiepengerSyktBarn ytelseUtenSøknadsperiode(List<Periode> ytelsePeriode ){
var barn = new Barn(NorskIdentitetsnummer.of("22211111111"), null);
var omsorg = new Omsorg().medRelasjonTilBarnet(Omsorg.BarnRelasjon.MOR);
var søknadInfo = new DataBruktTilUtledning( true, true,
false, false, true );
var infoFraPunsj = new InfoFraPunsj()
.medSøknadenInneholderInfomasjonSomIkkeKanPunsjes(false);
var uttak = lagUttak(ytelsePeriode);
var nattevåk = lagNattevåk(ytelsePeriode);
var beredskap = lagBeredskap(ytelsePeriode);
var tilsynsordning = lagTilsynsordning(ytelsePeriode);
var lovbestemtFerie = lagLovbestemtFerie(ytelsePeriode);
var bosteder = lagBosteder(ytelsePeriode);
var utenlandsopphold = lagUtenlandsopphold(ytelsePeriode);
var arbeidstaker = lagArbeidstaker(ytelsePeriode);
var arbeidstid = new Arbeidstid().medArbeidstaker(List.of(
arbeidstaker));

return new PleiepengerSyktBarn()
.medSøknadInfo(søknadInfo)
.medInfoFraPunsj(infoFraPunsj)
.medBarn(barn)
.medBeredskap(beredskap)
.medNattevåk(nattevåk)
.medTilsynsordning(tilsynsordning)
.medArbeidstid(arbeidstid)
.medUttak(uttak)
.medUtenlandsopphold(utenlandsopphold)
.medOmsorg(omsorg)
.medLovbestemtFerie(lovbestemtFerie)
.medBosteder(bosteder);
}


}
Original file line number Diff line number Diff line change
Expand Up @@ -6,19 +6,24 @@

import java.util.List;

import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;

import no.nav.k9.søknad.felles.Feil;
import no.nav.k9.søknad.felles.type.Periode;
import no.nav.k9.søknad.ytelse.psb.v1.PleiepengerSyktBarn;
import no.nav.k9.søknad.ytelse.psb.v1.PleiepengerSyktBarnSøknadValidator;

public class UtenPeriodisertDataTest {

@Disabled("Slå på når endringsperioder funker")
@Test
public void søknad_uten_periodisert_data() {
var validator = new PleiepengerSyktBarnSøknadValidator();
var søknad = SøknadJsonEksempel.utenPeriodisertDataJson();
var endringsPerioderFraK9Sak = List.of(new Periode("2021-01-01/2021-01-01"));

((PleiepengerSyktBarn) søknad.getYtelse()).medEndringsperiode(endringsPerioderFraK9Sak);
// K9-Punsj validerer søknaden uten periodsert data med en gyldig endringsperiode hentet fra K9-Sak og får ingen valideringsfeil
verifyIngenFeil(søknad, endringsPerioderFraK9Sak);

Expand Down

0 comments on commit d6d0c0c

Please sign in to comment.