From e3edebf85bc7fd0d7b9c27fb85097fa7431166c3 Mon Sep 17 00:00:00 2001 From: Petter Ekern <43809623+pekern@users.noreply.github.com> Date: Thu, 14 Mar 2024 10:40:32 +0100 Subject: [PATCH] FIX: Retter en del high severity sonar feil (#482) --- .../MapArbeidsforholdFraVLTilRegel.java | 9 +++++---- .../BeregningRefusjonOverstyringDto.java | 10 +++++++--- .../beregningsgrunnlag/TilkommetInntektDto.java | 2 +- .../kalkulator/modell/typer/Refusjon.java | 2 +- .../besteberegning/BesteberegningResultat.java | 3 ++- .../VurderBeregningsgrunnlagTjeneste.java" | 3 --- .../AktivitetKodeverkMappingTest.java | 7 ++++--- ...sgrunnlagPrStatusOgAndelDtoTjenesteTest.java | 17 +++++++++++------ .../refusjon/RefusjonAndelTilVurderingDto.java | 3 --- .../kalkulus/mappers/KontraktTest.java | 5 ++++- .../kalkulus/mappers/ValiderKontraktDtoer.java | 3 ++- 11 files changed, 37 insertions(+), 27 deletions(-) diff --git a/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/adapter/vltilregelmodell/MapArbeidsforholdFraVLTilRegel.java b/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/adapter/vltilregelmodell/MapArbeidsforholdFraVLTilRegel.java index 59f063a7..6f3d39cc 100644 --- a/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/adapter/vltilregelmodell/MapArbeidsforholdFraVLTilRegel.java +++ b/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/adapter/vltilregelmodell/MapArbeidsforholdFraVLTilRegel.java @@ -20,6 +20,7 @@ import no.nav.folketrygdloven.kalkulus.kodeverk.OpptjeningAktivitetType; public class MapArbeidsforholdFraVLTilRegel { + private static final String FEILMELDING = "Arbeidsgiver må være enten aktør eller virksomhet, men var: "; private MapArbeidsforholdFraVLTilRegel() { // skjul public constructor } @@ -90,9 +91,9 @@ private static Arbeidsforhold lagArbeidsforholdHosArbeidsgiverMedStartdato(Arbei .medStartdato(startdato) .build(); } - throw new IllegalStateException("Arbeidsgiver må være enten aktør eller virksomhet, men var: " + arbeidsgiver); + throw new IllegalStateException(FEILMELDING + arbeidsgiver); } - + private static Arbeidsforhold lagArbeidsforholdHosArbeidsgiver(Arbeidsgiver arbeidsgiver, String arbeidsforholdRef) { String arbRef = arbeidsforholdRef; if (arbeidsgiver.getErVirksomhet()) { @@ -101,7 +102,7 @@ private static Arbeidsforhold lagArbeidsforholdHosArbeidsgiver(Arbeidsgiver arbe if (arbeidsgiver.erAktørId()) { return Arbeidsforhold.nyttArbeidsforholdHosPrivatperson(arbeidsgiver.getAktørId().getId(), arbRef); } - throw new IllegalStateException("Arbeidsgiver må være enten aktør eller virksomhet, men var: " + arbeidsgiver); + throw new IllegalStateException(FEILMELDING + arbeidsgiver); } private static String arbeidsforholdRefFor(BeregningsgrunnlagPrStatusOgAndelDto vlBGPStatus) { @@ -115,7 +116,7 @@ public static Arbeidsforhold mapArbeidsforhold(Arbeidsgiver arbeidsgiver, Intern if (arbeidsgiver.erAktørId()) { return Arbeidsforhold.nyttArbeidsforholdHosPrivatperson(arbeidsgiver.getAktørId().getId(), arbeidsforholdRef.getReferanse()); } - throw new IllegalStateException("Arbeidsgiver må være enten aktør eller virksomhet, men var: " + arbeidsgiver); + throw new IllegalStateException(FEILMELDING + arbeidsgiver); } static Arbeidsforhold mapForInntektsmelding(InntektsmeldingDto im) { diff --git a/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/modell/beregningsgrunnlag/BeregningRefusjonOverstyringDto.java b/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/modell/beregningsgrunnlag/BeregningRefusjonOverstyringDto.java index b69236dc..4ab1a862 100644 --- a/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/modell/beregningsgrunnlag/BeregningRefusjonOverstyringDto.java +++ b/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/modell/beregningsgrunnlag/BeregningRefusjonOverstyringDto.java @@ -24,14 +24,14 @@ public class BeregningRefusjonOverstyringDto { public BeregningRefusjonOverstyringDto(Arbeidsgiver arbeidsgiver, boolean erFristUtvidet) { - Objects.requireNonNull(arbeidsgiver, "arbeidsgiver"); + nullsjekkArbeidsgiver(arbeidsgiver); this.erFristUtvidet = erFristUtvidet; this.arbeidsgiver = arbeidsgiver; } public BeregningRefusjonOverstyringDto(Arbeidsgiver arbeidsgiver, LocalDate førsteMuligeRefusjonFom, boolean erFristUtvidet) { - Objects.requireNonNull(arbeidsgiver, "arbeidsgiver"); + nullsjekkArbeidsgiver(arbeidsgiver); this.erFristUtvidet = erFristUtvidet; this.førsteMuligeRefusjonFom = førsteMuligeRefusjonFom; this.arbeidsgiver = arbeidsgiver; @@ -40,13 +40,17 @@ public BeregningRefusjonOverstyringDto(Arbeidsgiver arbeidsgiver, public BeregningRefusjonOverstyringDto(Arbeidsgiver arbeidsgiver, LocalDate førsteMuligeRefusjonFom, List refusjonPerioder, Boolean erFristUtvidet) { - Objects.requireNonNull(arbeidsgiver, "arbeidsgiver"); + nullsjekkArbeidsgiver(arbeidsgiver); this.refusjonPerioder = refusjonPerioder; this.førsteMuligeRefusjonFom = førsteMuligeRefusjonFom; this.arbeidsgiver = arbeidsgiver; this.erFristUtvidet = erFristUtvidet; } + private void nullsjekkArbeidsgiver(Arbeidsgiver arbeidsgiver) { + Objects.requireNonNull(arbeidsgiver, "arbeidsgiver"); + } + void setRefusjonOverstyringerEntitet(BeregningRefusjonOverstyringerDto refusjonOverstyringer) { this.refusjonOverstyringer = refusjonOverstyringer; } diff --git a/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/modell/beregningsgrunnlag/TilkommetInntektDto.java b/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/modell/beregningsgrunnlag/TilkommetInntektDto.java index 8e9c95dd..146c49ac 100644 --- a/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/modell/beregningsgrunnlag/TilkommetInntektDto.java +++ b/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/modell/beregningsgrunnlag/TilkommetInntektDto.java @@ -83,7 +83,7 @@ public Boolean skalRedusereUtbetaling() { public boolean matcher(TilkommetInntektDto annet) { return this.aktivitetStatus.equals(annet.getAktivitetStatus()) && - Objects.equals(this.arbeidsgiver, annet.arbeidsgiver) & + Objects.equals(this.arbeidsgiver, annet.arbeidsgiver) && Objects.equals(this.arbeidsforholdRef, annet.arbeidsforholdRef); } diff --git a/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/modell/typer/Refusjon.java b/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/modell/typer/Refusjon.java index 17f2f015..31ea5cdd 100644 --- a/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/modell/typer/Refusjon.java +++ b/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/modell/typer/Refusjon.java @@ -118,7 +118,7 @@ public void setHjemmelForRefusjonskravfrist(Hjemmel hjemmelForRefusjonskravfrist public Beløp getGjeldendeRefusjonPrÅr() { if (manueltFordeltRefusjonPrÅr != null) { return manueltFordeltRefusjonPrÅr; - } if (fordeltRefusjonPrÅr != null) { + } else if (fordeltRefusjonPrÅr != null) { return fordeltRefusjonPrÅr; } else if (saksbehandletRefusjonPrÅr != null) { return saksbehandletRefusjonPrÅr; diff --git a/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/steg/besteberegning/BesteberegningResultat.java b/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/steg/besteberegning/BesteberegningResultat.java index 839ecc5e..255a107b 100644 --- a/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/steg/besteberegning/BesteberegningResultat.java +++ b/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/steg/besteberegning/BesteberegningResultat.java @@ -12,7 +12,8 @@ public class BesteberegningResultat extends BeregningResultatAggregat { private BesteberegningVurderingGrunnlag besteberegningVurderingGrunnlag; - public BesteberegningResultat() { + private BesteberegningResultat() { + // Hindrer default konstruktør } public BesteberegningVurderingGrunnlag getBesteberegningVurderingGrunnlag() { diff --git "a/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/steg/fordeling/vilk\303\245r/VurderBeregningsgrunnlagTjeneste.java" "b/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/steg/fordeling/vilk\303\245r/VurderBeregningsgrunnlagTjeneste.java" index 291e3847..274bdf26 100644 --- "a/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/steg/fordeling/vilk\303\245r/VurderBeregningsgrunnlagTjeneste.java" +++ "b/kalkulator/src/main/java/no/nav/folketrygdloven/kalkulator/steg/fordeling/vilk\303\245r/VurderBeregningsgrunnlagTjeneste.java" @@ -40,9 +40,6 @@ public class VurderBeregningsgrunnlagTjeneste { private static final MapBeregningsgrunnlagFraVLTilRegel mapBeregningsgrunnlagFraVLTilRegel = new MapBeregningsgrunnlagFraVLTilRegel(); - public VurderBeregningsgrunnlagTjeneste() { - } - public BeregningsgrunnlagRegelResultat vurderBeregningsgrunnlag(BeregningsgrunnlagInput input, BeregningsgrunnlagGrunnlagDto oppdatertGrunnlag) { // Oversetter foreslått Beregningsgrunnlag -> regelmodell var beregningsgrunnlagRegel = mapBeregningsgrunnlagFraVLTilRegel.map(input, oppdatertGrunnlag); diff --git a/kalkulator/src/test/java/no/nav/folketrygdloven/kalkulator/adapter/vltilregelmodell/AktivitetKodeverkMappingTest.java b/kalkulator/src/test/java/no/nav/folketrygdloven/kalkulator/adapter/vltilregelmodell/AktivitetKodeverkMappingTest.java index ee81b0f7..c3118541 100644 --- a/kalkulator/src/test/java/no/nav/folketrygdloven/kalkulator/adapter/vltilregelmodell/AktivitetKodeverkMappingTest.java +++ b/kalkulator/src/test/java/no/nav/folketrygdloven/kalkulator/adapter/vltilregelmodell/AktivitetKodeverkMappingTest.java @@ -7,14 +7,15 @@ import no.nav.folketrygdloven.kalkulator.adapter.vltilregelmodell.kodeverk.MapOpptjeningAktivitetTypeFraVLTilRegel; import no.nav.folketrygdloven.kalkulus.kodeverk.OpptjeningAktivitetType; +import static org.assertj.core.api.Assertions.assertThat; + public class AktivitetKodeverkMappingTest { @Test void skal_verifisere_at_beregningsreglene_kjenner_alle_opptjeningsaktiviteter_i_kodeverk() { for (OpptjeningAktivitetType kode : EnumSet.allOf(OpptjeningAktivitetType.class)) { - //TODO(OJR) skal fjerne UTDANNINGSPERMISJON fra kodeverk - if (!OpptjeningAktivitetType.UDEFINERT.equals(kode) && !kode.getKode().equals("UTDANNINGSPERMISJON")) { - MapOpptjeningAktivitetTypeFraVLTilRegel.map(kode); + if (!OpptjeningAktivitetType.UDEFINERT.equals(kode)) { + assertThat(MapOpptjeningAktivitetTypeFraVLTilRegel.map(kode)).isNotNull(); } } } diff --git a/kalkulator/src/test/java/no/nav/folketrygdloven/kalkulator/guitjenester/fakta/BeregningsgrunnlagPrStatusOgAndelDtoTjenesteTest.java b/kalkulator/src/test/java/no/nav/folketrygdloven/kalkulator/guitjenester/fakta/BeregningsgrunnlagPrStatusOgAndelDtoTjenesteTest.java index 2cb0dbc2..de016879 100644 --- a/kalkulator/src/test/java/no/nav/folketrygdloven/kalkulator/guitjenester/fakta/BeregningsgrunnlagPrStatusOgAndelDtoTjenesteTest.java +++ b/kalkulator/src/test/java/no/nav/folketrygdloven/kalkulator/guitjenester/fakta/BeregningsgrunnlagPrStatusOgAndelDtoTjenesteTest.java @@ -150,7 +150,7 @@ public class BeregningsgrunnlagPrStatusOgAndelDtoTjenesteTest { } @Test - void skalIkkeKasteExceptionNårDetFinnesHverkenAtFlEllerSnAndelOgDetFinnesSammenligningsgrunnlagPrStatus() throws Exception { + void skalIkkeKasteExceptionNårDetFinnesHverkenAtFlEllerSnAndelOgDetFinnesSammenligningsgrunnlagPrStatus() { //Arange Arbeidsgiver arbeidsgiver = Arbeidsgiver.virksomhet(ORGNR); BeregningsgrunnlagDto Beregningsgrunnlag = lagBeregningsgrunnlagMedAvvikOver25Prosent(SammenligningsgrunnlagType.SAMMENLIGNING_ATFL_SN); @@ -162,8 +162,10 @@ public class BeregningsgrunnlagPrStatusOgAndelDtoTjenesteTest { var input = new BeregningsgrunnlagGUIInput(lagReferanseMedStp(koblingReferanse), iayGrunnlag, List.of(), ytelsespesifiktGrunnlag).medBeregningsgrunnlagGrunnlag(grunnlag); BeregningsgrunnlagPrStatusOgAndelDtoTjeneste tjeneste = new BeregningsgrunnlagPrStatusOgAndelDtoTjeneste(); //Act - tjeneste.lagBeregningsgrunnlagPrStatusOgAndelDto(input, - grunnlag.getBeregningsgrunnlagHvisFinnes().get().getBeregningsgrunnlagPerioder().get(0).getBeregningsgrunnlagPrStatusOgAndelList()); + var beregningsgrunnlagPrStatusOgAndelDtos = tjeneste.lagBeregningsgrunnlagPrStatusOgAndelDto(input, + grunnlag.getBeregningsgrunnlagHvisFinnes().get().getBeregningsgrunnlagPerioder().get(0).getBeregningsgrunnlagPrStatusOgAndelList()); + + assertThat(beregningsgrunnlagPrStatusOgAndelDtos).isNotEmpty(); } @Test @@ -235,7 +237,7 @@ public class BeregningsgrunnlagPrStatusOgAndelDtoTjenesteTest { } @Test - void skalIkkeKasteExceptionNårDetFinnesHverkenAtFlEllerSnAndelOgDeIkkeFinnesSammenligningsgrunnlagPrStatus() throws Exception { + void skalIkkeKasteExceptionNårDetFinnesHverkenAtFlEllerSnAndelOgDeIkkeFinnesSammenligningsgrunnlagPrStatus() { //Arange Arbeidsgiver arbeidsgiver = Arbeidsgiver.virksomhet(ORGNR); BeregningsgrunnlagDto Beregningsgrunnlag = lagBeregningsgrunnlagMedAvvikUnder25ProsentMedKunSammenligningsgrunnlag(); @@ -247,8 +249,11 @@ public class BeregningsgrunnlagPrStatusOgAndelDtoTjenesteTest { var input = new BeregningsgrunnlagGUIInput(lagReferanseMedStp(koblingReferanse), iayGrunnlag, List.of(), ytelsespesifiktGrunnlag).medBeregningsgrunnlagGrunnlag(grunnlag); BeregningsgrunnlagPrStatusOgAndelDtoTjeneste tjeneste = new BeregningsgrunnlagPrStatusOgAndelDtoTjeneste(); //Act - tjeneste.lagBeregningsgrunnlagPrStatusOgAndelDto(input, - grunnlag.getBeregningsgrunnlagHvisFinnes().get().getBeregningsgrunnlagPerioder().get(0).getBeregningsgrunnlagPrStatusOgAndelList()); + + var beregningsgrunnlagPrStatusOgAndelDtos = tjeneste.lagBeregningsgrunnlagPrStatusOgAndelDto(input, + grunnlag.getBeregningsgrunnlagHvisFinnes().get().getBeregningsgrunnlagPerioder().get(0).getBeregningsgrunnlagPrStatusOgAndelList()); + + assertThat(beregningsgrunnlagPrStatusOgAndelDtos).isNotEmpty(); } diff --git a/kontrakt/src/main/java/no/nav/folketrygdloven/kalkulus/response/v1/beregningsgrunnlag/gui/refusjon/RefusjonAndelTilVurderingDto.java b/kontrakt/src/main/java/no/nav/folketrygdloven/kalkulus/response/v1/beregningsgrunnlag/gui/refusjon/RefusjonAndelTilVurderingDto.java index dcd53ab9..85e89e35 100644 --- a/kontrakt/src/main/java/no/nav/folketrygdloven/kalkulus/response/v1/beregningsgrunnlag/gui/refusjon/RefusjonAndelTilVurderingDto.java +++ b/kontrakt/src/main/java/no/nav/folketrygdloven/kalkulus/response/v1/beregningsgrunnlag/gui/refusjon/RefusjonAndelTilVurderingDto.java @@ -72,9 +72,6 @@ public class RefusjonAndelTilVurderingDto { @JsonProperty("maksTillattDelvisRefusjonPrMnd") private Beløp maksTillattDelvisRefusjonPrMnd; - public RefusjonAndelTilVurderingDto() { - } - public AktivitetStatus getAktivitetStatus() { return aktivitetStatus; } diff --git a/kontrakt/src/test/java/no/nav/folketrygdloven/kalkulus/mappers/KontraktTest.java b/kontrakt/src/test/java/no/nav/folketrygdloven/kalkulus/mappers/KontraktTest.java index 44790779..c594afd8 100644 --- a/kontrakt/src/test/java/no/nav/folketrygdloven/kalkulus/mappers/KontraktTest.java +++ b/kontrakt/src/test/java/no/nav/folketrygdloven/kalkulus/mappers/KontraktTest.java @@ -2,13 +2,16 @@ import java.io.IOException; +import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; +import static org.assertj.core.api.Assertions.assertThat; + public class KontraktTest { @Test void skal_teste_at_alle_dtoer_har_nødvendig_validering() throws IOException, ClassNotFoundException { - ValiderKontraktDtoer.validerAlleDtoerIKontraken(); + assertThat(ValiderKontraktDtoer.validerAlleDtoerIKontraken()).isTrue(); } } diff --git a/kontrakt/src/test/java/no/nav/folketrygdloven/kalkulus/mappers/ValiderKontraktDtoer.java b/kontrakt/src/test/java/no/nav/folketrygdloven/kalkulus/mappers/ValiderKontraktDtoer.java index be19fd98..63117cea 100644 --- a/kontrakt/src/test/java/no/nav/folketrygdloven/kalkulus/mappers/ValiderKontraktDtoer.java +++ b/kontrakt/src/test/java/no/nav/folketrygdloven/kalkulus/mappers/ValiderKontraktDtoer.java @@ -58,7 +58,7 @@ public class ValiderKontraktDtoer { } }; - public static void validerAlleDtoerIKontraken() throws IOException, ClassNotFoundException { + public static boolean validerAlleDtoerIKontraken() throws IOException, ClassNotFoundException { Class[] classes = getClasses("no.nav.folketrygdloven.kalkulus"); for (var aClass : classes) { for (var field : getRelevantFields(aClass)) { @@ -74,6 +74,7 @@ public static void validerAlleDtoerIKontraken() throws IOException, ClassNotFoun validerRiktigAnnotert(field); } } + return true; } private static void validerRiktigAnnotert(Field field) {