From 4e80a375065e1268483032f74b7d3c0e0ddd7e45 Mon Sep 17 00:00:00 2001 From: amiraliw Date: Wed, 18 Dec 2024 10:32:09 +0100 Subject: [PATCH 1/9] =?UTF-8?q?la=20til=20logikk=20i=20Vilk=C3=A5rsvurderi?= =?UTF-8?q?ng=20sidene?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../FeilutbetalingFaktaPeriodeSkjema.tsx | 2 ++ ...etalingVilk\303\245rsvurderingContext.tsx" | 3 +++ .../AktsomhetsvurderingSkjema.tsx" | 16 ++++++++++--- .../GradForsettSkjema.tsx" | 4 +++- .../GradUaktsomhetSkjema.tsx" | 15 +++++++++--- .../ReduksjonAvBel\303\270pSkjema.tsx" | 8 ++++++- .../S\303\246rligeGrunnerSkjema.tsx" | 12 ++++++++-- .../TilleggesRenterRadioGroup.tsx" | 3 +++ .../GodTroSkjema.tsx" | 5 +++- .../Vilk\303\245rsvurderingPeriodeSkjema.tsx" | 23 +++++++++++++++++-- .../Vilk\303\245rsvurderingPerioder.tsx" | 4 +++- 11 files changed, 81 insertions(+), 14 deletions(-) diff --git a/src/frontend/komponenter/Fagsak/Fakta/FaktaPeriode/FeilutbetalingFaktaPeriodeSkjema.tsx b/src/frontend/komponenter/Fagsak/Fakta/FaktaPeriode/FeilutbetalingFaktaPeriodeSkjema.tsx index d36b1b23..36f650b6 100644 --- a/src/frontend/komponenter/Fagsak/Fakta/FaktaPeriode/FeilutbetalingFaktaPeriodeSkjema.tsx +++ b/src/frontend/komponenter/Fagsak/Fakta/FaktaPeriode/FeilutbetalingFaktaPeriodeSkjema.tsx @@ -55,12 +55,14 @@ const FeilutbetalingFaktaPeriode: React.FC = ({ settHendelseUnderTyper(hentHendelseUndertyper(årsak)); settIkkePersistertKomponent('fakta'); oppdaterÅrsakPåPeriode(periode, årsak); + onChangePerioder(); }; const onChangeUnderÅrsak = (e: React.ChangeEvent) => { const underÅrsak = HendelseUndertype[e.target.value as keyof typeof HendelseUndertype]; settIkkePersistertKomponent('fakta'); oppdaterUnderårsakPåPeriode(periode, underÅrsak); + onChangePerioder(); }; return ( diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/FeilutbetalingVilk\303\245rsvurderingContext.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/FeilutbetalingVilk\303\245rsvurderingContext.tsx" index eaecf929..d3667812 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/FeilutbetalingVilk\303\245rsvurderingContext.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/FeilutbetalingVilk\303\245rsvurderingContext.tsx" @@ -84,6 +84,7 @@ const [FeilutbetalingVilkårsvurderingProvider, useFeilutbetalingVilkårsvurderi [] ); const [stegErBehandlet, settStegErBehandlet] = React.useState(false); + const [erBehandlingEndret, settErBehandlingEndret] = React.useState(false); const [erAutoutført, settErAutoutført] = React.useState(); const [valgtPeriode, settValgtPeriode] = React.useState(); @@ -320,6 +321,8 @@ const [FeilutbetalingVilkårsvurderingProvider, useFeilutbetalingVilkårsvurderi return { feilutbetalingVilkårsvurdering, stegErBehandlet, + erBehandlingEndret, + settErBehandlingEndret, erAutoutført, kanIlleggeRenter, skjemaData, diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/AktsomhetsvurderingSkjema.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/AktsomhetsvurderingSkjema.tsx" index 393c5a25..9b0373e9 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/AktsomhetsvurderingSkjema.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/AktsomhetsvurderingSkjema.tsx" @@ -22,9 +22,10 @@ import { interface IProps { skjema: ISkjema; erLesevisning: boolean; + endreSide: (val: boolean) => void; } -const AktsomhetsvurderingSkjema: React.FC = ({ skjema, erLesevisning }) => { +const AktsomhetsvurderingSkjema: React.FC = ({ skjema, erLesevisning, endreSide }) => { const { settIkkePersistertKomponent } = useBehandling(); const erForstodBurdeForstått = skjema.felter.vilkårsresultatvurdering.verdi === Vilkårsresultat.FORSTO_BURDE_FORSTÅTT; @@ -59,6 +60,7 @@ const AktsomhetsvurderingSkjema: React.FC = ({ skjema, erLesevisning }) skjema.felter.forstoIlleggeRenter.validerOgSettFelt(OptionNEI); } settIkkePersistertKomponent(`vilkårsvurdering`); + endreSide(true); return skjema.felter.aktsomhetVurdering.validerOgSettFelt(val); }} > @@ -72,9 +74,17 @@ const AktsomhetsvurderingSkjema: React.FC = ({ skjema, erLesevisning }) {skjema.felter.aktsomhetVurdering.verdi !== '' && (skjema.felter.aktsomhetVurdering.verdi === Aktsomhet.FORSETT ? ( - + ) : ( - + ))} ); diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/GradForsettSkjema.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/GradForsettSkjema.tsx" index f488d76b..6cd8384b 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/GradForsettSkjema.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/GradForsettSkjema.tsx" @@ -18,9 +18,10 @@ const StyledNormaltekst = styled(BodyShort)` interface IProps { skjema: ISkjema; erLesevisning: boolean; + endreSide: (val: boolean) => void; } -const GradForsettSkjema: React.FC = ({ skjema, erLesevisning }) => { +const GradForsettSkjema: React.FC = ({ skjema, erLesevisning, endreSide }) => { const { kanIlleggeRenter } = useFeilutbetalingVilkårsvurdering(); const erValgtResultatTypeForstoBurdeForstått = @@ -45,6 +46,7 @@ const GradForsettSkjema: React.FC = ({ skjema, erLesevisning }) => { kanIlleggeRenter={kanIlleggeRenter} felt={skjema.felter.forstoIlleggeRenter} visFeilmeldingerForSkjema={skjema.visFeilmeldinger} + endreSide={endreSide} /> ) : ( diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/GradUaktsomhetSkjema.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/GradUaktsomhetSkjema.tsx" index 2ff5c625..66b5f033 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/GradUaktsomhetSkjema.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/GradUaktsomhetSkjema.tsx" @@ -19,9 +19,10 @@ import { interface IProps { skjema: ISkjema; erLesevisning: boolean; + endreSide: (val: boolean) => void; } -const GradUaktsomhetSkjema: React.FC = ({ skjema, erLesevisning }) => { +const GradUaktsomhetSkjema: React.FC = ({ skjema, erLesevisning, endreSide }) => { const { settIkkePersistertKomponent } = useBehandling(); const erValgtResultatTypeForstoBurdeForstaatt = skjema.felter.vilkårsresultatvurdering.verdi === Vilkårsresultat.FORSTO_BURDE_FORSTÅTT; @@ -67,7 +68,11 @@ const GradUaktsomhetSkjema: React.FC = ({ skjema, erLesevisning }) => { ))} {skjema.felter.tilbakekrevSmåbeløp.verdi === OptionJA && ( - + )} {skjema.felter.tilbakekrevSmåbeløp.verdi === OptionNEI && ( @@ -78,7 +83,11 @@ const GradUaktsomhetSkjema: React.FC = ({ skjema, erLesevisning }) => { )} {(skjema.felter.aktsomhetVurdering.verdi !== Aktsomhet.SIMPEL_UAKTSOMHET || !erTotalbeløpUnder4Rettsgebyr) && ( - + )} ); diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/ReduksjonAvBel\303\270pSkjema.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/ReduksjonAvBel\303\270pSkjema.tsx" index d746f61c..a79d10e9 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/ReduksjonAvBel\303\270pSkjema.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/ReduksjonAvBel\303\270pSkjema.tsx" @@ -38,9 +38,10 @@ const StyledNormaltekst = styled(BodyShort)` interface IProps { skjema: ISkjema; erLesevisning: boolean; + endreSide: (val: boolean) => void; } -const ReduksjonAvBeløpSkjema: React.FC = ({ skjema, erLesevisning }) => { +const ReduksjonAvBeløpSkjema: React.FC = ({ skjema, erLesevisning, endreSide }) => { const { settIkkePersistertKomponent } = useBehandling(); const { valgtPeriode, kanIlleggeRenter } = useFeilutbetalingVilkårsvurdering(); const harMerEnnEnAktivitet = skjema.felter.harMerEnnEnAktivitet.verdi === true; @@ -77,6 +78,7 @@ const ReduksjonAvBeløpSkjema: React.FC = ({ skjema, erLesevisning }) => onChange={(val: JaNeiOption) => { skjema.felter.grovtUaktsomIlleggeRenter.validerOgSettFelt(OptionNEI); settIkkePersistertKomponent('vilkårsvurdering'); + endreSide(true); return skjema.felter.harGrunnerTilReduksjon.validerOgSettFelt(val); }} > @@ -112,6 +114,7 @@ const ReduksjonAvBeløpSkjema: React.FC = ({ skjema, erLesevisning }) => event.target.value ); settIkkePersistertKomponent('vilkårsvurdering'); + endreSide(true); }} value={skjema.felter.uaktsomAndelTilbakekreves.verdi} style={{ width: '100px' }} @@ -145,6 +148,7 @@ const ReduksjonAvBeløpSkjema: React.FC = ({ skjema, erLesevisning }) => event.target.value ); settIkkePersistertKomponent('vilkårsvurdering'); + endreSide(true); }} value={skjema.felter.uaktsomAndelTilbakekrevesManuelt.verdi} data-testid="andelSomTilbakekrevesManuell" @@ -168,6 +172,7 @@ const ReduksjonAvBeløpSkjema: React.FC = ({ skjema, erLesevisning }) => event.target.value ); settIkkePersistertKomponent('vilkårsvurdering'); + endreSide(true); }} style={{ width: '100px' }} /> @@ -202,6 +207,7 @@ const ReduksjonAvBeløpSkjema: React.FC = ({ skjema, erLesevisning }) => kanIlleggeRenter={kanIlleggeRenter} felt={skjema.felter.grovtUaktsomIlleggeRenter} visFeilmeldingerForSkjema={skjema.visFeilmeldinger} + endreSide={endreSide} /> )} diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/S\303\246rligeGrunnerSkjema.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/S\303\246rligeGrunnerSkjema.tsx" index 14650641..a0a92188 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/S\303\246rligeGrunnerSkjema.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/S\303\246rligeGrunnerSkjema.tsx" @@ -11,9 +11,10 @@ import { VilkårsvurderingSkjemaDefinisjon } from '../VilkårsvurderingPeriodeSk interface IProps { skjema: ISkjema; erLesevisning: boolean; + endreSide: (val: boolean) => void; } -const SærligeGrunnerSkjema: React.FC = ({ skjema, erLesevisning }) => { +const SærligeGrunnerSkjema: React.FC = ({ skjema, erLesevisning, endreSide }) => { const { settIkkePersistertKomponent } = useBehandling(); const [nonUsedKey, settNonUsedKey] = React.useState(Date.now().toString()); @@ -28,6 +29,7 @@ const SærligeGrunnerSkjema: React.FC = ({ skjema, erLesevisning }) => { } settIkkePersistertKomponent(`vilkårsvurdering`); settNonUsedKey(Date.now().toString()); + endreSide(true); }; return ( @@ -45,6 +47,7 @@ const SærligeGrunnerSkjema: React.FC = ({ skjema, erLesevisning }) => { onChange={event => { skjema.felter.særligeGrunnerBegrunnelse.validerOgSettFelt(event.target.value); settIkkePersistertKomponent(`vilkårsvurdering`); + endreSide(true); }} placeholder={ 'Begrunn om det foreligger/ ikke foreligger særlige grunner for reduksjon av beløpet som kreves tilbake. Kryss av hvilke særlige grunner som er vektlagt for resultatet' @@ -82,12 +85,17 @@ const SærligeGrunnerSkjema: React.FC = ({ skjema, erLesevisning }) => { event.target.value ); settIkkePersistertKomponent(`vilkårsvurdering`); + endreSide(true); }} data-testid={'annetBegrunnelse'} /> )} - + ); }; diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/TilleggesRenterRadioGroup.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/TilleggesRenterRadioGroup.tsx" index 8fa5b0e3..3a407dd0 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/TilleggesRenterRadioGroup.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Aktsomhetsvurdering/TilleggesRenterRadioGroup.tsx" @@ -13,12 +13,14 @@ interface IProps { kanIlleggeRenter: boolean; felt: Felt; visFeilmeldingerForSkjema: boolean; + endreSide: (val: boolean) => void; } const TilleggesRenterRadioGroup: React.FC = ({ erLesevisning, kanIlleggeRenter, felt, visFeilmeldingerForSkjema, + endreSide, }) => { const { settIkkePersistertKomponent } = useBehandling(); @@ -41,6 +43,7 @@ const TilleggesRenterRadioGroup: React.FC = ({ onChange={(val: JaNeiOption) => { felt.validerOgSettFelt(val); settIkkePersistertKomponent(`vilkårsvurdering`); + endreSide(true); }} > {jaNeiOptions.map(opt => ( diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/GodTroSkjema.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/GodTroSkjema.tsx" index 31e4440e..6f863911 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/GodTroSkjema.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/GodTroSkjema.tsx" @@ -22,9 +22,10 @@ const ArrowBoxContainer = styled.div` interface IProps { skjema: ISkjema; erLesevisning: boolean; + endreSide: (val: boolean) => void; } -const GodTroSkjema: React.FC = ({ skjema, erLesevisning }) => { +const GodTroSkjema: React.FC = ({ skjema, erLesevisning, endreSide }) => { const { settIkkePersistertKomponent } = useBehandling(); const ugyldigErBeløpetIBeholdValgt = @@ -49,6 +50,7 @@ const GodTroSkjema: React.FC = ({ skjema, erLesevisning }) => { onChange={(val: JaNeiOption) => { skjema.felter.erBeløpetIBehold.validerOgSettFelt(val); settIkkePersistertKomponent(`vilkårsvurdering`); + endreSide(true); }} > {jaNeiOptions.map(opt => ( @@ -72,6 +74,7 @@ const GodTroSkjema: React.FC = ({ skjema, erLesevisning }) => { event.target.value ); settIkkePersistertKomponent(`vilkårsvurdering`); + endreSide(true); }} value={skjema.felter.godTroTilbakekrevesBeløp.verdi} style={{ width: '6rem' }} diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjema.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjema.tsx" index 3a5232cf..ea19e214 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjema.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjema.tsx" @@ -51,6 +51,7 @@ import PeriodeOppsummering from '../../../Felleskomponenter/Periodeinformasjon/P import PeriodeController from '../../../Felleskomponenter/TilbakeTidslinje/PeriodeController/PeriodeController'; import { useFeilutbetalingVilkårsvurdering } from '../FeilutbetalingVilkårsvurderingContext'; import { VilkårsvurderingPeriodeSkjemaData } from '../typer/feilutbetalingVilkårsvurdering'; +//import { useState } from 'react'; const StyledBox = styled(Box)` min-width: 20rem; @@ -189,6 +190,7 @@ interface IProps { behandletPerioder: VilkårsvurderingPeriodeSkjemaData[]; erTotalbeløpUnder4Rettsgebyr: boolean; erLesevisning: boolean; + behandlingEndret: (b: boolean) => void; } const VilkårsvurderingPeriodeSkjema: React.FC = ({ @@ -198,6 +200,7 @@ const VilkårsvurderingPeriodeSkjema: React.FC = ({ erTotalbeløpUnder4Rettsgebyr, erLesevisning, fagsak, + behandlingEndret, }) => { const { kanIlleggeRenter, @@ -206,10 +209,13 @@ const VilkårsvurderingPeriodeSkjema: React.FC = ({ nestePeriode, forrigePeriode, settValgtPeriode, + erBehandlingEndret, + settErBehandlingEndret, } = useFeilutbetalingVilkårsvurdering(); const { skjema, onBekreft } = useVilkårsvurderingPeriodeSkjema( (oppdatertPeriode: VilkårsvurderingPeriodeSkjemaData) => { oppdaterPeriode(oppdatertPeriode); + behandlingEndret(true); } ); const { settIkkePersistertKomponent } = useBehandling(); @@ -218,6 +224,7 @@ const VilkårsvurderingPeriodeSkjema: React.FC = ({ skjema.felter.feilutbetaltBeløpPeriode.onChange(periode.feilutbetaltBeløp); skjema.felter.totalbeløpUnder4Rettsgebyr.onChange(erTotalbeløpUnder4Rettsgebyr); settSkjemadataFraPeriode(skjema, periode, kanIlleggeRenter); + settErBehandlingEndret(false); // eslint-disable-next-line react-hooks/exhaustive-deps }, [periode]); @@ -337,6 +344,7 @@ const VilkårsvurderingPeriodeSkjema: React.FC = ({ event.target.value ); settIkkePersistertKomponent('vilkårsvurdering'); + settErBehandlingEndret(true); }} /> = ({ onChange={(val: Vilkårsresultat) => { skjema.felter.vilkårsresultatvurdering.validerOgSettFelt(val); settIkkePersistertKomponent('vilkårsvurdering'); + settErBehandlingEndret(true); }} > {vilkårsresultatTyper.map(type => ( @@ -404,15 +413,21 @@ const VilkårsvurderingPeriodeSkjema: React.FC = ({ event.target.value ); settIkkePersistertKomponent('vilkårsvurdering'); + settErBehandlingEndret(true); }} maxLength={3000} /> {erGodTro ? ( - + ) : ( )} @@ -422,7 +437,11 @@ const VilkårsvurderingPeriodeSkjema: React.FC = ({ {!periode.foreldet && !erLesevisning && ( - )} diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPerioder.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPerioder.tsx" index 5a5cb020..4c61e04f 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPerioder.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPerioder.tsx" @@ -105,6 +105,7 @@ const VilkårsvurderingPerioder: React.FC = ({ } = useFeilutbetalingVilkårsvurdering(); const tidslinjeRader = genererRader(perioder, valgtPeriode, erTotalbeløpUnder4Rettsgebyr); + const [erBehandlingEndret, settErBehandlingEndret] = React.useState(false); const erHovedKnappDisabled = valgtPeriode !== undefined || @@ -137,6 +138,7 @@ const VilkårsvurderingPerioder: React.FC = ({ erTotalbeløpUnder4Rettsgebyr={erTotalbeløpUnder4Rettsgebyr} erLesevisning={erLesevisning} fagsak={fagsak} + behandlingEndret={settErBehandlingEndret} /> )} @@ -151,7 +153,7 @@ const VilkårsvurderingPerioder: React.FC = ({ loading={senderInn} disabled={erHovedKnappDisabled} > - {stegErBehandlet ? 'Neste' : 'Bekreft og fortsett'} + {stegErBehandlet && erBehandlingEndret ? 'Bekreft og fortsett' : 'Neste'} )} {behandling.harVerge && ( )} {behandling.harVerge && ( From 4f88abbbedc46d6c4a17c500969b65f8ef77c8b3 Mon Sep 17 00:00:00 2001 From: Viktor Solberg Date: Mon, 6 Jan 2025 15:48:40 +0100 Subject: [PATCH 6/9] =?UTF-8?q?Skal=20kunne=20teste=20enable/disable=20fun?= =?UTF-8?q?ksjonalitet=20av=20bekreftelsesknapp=20for=20vilk=C3=A5rsvurder?= =?UTF-8?q?ingsperiodeskjemaOS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...03\245rsvurderingPeriodeSkjemaOS.test.tsx" | 373 +++++++++--------- 1 file changed, 196 insertions(+), 177 deletions(-) diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaOS.test.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaOS.test.tsx" index 385d7e04..992250d9 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaOS.test.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaOS.test.tsx" @@ -15,6 +15,7 @@ import { import { IBehandling } from '../../../../typer/behandling'; import { IFagsak } from '../../../../typer/fagsak'; import { VilkårsvurderingPeriodeSkjemaData } from '../typer/feilutbetalingVilkårsvurdering'; +import { BehandlingProvider } from '../../../../context/BehandlingContext'; jest.setTimeout(10000); @@ -38,14 +39,6 @@ jest.mock('../FeilutbetalingVilkårsvurderingContext', () => { }; }); -jest.mock('../../../../context/BehandlingContext', () => { - return { - useBehandling: () => ({ - settIkkePersistertKomponent: jest.fn(), - }), - }; -}); - describe('Tester: VilkårsvurderingPeriodeSkjema', () => { const behandling = mock(); const fagsak = mock({ @@ -73,35 +66,37 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { queryByLabelText, queryByText, } = render( - ({ - index: 'i1', - periode: { - fom: '2020-10-01', - tom: '2020-11-30', - }, - }), - ]} - erTotalbeløpUnder4Rettsgebyr={false} - erLesevisning={false} - behandlingEndret={jest.fn()} - /> + + ({ + index: 'i1', + periode: { + fom: '2020-10-01', + tom: '2020-11-30', + }, + }), + ]} + erTotalbeløpUnder4Rettsgebyr={false} + erLesevisning={false} + behandlingEndret={jest.fn()} + /> + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -190,15 +185,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { queryByLabelText, queryByText, } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -277,15 +274,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { queryByLabelText, queryByText, } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -396,15 +395,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { queryByRole, queryByText, } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -566,15 +567,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { test('- feilaktig - forsto', async () => { const user = userEvent.setup(); const { getByLabelText, getByRole, getByText, queryAllByText, queryByText } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -654,15 +657,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { const user = userEvent.setup(); const { getByLabelText, getByRole, getByTestId, getByText, queryAllByText, queryByText } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -773,15 +778,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { queryByLabelText, queryByText, } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -922,15 +929,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { const user = userEvent.setup(); const { getByLabelText, getByRole, getByText, queryAllByText, queryByRole, queryByText } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -1071,15 +1080,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { queryByLabelText, queryByText, } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -1229,15 +1240,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { const user = userEvent.setup(); const { getByLabelText, getByRole, getByText, getByTestId, queryAllByText, queryByText } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -1355,15 +1368,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { test('- mangelfulle - simpel uaktsomhet - under 4 rettsgebyr - ikke tilbakekreves', async () => { const user = userEvent.setup(); const { getByLabelText, getByRole, getByText, queryAllByText, queryByText } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -1450,26 +1465,28 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { test('- åpner vurdert periode - god tro - beløp i behold', async () => { const { getByLabelText, getByText } = render( - + + }} + behandletPerioder={[]} + erTotalbeløpUnder4Rettsgebyr={true} + erLesevisning={false} + behandlingEndret={jest.fn()} + /> + ); await waitFor(async () => { expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -1487,38 +1504,40 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { test('- åpner vurdert periode - mangelfulle - simpel uaktsomhet - under 4 rettsgebyr', async () => { const { getByLabelText, getByTestId, getByText } = render( - + + }} + behandletPerioder={[]} + erTotalbeløpUnder4Rettsgebyr={true} + erLesevisning={false} + behandlingEndret={jest.fn()} + /> + ); await waitFor(async () => { expect(getByText('Detaljer for valgt periode')).toBeTruthy(); From 9ea1307dc6c3484a189a540b20d45702e2ff6e83 Mon Sep 17 00:00:00 2001 From: amiraliw Date: Tue, 7 Jan 2025 09:25:08 +0100 Subject: [PATCH 7/9] fikset tester --- ...03\245rsvurderingPeriodeSkjemaBA.test.tsx" | 379 ++++++++++-------- 1 file changed, 203 insertions(+), 176 deletions(-) diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaBA.test.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaBA.test.tsx" index 4ea72f98..dc3ff7db 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaBA.test.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaBA.test.tsx" @@ -15,6 +15,7 @@ import { import { IBehandling } from '../../../../typer/behandling'; import { IFagsak } from '../../../../typer/fagsak'; import { VilkårsvurderingPeriodeSkjemaData } from '../typer/feilutbetalingVilkårsvurdering'; +import { BehandlingProvider } from '../../../../context/BehandlingContext'; jest.setTimeout(10000); @@ -36,13 +37,13 @@ jest.mock('../FeilutbetalingVilkårsvurderingContext', () => { }; }); -jest.mock('../../../../context/BehandlingContext', () => { - return { - useBehandling: () => ({ - settIkkePersistertKomponent: jest.fn(), - }), - }; -}); +// jest.mock('../../../../context/BehandlingContext', () => { +// return { +// useBehandling: () => ({ +// settIkkePersistertKomponent: jest.fn(), +// }), +// }; +// }); describe('Tester: VilkårsvurderingPeriodeSkjema', () => { const behandling = mock(); @@ -71,35 +72,37 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { queryByText, getAllByText, } = render( - ({ - index: 'i1', - periode: { - fom: '2020-10-01', - tom: '2020-11-30', - }, - }), - ]} - erTotalbeløpUnder4Rettsgebyr={false} - erLesevisning={false} - behandlingEndret={jest.fn()} - /> + + ({ + index: 'i1', + periode: { + fom: '2020-10-01', + tom: '2020-11-30', + }, + }), + ]} + erTotalbeløpUnder4Rettsgebyr={false} + erLesevisning={false} + behandlingEndret={jest.fn()} + /> + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -205,15 +208,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { queryByLabelText, queryByText, } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -274,15 +279,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { queryByLabelText, queryByText, } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -370,15 +377,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { queryByRole, queryByText, } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -519,15 +528,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { test('- feilaktig - forsto', async () => { const user = userEvent.setup(); const { getByLabelText, getByRole, getByText, queryAllByText, queryByText } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -590,15 +601,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { const user = userEvent.setup(); const { getByLabelText, getByRole, getByText, queryAllByText, queryByText, queryByTestId } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -692,15 +705,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { queryByLabelText, queryByText, } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -826,15 +841,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { const user = userEvent.setup(); const { getByLabelText, getByRole, getByText, queryAllByText, queryByRole, queryByText } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -959,15 +976,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { queryByLabelText, queryByText, } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -1099,15 +1118,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { const user = userEvent.setup(); const { getByLabelText, getByRole, getByText, getByTestId, queryAllByText, queryByText } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -1207,15 +1228,17 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { test('- mangelfulle - simpel uaktsomhet - under 4 rettsgebyr - ikke tilbakekreves', async () => { const user = userEvent.setup(); const { getByLabelText, getByRole, getByText, queryAllByText, queryByText } = render( - + + + ); expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -1284,26 +1307,28 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { test('- åpner vurdert periode - god tro - beløp i behold', async () => { const { getByLabelText, getByText } = render( - + + }} + behandletPerioder={[]} + erTotalbeløpUnder4Rettsgebyr={true} + erLesevisning={false} + behandlingEndret={jest.fn()} + /> + ); await act(async () => { expect(getByText('Detaljer for valgt periode')).toBeTruthy(); @@ -1321,38 +1346,40 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { test('- åpner vurdert periode - mangelfulle - simpel uaktsomhet - under 4 rettsgebyr', async () => { const { getByLabelText, getByTestId, getByText } = render( - + + }} + behandletPerioder={[]} + erTotalbeløpUnder4Rettsgebyr={true} + erLesevisning={false} + behandlingEndret={jest.fn()} + /> + ); await act(async () => { expect(getByText('Detaljer for valgt periode')).toBeTruthy(); From 9a5dd410ab15ef5491110e3cea9f797302a6309c Mon Sep 17 00:00:00 2001 From: Viktor Solberg Date: Tue, 7 Jan 2025 14:47:02 +0100 Subject: [PATCH 8/9] =?UTF-8?q?utbedret=20tester=20av=20vilk=C3=A5rsvurder?= =?UTF-8?q?ingContainer=20->=20velger=20=C3=A5=20ikke=20mocke=20ut=20Behan?= =?UTF-8?q?dlingProvider=20for=20=C3=A5=20kunne=20teste=20navigering=20og?= =?UTF-8?q?=20enabled/disable=20funksjonalitet=20av=20knapper?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...Vilk\303\245rsvurderingContainer.test.tsx" | 126 ++++++++-------- ...deringContainerAutoutf\303\270rt.test.tsx" | 137 ++++++++++++++++++ 2 files changed, 201 insertions(+), 62 deletions(-) create mode 100644 "src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingContainerAutoutf\303\270rt.test.tsx" diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingContainer.test.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingContainer.test.tsx" index 80684a64..6e8ea5a5 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingContainer.test.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingContainer.test.tsx" @@ -9,7 +9,7 @@ import { type Ressurs, RessursStatus } from '@navikt/familie-typer'; import { FeilutbetalingVilkårsvurderingProvider } from './FeilutbetalingVilkårsvurderingContext'; import VilkårsvurderingContainer from './VilkårsvurderingContainer'; import { useBehandlingApi } from '../../../api/behandling'; -import { useBehandling } from '../../../context/BehandlingContext'; +import { BehandlingProvider } from '../../../context/BehandlingContext'; import { Aktsomhet, Fagsystem, HendelseType, Vilkårsresultat, Ytelsetype } from '../../../kodeverk'; import { Behandlingstatus, IBehandling } from '../../../typer/behandling'; import { IFagsak } from '../../../typer/fagsak'; @@ -17,19 +17,12 @@ import { IFeilutbetalingVilkårsvurdering, VilkårsvurderingPeriode, } from '../../../typer/feilutbetalingtyper'; +import { useHttp } from '@navikt/familie-http'; jest.setTimeout(25000); -jest.mock('@navikt/familie-http', () => { - return { - useHttp: () => ({ - request: () => jest.fn(), - }), - }; -}); - -jest.mock('../../../context/BehandlingContext', () => ({ - useBehandling: jest.fn(), +jest.mock('@navikt/familie-http', () => ({ + useHttp: jest.fn(), })); jest.mock('../../../api/behandling', () => ({ @@ -69,12 +62,7 @@ describe('Tester: VilkårsvurderingContainer', () => { rettsgebyr: 1199, }; - const setupMock = ( - behandlet: boolean, - lesevisning: boolean, - autoutført: boolean, - vilkårsvurdering?: IFeilutbetalingVilkårsvurdering - ) => { + const setupUseBehandlingApiMock = (vilkårsvurdering?: IFeilutbetalingVilkårsvurdering) => { if (vilkårsvurdering) { // @ts-expect-error mock useBehandlingApi.mockImplementation(() => ({ @@ -94,30 +82,35 @@ describe('Tester: VilkårsvurderingContainer', () => { }, })); } + }; + + const setupHttpMock = () => { // @ts-expect-error mock - useBehandling.mockImplementation(() => ({ - erStegBehandlet: () => behandlet, - erStegAutoutført: () => autoutført, - visVenteModal: false, - behandlingILesemodus: lesevisning, - hentBehandlingMedBehandlingId: () => Promise.resolve(), - settIkkePersistertKomponent: jest.fn(), - nullstillIkkePersisterteKomponenter: jest.fn(), + useHttp.mockImplementation(() => ({ + request: () => { + return Promise.resolve({ + status: RessursStatus.SUKSESS, + data: mock({ eksternBrukId: '1' }), + }); + }, })); }; test('- totalbeløp under 4 rettsgebyr - alle perioder har ikke brukt 6.ledd', async () => { const user = userEvent.setup(); - setupMock(false, false, false, feilutbetalingVilkårsvurdering); + setupUseBehandlingApiMock(feilutbetalingVilkårsvurdering); + setupHttpMock(); const behandling = mock(); const fagsak = mock(); fagsak.ytelsestype = Ytelsetype.BARNETILSYN; const { getByText, getByRole, getByLabelText, getByTestId, queryAllByText, queryByText } = render( - - - + + + + + ); await waitFor(async () => { @@ -326,7 +319,8 @@ describe('Tester: VilkårsvurderingContainer', () => { test('- vis og fyll ut perioder og send inn - god tro - bruker kopiering', async () => { const user = userEvent.setup(); - setupMock(false, false, false, feilutbetalingVilkårsvurdering); + setupUseBehandlingApiMock(feilutbetalingVilkårsvurdering); + setupHttpMock(); const fagsak = mock({ fagsystem: Fagsystem.EF, eksternFagsakId: '1' }); const behandling = mock({ eksternBrukId: '1' }); @@ -334,9 +328,11 @@ describe('Tester: VilkårsvurderingContainer', () => { fagsak.ytelsestype = Ytelsetype.BARNETILSYN; const { getByText, getByRole, getByLabelText, queryAllByText } = render( - - - + + + + + ); await waitFor(async () => { @@ -425,7 +421,7 @@ describe('Tester: VilkårsvurderingContainer', () => { test('- vis utfylt - forstod/burde forstått - forsto', async () => { const user = userEvent.setup(); - setupMock(true, false, false, { + setupUseBehandlingApiMock({ perioder: [ { ...perioder[0], @@ -461,9 +457,11 @@ describe('Tester: VilkårsvurderingContainer', () => { }); const { getByText, getByRole, getByLabelText, queryByText, queryByLabelText } = render( - - - + + + + + ); await waitFor(async () => { @@ -558,7 +556,7 @@ describe('Tester: VilkårsvurderingContainer', () => { test('- vis utfylt - forstod/burde forstått - forsto - lesevisning', async () => { const user = userEvent.setup(); - setupMock(true, true, false, { + setupUseBehandlingApiMock({ perioder: [ { ...perioder[0], @@ -588,15 +586,18 @@ describe('Tester: VilkårsvurderingContainer', () => { ], rettsgebyr: 1199, }); + setupHttpMock(); const behandling = mock({ status: Behandlingstatus.FATTER_VEDTAK }); const fagsak = mock({ ytelsestype: Ytelsetype.BARNETRYGD, }); const { getByText, getByRole, getByLabelText } = render( - - - + + + + + ); await waitFor(async () => { @@ -647,17 +648,19 @@ describe('Tester: VilkårsvurderingContainer', () => { }) ).toBeTruthy(); - // Knapper for navigering mellom faner skal alltid være synlige og enabled + // Knapp for navigering tilbake mellom faner skal alltid være synlig enabled expect( getByRole('button', { name: 'Forrige', }) ).toBeEnabled(); + + // Knapp for navigering til neste fane skal være synlig men disabled når vilkårspanel er åpent expect( getByRole('button', { name: 'Neste', }) - ).toBeEnabled(); + ).toBeDisabled(); }); await act(() => @@ -717,38 +720,37 @@ describe('Tester: VilkårsvurderingContainer', () => { }) ).toBeTruthy(); - // Knapper for navigering mellom faner skal alltid være synlige og enabled + // Knapp for navigering tilbake mellom faner skal alltid være synlig enabled expect( getByRole('button', { name: 'Forrige', }) ).toBeEnabled(); + + // Knapp for navigering til neste fane skal være synlig men disabled når vilkårspanel er åpent expect( getByRole('button', { name: 'Neste', }) - ).toBeEnabled(); - }); - - test('- vis autoutført', async () => { - setupMock(false, false, true); - - const behandling = mock(); - const fagsak = mock(); - fagsak.ytelsestype = Ytelsetype.BARNETILSYN; + ).toBeDisabled(); - const { getByText, getByRole } = render( - - - + await act(() => + // Bruker klikker på lukk knapp + user.click( + getByRole('button', { + name: 'Lukk', + }) + ) ); - await waitFor(async () => { - expect(getByText('Tilbakekreving')).toBeTruthy(); - }); - - expect(getByText('Automatisk vurdert. Alle perioder er foreldet.')).toBeTruthy(); + // Knapp for navigering tilbake mellom faner skal alltid være synlig enabled + expect( + getByRole('button', { + name: 'Forrige', + }) + ).toBeEnabled(); + // Knapp for navigering til neste fane skal nå være synlig og enabled expect( getByRole('button', { name: 'Neste', diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingContainerAutoutf\303\270rt.test.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingContainerAutoutf\303\270rt.test.tsx" new file mode 100644 index 00000000..39fd0081 --- /dev/null +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingContainerAutoutf\303\270rt.test.tsx" @@ -0,0 +1,137 @@ +import * as React from 'react'; + +import { render, waitFor } from '@testing-library/react'; +import { mock } from 'jest-mock-extended'; + +import { FeilutbetalingVilkårsvurderingProvider } from './FeilutbetalingVilkårsvurderingContext'; +import VilkårsvurderingContainer from './VilkårsvurderingContainer'; +import { HendelseType, Ytelsetype } from '../../../kodeverk'; +import { IBehandling } from '../../../typer/behandling'; +import { IFagsak } from '../../../typer/fagsak'; +import { useBehandling } from '../../../context/BehandlingContext'; +import { + IFeilutbetalingVilkårsvurdering, + VilkårsvurderingPeriode, +} from '../../../typer/feilutbetalingtyper'; +import { useBehandlingApi } from '../../../api/behandling'; +import { Ressurs, RessursStatus } from '@navikt/familie-typer'; + +jest.setTimeout(25000); + +jest.mock('@navikt/familie-http', () => ({ + useHttp: jest.fn(), +})); + +jest.mock('../../../api/behandling', () => ({ + useBehandlingApi: jest.fn(), +})); + +jest.mock('@navikt/familie-http', () => { + return { + useHttp: () => ({ + request: () => jest.fn(), + }), + }; +}); + +jest.mock('../../../context/BehandlingContext', () => ({ + useBehandling: jest.fn(), +})); + +jest.mock('react-router-dom', () => ({ + ...jest.requireActual('react-router-dom'), + useNavigate: () => jest.fn(), +})); + +jest.mock('../../../context/BehandlingContext', () => ({ + useBehandling: jest.fn(), +})); + +describe('Tester: VilkårsvurderingContainer', () => { + const perioder: VilkårsvurderingPeriode[] = [ + { + feilutbetaltBeløp: 1333, + periode: { + fom: '2020-01-01', + tom: '2020-03-31', + }, + hendelsestype: HendelseType.BOSATT_I_RIKET, + foreldet: false, + begrunnelse: undefined, + }, + { + feilutbetaltBeløp: 1333, + periode: { + fom: '2020-05-01', + tom: '2020-06-30', + }, + hendelsestype: HendelseType.BOR_MED_SØKER, + foreldet: false, + begrunnelse: undefined, + }, + ]; + const feilutbetalingVilkårsvurdering: IFeilutbetalingVilkårsvurdering = { + perioder: perioder, + rettsgebyr: 1199, + }; + const setupMock = ( + behandlet: boolean, + lesevisning: boolean, + autoutført: boolean, + vilkårsvurdering?: IFeilutbetalingVilkårsvurdering + ) => { + if (vilkårsvurdering) { + // @ts-expect-error mock + useBehandlingApi.mockImplementation(() => ({ + gjerFeilutbetalingVilkårsvurderingKall: () => { + const ressurs = mock>({ + status: RessursStatus.SUKSESS, + data: vilkårsvurdering, + }); + return Promise.resolve(ressurs); + }, + sendInnFeilutbetalingVilkårsvurdering: () => { + const ressurs = mock>({ + status: RessursStatus.SUKSESS, + data: 'suksess', + }); + return Promise.resolve(ressurs); + }, + })); + } + // @ts-expect-error mock + useBehandling.mockImplementation(() => ({ + erStegBehandlet: () => behandlet, + erStegAutoutført: () => autoutført, + visVenteModal: false, + behandlingILesemodus: lesevisning, + hentBehandlingMedBehandlingId: jest.fn(), + })); + }; + + test('- vis autoutført', async () => { + setupMock(false, false, true, feilutbetalingVilkårsvurdering); + + const behandling = mock(); + const fagsak = mock(); + fagsak.ytelsestype = Ytelsetype.BARNETILSYN; + + const { getByText, getByRole } = render( + + + + ); + + await waitFor(async () => { + expect(getByText('Tilbakekreving')).toBeTruthy(); + }); + + expect(getByText('Automatisk vurdert. Alle perioder er foreldet.')).toBeTruthy(); + + expect( + getByRole('button', { + name: 'Neste', + }) + ).toBeEnabled(); + }); +}); From 4928eb1509214ce8752e20b7573dc86e8caa5cc6 Mon Sep 17 00:00:00 2001 From: amiraliw Date: Wed, 8 Jan 2025 11:17:16 +0100 Subject: [PATCH 9/9] =?UTF-8?q?fjernet=20ubrukte=20behandlingEndret(true)?= =?UTF-8?q?=20i=20en=20Vilk=C3=A5rsvurderingPeriodeSkjema.tsx=20og=20brukt?= =?UTF-8?q?e=20harUlagredeData=20istedenfor=20erBehandlingEndret=20i=20Vil?= =?UTF-8?q?k=C3=A5rsvurderingPerioder.tsx.=20tilpasset=20ogs=C3=A5=20teste?= =?UTF-8?q?ne=20med=20disse=20endringer?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Vilk\303\245rsvurderingPeriodeSkjema.tsx" | 3 --- ...lk\303\245rsvurderingPeriodeSkjemaBA.test.tsx" | 13 ------------- ...lk\303\245rsvurderingPeriodeSkjemaOS.test.tsx" | 15 --------------- .../Vilk\303\245rsvurderingPerioder.tsx" | 6 +++--- 4 files changed, 3 insertions(+), 34 deletions(-) diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjema.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjema.tsx" index 993c0e89..c7199ea3 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjema.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjema.tsx" @@ -189,7 +189,6 @@ interface IProps { behandletPerioder: VilkårsvurderingPeriodeSkjemaData[]; erTotalbeløpUnder4Rettsgebyr: boolean; erLesevisning: boolean; - behandlingEndret: (b: boolean) => void; } const VilkårsvurderingPeriodeSkjema: React.FC = ({ @@ -199,7 +198,6 @@ const VilkårsvurderingPeriodeSkjema: React.FC = ({ erTotalbeløpUnder4Rettsgebyr, erLesevisning, fagsak, - behandlingEndret, }) => { const { kanIlleggeRenter, @@ -213,7 +211,6 @@ const VilkårsvurderingPeriodeSkjema: React.FC = ({ const { skjema, onBekreft } = useVilkårsvurderingPeriodeSkjema( (oppdatertPeriode: VilkårsvurderingPeriodeSkjemaData) => { oppdaterPeriode(oppdatertPeriode); - behandlingEndret(true); } ); const { settIkkePersistertKomponent, harUlagredeData } = useBehandling(); diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaBA.test.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaBA.test.tsx" index dc3ff7db..c99c23a9 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaBA.test.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaBA.test.tsx" @@ -100,7 +100,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { ]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -216,7 +215,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -287,7 +285,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -385,7 +382,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -536,7 +532,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -609,7 +604,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -713,7 +707,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -849,7 +842,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -984,7 +976,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={true} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -1126,7 +1117,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={true} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -1236,7 +1226,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={true} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -1326,7 +1315,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={true} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -1377,7 +1365,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={true} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaOS.test.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaOS.test.tsx" index 992250d9..50ea4d86 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaOS.test.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPeriode/Vilk\303\245rsvurderingPeriodeSkjemaOS.test.tsx" @@ -33,8 +33,6 @@ jest.mock('../FeilutbetalingVilkårsvurderingContext', () => { oppdaterPeriode: jest.fn(), onSplitPeriode: jest.fn(), lukkValgtPeriode: jest.fn(), - erBehandlingEndret: false, - settErBehandlingEndret: jest.fn(), }), }; }); @@ -94,7 +92,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { ]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -193,7 +190,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -282,7 +278,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -403,7 +398,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -575,7 +569,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -665,7 +658,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -786,7 +778,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -937,7 +928,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={false} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -1088,7 +1078,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={true} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -1248,7 +1237,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={true} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -1376,7 +1364,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={true} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -1484,7 +1471,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={true} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); @@ -1535,7 +1521,6 @@ describe('Tester: VilkårsvurderingPeriodeSkjema', () => { behandletPerioder={[]} erTotalbeløpUnder4Rettsgebyr={true} erLesevisning={false} - behandlingEndret={jest.fn()} /> ); diff --git "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPerioder.tsx" "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPerioder.tsx" index b4df6dbf..da11cff7 100644 --- "a/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPerioder.tsx" +++ "b/src/frontend/komponenter/Fagsak/Vilk\303\245rsvurdering/Vilk\303\245rsvurderingPerioder.tsx" @@ -15,6 +15,7 @@ import { IBehandling } from '../../../typer/behandling'; import { IFagsak } from '../../../typer/fagsak'; import { FTAlertStripe, Navigering } from '../../Felleskomponenter/Flytelementer'; import TilbakeTidslinje from '../../Felleskomponenter/TilbakeTidslinje/TilbakeTidslinje'; +import { useBehandling } from '../../../context/BehandlingContext'; const ValideringsFeilmelding = styled(BodyShort)` font-weight: ${AFontWeightBold}; @@ -105,7 +106,7 @@ const VilkårsvurderingPerioder: React.FC = ({ } = useFeilutbetalingVilkårsvurdering(); const tidslinjeRader = genererRader(perioder, valgtPeriode, erTotalbeløpUnder4Rettsgebyr); - const [erBehandlingEndret, settErBehandlingEndret] = React.useState(false); + const { harUlagredeData } = useBehandling(); const erHovedKnappDisabled = valgtPeriode !== undefined || @@ -138,7 +139,6 @@ const VilkårsvurderingPerioder: React.FC = ({ erTotalbeløpUnder4Rettsgebyr={erTotalbeløpUnder4Rettsgebyr} erLesevisning={erLesevisning} fagsak={fagsak} - behandlingEndret={settErBehandlingEndret} /> )} @@ -153,7 +153,7 @@ const VilkårsvurderingPerioder: React.FC = ({ loading={senderInn} disabled={erHovedKnappDisabled} > - {erBehandlingEndret ? 'Bekreft og fortsett' : 'Neste'} + {harUlagredeData ? 'Bekreft og fortsett' : 'Neste'} )}