From 174a5eba6ced5d1ca40194d5647c33b668d57b51 Mon Sep 17 00:00:00 2001 From: Gustav Berggren Date: Thu, 14 Dec 2023 16:33:32 +0100 Subject: [PATCH 1/7] legg til inntektEndringAarsak og test alle caser --- build.gradle.kts | 5 +- gradle.properties | 2 +- .../inntektsmelding/RapportertInntekt.kt | 13 ++++- .../nav/syfo/mapping/InntektsmeldingMapper.kt | 8 ++- .../no/nav/syfo/simba/MapInntektsmelding.kt | 31 ++++++++++- ...ngMapperFraInternSyfoTilHAGKontraktTest.kt | 21 +++++++- .../simba/MapInntektsmeldingFraSimbaTest.kt | 54 ++++++++++++++++--- 7 files changed, 120 insertions(+), 14 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 6998c0f1..7ae2c92e 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -146,8 +146,6 @@ dependencies { runtimeOnly("ch.qos.logback:logback-classic:$logbackClassicVersion") runtimeOnly("io.micrometer:micrometer-registry-prometheus:$micrometerVersion") - implementation("org.junit.jupiter:junit-jupiter-api:$junitJupiterVersion") - implementation("org.junit.jupiter:junit-jupiter-engine:$junitJupiterVersion") implementation("no.nav.teamdokumenthandtering:teamdokumenthandtering-avro-schemas:$joarkHendelseVersion") implementation("org.jetbrains.kotlin:$jetbrainsStdLib") implementation("com.google.guava:guava:$guavaVersion") @@ -201,6 +199,9 @@ dependencies { implementation("no.nav.helsearbeidsgiver:domene-inntektsmelding:$hagDomeneInntektsmeldingVersion") implementation("org.jetbrains.kotlinx:kotlinx-serialization-json:$kotlinxSerializationVersion") + testImplementation("org.junit.jupiter:junit-jupiter-api:$junitJupiterVersion") + testImplementation("org.junit.jupiter:junit-jupiter-engine:$junitJupiterVersion") + testImplementation("org.junit.jupiter:junit-jupiter-params:$junitJupiterVersion") testImplementation(testFixtures("no.nav.helsearbeidsgiver:utils:$hagUtilsVersion")) testImplementation("io.insert-koin:koin-test:$koinVersion") testImplementation("io.ktor:ktor-client-mock-jvm:$ktorVersion") diff --git a/gradle.properties b/gradle.properties index 860131aa..99a5eaaf 100644 --- a/gradle.properties +++ b/gradle.properties @@ -18,7 +18,7 @@ guavaVersion=31.0.1-jre kotlinLibsVersion=kotlin-stdlib-jdk8 postgresVersion=42.3.1 neethiVersion=3.2.0 -imkontraktVersion=2023.10.13-04-47-c372d +imkontraktVersion=2023.12.13-04-13-2ca03 altinnInntektsmeldingVersion=1.2021.02.22-10.45-4201aaea72fb navSyfoCommonVersion=2019.09.25-05-44-08e26429f4e37cd57d99ba4d39fc74099a078b97 vaultJdbcVersion=1.3.7 diff --git a/src/main/kotlin/no/nav/syfo/domain/inntektsmelding/RapportertInntekt.kt b/src/main/kotlin/no/nav/syfo/domain/inntektsmelding/RapportertInntekt.kt index 6327ea15..d1258ef4 100644 --- a/src/main/kotlin/no/nav/syfo/domain/inntektsmelding/RapportertInntekt.kt +++ b/src/main/kotlin/no/nav/syfo/domain/inntektsmelding/RapportertInntekt.kt @@ -1,14 +1,25 @@ package no.nav.syfo.domain.inntektsmelding + +import no.nav.syfo.domain.Periode +import java.time.LocalDate + /** * Basert på Inntekt fra Simba * @see no.nav.helsearbeidsgiver.domene.inntektsmelding.Inntekt - **/ data class RapportertInntekt( val bekreftet: Boolean, val beregnetInntekt: Double, val endringAarsak: String? = null, + val endringAarsakData: SpinnInntektEndringAarsak? = null, val manueltKorrigert: Boolean, ) +data class SpinnInntektEndringAarsak( + val aarsak : String, + val perioder : List? = null, + val gjelderFra : LocalDate? = null, + val bleKjent: LocalDate? = null +) + diff --git a/src/main/kotlin/no/nav/syfo/mapping/InntektsmeldingMapper.kt b/src/main/kotlin/no/nav/syfo/mapping/InntektsmeldingMapper.kt index efc3d1aa..4619fa41 100644 --- a/src/main/kotlin/no/nav/syfo/mapping/InntektsmeldingMapper.kt +++ b/src/main/kotlin/no/nav/syfo/mapping/InntektsmeldingMapper.kt @@ -4,6 +4,7 @@ import no.nav.inntektsmeldingkontrakt.Arbeidsgivertype import no.nav.inntektsmeldingkontrakt.AvsenderSystem import no.nav.inntektsmeldingkontrakt.EndringIRefusjon import no.nav.inntektsmeldingkontrakt.GjenopptakelseNaturalytelse +import no.nav.inntektsmeldingkontrakt.InntektEndringAarsak import no.nav.inntektsmeldingkontrakt.Naturalytelse import no.nav.inntektsmeldingkontrakt.OpphoerAvNaturalytelse import no.nav.inntektsmeldingkontrakt.Periode @@ -11,6 +12,7 @@ import no.nav.inntektsmeldingkontrakt.Refusjon import no.nav.inntektsmeldingkontrakt.Status import no.nav.syfo.domain.inntektsmelding.Gyldighetsstatus import no.nav.syfo.domain.inntektsmelding.Inntektsmelding +import no.nav.syfo.domain.inntektsmelding.SpinnInntektEndringAarsak fun mapInntektsmeldingKontrakt( inntektsmelding: Inntektsmelding, @@ -45,10 +47,14 @@ fun mapInntektsmeldingKontrakt( innsenderFulltNavn = inntektsmelding.kontaktinformasjon.navn.orEmpty(), innsenderTelefon = inntektsmelding.kontaktinformasjon.telefon.orEmpty(), naerRelasjon = inntektsmelding.nærRelasjon, - avsenderSystem = mapAvsenderSystem(inntektsmelding.avsenderSystem) + avsenderSystem = mapAvsenderSystem(inntektsmelding.avsenderSystem), + inntektEndringAarsak = inntektsmelding.rapportertInntekt?.endringAarsakData?.tilInntektEndringAarsak() ) } +fun SpinnInntektEndringAarsak.tilInntektEndringAarsak(): InntektEndringAarsak += InntektEndringAarsak(aarsak, perioder?.map { Periode(it.fom, it.tom) }, gjelderFra, bleKjent) + fun mapFerieperioder(inntektsmelding: Inntektsmelding): List { return inntektsmelding.feriePerioder.map { p -> Periode(p.fom, p.tom) } } diff --git a/src/main/kotlin/no/nav/syfo/simba/MapInntektsmelding.kt b/src/main/kotlin/no/nav/syfo/simba/MapInntektsmelding.kt index f5859b3d..50315cad 100644 --- a/src/main/kotlin/no/nav/syfo/simba/MapInntektsmelding.kt +++ b/src/main/kotlin/no/nav/syfo/simba/MapInntektsmelding.kt @@ -26,9 +26,11 @@ import no.nav.syfo.domain.inntektsmelding.Naturalytelse import no.nav.syfo.domain.inntektsmelding.OpphoerAvNaturalytelse import no.nav.syfo.domain.inntektsmelding.RapportertInntekt import no.nav.syfo.domain.inntektsmelding.Refusjon +import no.nav.syfo.domain.inntektsmelding.SpinnInntektEndringAarsak import java.time.LocalDateTime import no.nav.helsearbeidsgiver.domene.inntektsmelding.Inntektsmelding as InntektmeldingSimba + fun mapInntektsmelding(arkivreferanse: String, aktorId: String, journalpostId: String, im: InntektmeldingSimba): Inntektsmelding { return Inntektsmelding( id = "", @@ -75,7 +77,8 @@ fun Inntekt.tilRapportertInntekt() = RapportertInntekt( bekreftet = this.bekreftet, beregnetInntekt = this.beregnetInntekt, - endringAarsak = this.endringÅrsak?.aarsak(), + endringAarsak = this.endringÅrsak?.tilSpinnInntektEndringAarsak()?.aarsak, + endringAarsakData = this.endringÅrsak?.tilSpinnInntektEndringAarsak(), manueltKorrigert = this.manueltKorrigert ) @@ -95,3 +98,29 @@ fun InntektEndringAarsak.aarsak(): String = is Feilregistrert -> "Feilregistrert" else -> this::class.simpleName ?: "Ukjent" } + + +fun InntektEndringAarsak.tilNyKontrakt() : SpinnInntektEndringAarsak? { + + this::class.simpleName?.let { + return SpinnInntektEndringAarsak(aarsak = it) + } + return null +} + + +fun InntektEndringAarsak.tilSpinnInntektEndringAarsak(): SpinnInntektEndringAarsak = + when (this) { + is Permisjon -> SpinnInntektEndringAarsak(aarsak = "Permisjon", perioder = liste.map { Periode(it.fom, it.tom) }) + is Ferie -> SpinnInntektEndringAarsak(aarsak = "Ferie", perioder = liste.map { Periode(it.fom, it.tom) }) + is Ferietrekk -> SpinnInntektEndringAarsak(aarsak = "Ferietrekk") + is Permittering -> SpinnInntektEndringAarsak(aarsak = "Permittering", perioder = liste.map { Periode(it.fom, it.tom) }) + is Tariffendring -> SpinnInntektEndringAarsak("Tariffendring", gjelderFra = gjelderFra, bleKjent = bleKjent) + is VarigLonnsendring -> SpinnInntektEndringAarsak("VarigLonnsendring", gjelderFra = gjelderFra) + is NyStilling -> SpinnInntektEndringAarsak(aarsak = "NyStilling", gjelderFra = gjelderFra) + is NyStillingsprosent -> SpinnInntektEndringAarsak(aarsak = "NyStillingsprosent", gjelderFra = gjelderFra) + is Bonus -> SpinnInntektEndringAarsak(aarsak = "Bonus") + is Sykefravaer -> SpinnInntektEndringAarsak(aarsak = "Sykefravaer", perioder = liste.map { Periode(it.fom, it.tom) }) + is Nyansatt -> SpinnInntektEndringAarsak(aarsak = "Nyansatt") + is Feilregistrert -> SpinnInntektEndringAarsak(aarsak = "Feilregistrert") + } diff --git a/src/test/kotlin/no/nav/syfo/mapping/InntektsmeldingMapperFraInternSyfoTilHAGKontraktTest.kt b/src/test/kotlin/no/nav/syfo/mapping/InntektsmeldingMapperFraInternSyfoTilHAGKontraktTest.kt index 1e56c446..c84bf1c6 100644 --- a/src/test/kotlin/no/nav/syfo/mapping/InntektsmeldingMapperFraInternSyfoTilHAGKontraktTest.kt +++ b/src/test/kotlin/no/nav/syfo/mapping/InntektsmeldingMapperFraInternSyfoTilHAGKontraktTest.kt @@ -1,13 +1,17 @@ package no.nav.syfo.mapping import no.nav.helsearbeidsgiver.domene.inntektsmelding.BegrunnelseIngenEllerRedusertUtbetalingKode +import no.nav.syfo.domain.Periode import no.nav.syfo.domain.inntektsmelding.Gyldighetsstatus import no.nav.syfo.domain.inntektsmelding.Kontaktinformasjon +import no.nav.syfo.domain.inntektsmelding.RapportertInntekt +import no.nav.syfo.domain.inntektsmelding.SpinnInntektEndringAarsak import no.nav.syfo.grunnleggendeInntektsmelding import org.junit.jupiter.api.Assertions.assertEquals import org.junit.jupiter.api.Assertions.assertNull import org.junit.jupiter.api.Test import java.math.BigDecimal +import java.time.LocalDate import java.util.UUID class InntektsmeldingMapperFraInternSyfoTilHAGKontraktTest { @@ -34,7 +38,18 @@ class InntektsmeldingMapperFraInternSyfoTilHAGKontraktTest { val syfoInternInntektsmelding = grunnleggendeInntektsmelding.copy( bruttoUtbetalt = bruttoUtbetalt, begrunnelseRedusert = begrunnelse, - kontaktinformasjon = Kontaktinformasjon(navn = innsenderNavn, telefon = innsenderTelefon) + kontaktinformasjon = Kontaktinformasjon(navn = innsenderNavn, telefon = innsenderTelefon), + avsenderSystem = no.nav.syfo.domain.inntektsmelding.AvsenderSystem("NAV_NO", "1.0"), + rapportertInntekt = RapportertInntekt( + bekreftet = true, + beregnetInntekt = 39013.0, + endringAarsak = "Ferie", + endringAarsakData = SpinnInntektEndringAarsak( + aarsak = "Ferie", + perioder = listOf(Periode(LocalDate.of(2021, 1, 1), LocalDate.of(2021, 1, 31))), + ), + manueltKorrigert = true + ) ) val inntektsmelding = mapInntektsmeldingKontrakt( syfoInternInntektsmelding, @@ -47,5 +62,9 @@ class InntektsmeldingMapperFraInternSyfoTilHAGKontraktTest { assertEquals(begrunnelse, inntektsmelding.begrunnelseForReduksjonEllerIkkeUtbetalt) assertEquals(innsenderNavn, inntektsmelding.innsenderFulltNavn) assertEquals(innsenderTelefon, inntektsmelding.innsenderTelefon) + assertEquals("Ferie", inntektsmelding.inntektEndringAarsak?.aarsak) + assertEquals(1, inntektsmelding.inntektEndringAarsak?.perioder?.size) + assertNull(inntektsmelding.inntektEndringAarsak?.gjelderFra) + assertNull(inntektsmelding.inntektEndringAarsak?.bleKjent) } } diff --git a/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt b/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt index bb3e7e23..01973330 100644 --- a/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt +++ b/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt @@ -8,6 +8,7 @@ import no.nav.helsearbeidsgiver.domene.inntektsmelding.Ferie import no.nav.helsearbeidsgiver.domene.inntektsmelding.Ferietrekk import no.nav.helsearbeidsgiver.domene.inntektsmelding.FullLoennIArbeidsgiverPerioden import no.nav.helsearbeidsgiver.domene.inntektsmelding.Inntekt +import no.nav.helsearbeidsgiver.domene.inntektsmelding.InntektEndringAarsak import no.nav.helsearbeidsgiver.domene.inntektsmelding.Inntektsmelding import no.nav.helsearbeidsgiver.domene.inntektsmelding.Naturalytelse import no.nav.helsearbeidsgiver.domene.inntektsmelding.NaturalytelseKode @@ -22,14 +23,35 @@ import no.nav.helsearbeidsgiver.domene.inntektsmelding.RefusjonEndring import no.nav.helsearbeidsgiver.domene.inntektsmelding.Sykefravaer import no.nav.helsearbeidsgiver.domene.inntektsmelding.Tariffendring import no.nav.helsearbeidsgiver.domene.inntektsmelding.VarigLonnsendring +import no.nav.syfo.domain.inntektsmelding.SpinnInntektEndringAarsak import org.junit.jupiter.api.Assertions.assertEquals import org.junit.jupiter.api.Assertions.assertNull import org.junit.jupiter.api.Test +import org.junit.jupiter.params.ParameterizedTest +import org.junit.jupiter.params.provider.MethodSource import java.time.LocalDate import java.time.OffsetDateTime class MapInntektsmeldingFraSimbaTest { + companion object { + @JvmStatic + fun inntektEndringerProvider() = listOf( + Pair(Mock.spinntInntektEndringBonus, Mock.bonus), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Feilregistrert"), Feilregistrert), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Ferie", perioder = listOf(Mock.spinnPeriode)), Ferie(liste = listOf(Mock.periode))), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Ferietrekk"), Ferietrekk), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Nyansatt"), Nyansatt), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "NyStilling", gjelderFra = Mock.gjelderFra), NyStilling(gjelderFra = Mock.gjelderFra)), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "NyStillingsprosent", gjelderFra = Mock.gjelderFra), NyStillingsprosent(gjelderFra = Mock.gjelderFra)), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Permisjon", perioder = listOf(Mock.spinnPeriode)), Permisjon(liste = listOf(Mock.periode))), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Permittering", perioder = listOf(Mock.spinnPeriode)), Permittering(liste = listOf(Mock.periode))), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Sykefravaer", perioder = listOf(Mock.spinnPeriode)), Sykefravaer(liste = listOf(Mock.periode))), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Tariffendring", gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent), Tariffendring(gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent)), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "VarigLonnsendring", gjelderFra = Mock.gjelderFra), VarigLonnsendring(gjelderFra = Mock.gjelderFra)), + ) + } + @Test fun mapInntektsmeldingMedNaturalytelser() { val naturalytelser = NaturalytelseKode.entries.map { Naturalytelse(it, LocalDate.now(), 1.0) } @@ -80,10 +102,11 @@ class MapInntektsmeldingFraSimbaTest { @Test fun mapInntektEndringAArsak() { - val im = mapInntektsmelding("1", "2", "3", lagInntektsmelding().copy(inntekt = lagInntekt())) + val im = mapInntektsmelding("1", "2", "3", lagInntektsmelding().copy(inntekt = Mock.inntektEndringBonus)) assertEquals("", im.begrunnelseRedusert) assertNull(im.bruttoUtbetalt) assertEquals("Bonus", im.rapportertInntekt?.endringAarsak) + } @Test @@ -102,12 +125,29 @@ class MapInntektsmeldingFraSimbaTest { assertEquals("Feilregistrert", Feilregistrert.aarsak()) } - private fun lagInntekt() = Inntekt( - bekreftet = true, - beregnetInntekt = 100_000.0, - endringÅrsak = Bonus(), - manueltKorrigert = false - ) + @ParameterizedTest + @MethodSource("inntektEndringerProvider") + fun testWithMultipleInntektEndringAarsak(pair: Pair) { + val (spinnInntektEndringAarsak, inntektEndringAarsak) = pair + assertEquals(spinnInntektEndringAarsak, inntektEndringAarsak.tilSpinnInntektEndringAarsak()) + } + object Mock { + val periode = Periode(LocalDate.of(2021, 1,1), LocalDate.of(2021, 1,30)) + val gjelderFra = LocalDate.of(2021, 1,1) + val bleKjent = LocalDate.of(2021, 5,1) + val bonus = Bonus() + val forslagInntekt = 50_000.0 + val endretInntekt = 60_000.0 + val inntektUtenEndring = Inntekt( + bekreftet = true, + beregnetInntekt = forslagInntekt, + manueltKorrigert = false + ) + val spinnPeriode = no.nav.syfo.domain.Periode(fom = periode.fom, tom = periode.tom) + val inntektEndringBonus = inntektUtenEndring.copy(beregnetInntekt = endretInntekt, endringÅrsak = bonus, manueltKorrigert = true) + val spinntInntektEndringBonus = SpinnInntektEndringAarsak(aarsak = "Bonus") + } + private fun lagInntektsmelding(): Inntektsmelding { val dato1 = LocalDate.now().minusDays(7) From 3df9f70b4e0ca0536b839e7cba10ef5b829f78d1 Mon Sep 17 00:00:00 2001 From: Gustav Berggren Date: Fri, 15 Dec 2023 10:23:34 +0100 Subject: [PATCH 2/7] flytt til egen testklasse --- .../MapInntektEndringAarsakFraSimbaTest.kt | 86 +++++++++++++++++++ .../simba/MapInntektsmeldingFraSimbaTest.kt | 69 +++------------ 2 files changed, 97 insertions(+), 58 deletions(-) create mode 100644 src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt diff --git a/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt b/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt new file mode 100644 index 00000000..78d8327a --- /dev/null +++ b/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt @@ -0,0 +1,86 @@ +package no.nav.syfo.simba + +import no.nav.helsearbeidsgiver.domene.inntektsmelding.AarsakInnsending +import no.nav.helsearbeidsgiver.domene.inntektsmelding.BegrunnelseIngenEllerRedusertUtbetalingKode +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Bonus +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Feilregistrert +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Ferie +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Ferietrekk +import no.nav.helsearbeidsgiver.domene.inntektsmelding.FullLoennIArbeidsgiverPerioden +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Inntekt +import no.nav.helsearbeidsgiver.domene.inntektsmelding.InntektEndringAarsak +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Inntektsmelding +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Naturalytelse +import no.nav.helsearbeidsgiver.domene.inntektsmelding.NaturalytelseKode +import no.nav.helsearbeidsgiver.domene.inntektsmelding.NyStilling +import no.nav.helsearbeidsgiver.domene.inntektsmelding.NyStillingsprosent +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Nyansatt +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Periode +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Permisjon +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Permittering +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Refusjon +import no.nav.helsearbeidsgiver.domene.inntektsmelding.RefusjonEndring +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Sykefravaer +import no.nav.helsearbeidsgiver.domene.inntektsmelding.Tariffendring +import no.nav.helsearbeidsgiver.domene.inntektsmelding.VarigLonnsendring +import no.nav.syfo.domain.inntektsmelding.SpinnInntektEndringAarsak +import org.junit.jupiter.api.Assertions.assertEquals +import org.junit.jupiter.api.Assertions.assertNull +import org.junit.jupiter.api.Test +import org.junit.jupiter.params.ParameterizedTest +import org.junit.jupiter.params.provider.MethodSource +import java.time.LocalDate +import java.time.OffsetDateTime + +class MapInntektEndringAarsakFraSimbaTest { + + companion object { + + // SpinnInntektEndringAarsak som tilsvarer InntektEndringAarsak + @JvmStatic + fun inntektEndringerProvider() = listOf( + Pair(Mock.spinntInntektEndringBonus, Bonus()), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Feilregistrert"), Feilregistrert), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Ferie", perioder = listOf(Mock.spinnPeriode)), Ferie(liste = listOf(Mock.periode))), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Ferietrekk"), Ferietrekk), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Nyansatt"), Nyansatt), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "NyStilling", gjelderFra = Mock.gjelderFra), NyStilling(gjelderFra = Mock.gjelderFra)), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "NyStillingsprosent", gjelderFra = Mock.gjelderFra), NyStillingsprosent(gjelderFra = Mock.gjelderFra)), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Permisjon", perioder = listOf(Mock.spinnPeriode)), Permisjon(liste = listOf(Mock.periode))), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Permittering", perioder = listOf(Mock.spinnPeriode)), Permittering(liste = listOf(Mock.periode))), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Sykefravaer", perioder = listOf(Mock.spinnPeriode)), Sykefravaer(liste = listOf(Mock.periode))), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Tariffendring", gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent), Tariffendring(gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent)), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "VarigLonnsendring", gjelderFra = Mock.gjelderFra), VarigLonnsendring(gjelderFra = Mock.gjelderFra)), + ) + } + + object Mock { + val periode = Periode(LocalDate.of(2021, 1,1), LocalDate.of(2021, 1,30)) + val gjelderFra = LocalDate.of(2021, 1,1) + val bleKjent = LocalDate.of(2021, 5,1) + val spinnPeriode = no.nav.syfo.domain.Periode(fom = periode.fom, tom = periode.tom) + val spinntInntektEndringBonus = SpinnInntektEndringAarsak(aarsak = "Bonus") + } + @ParameterizedTest + @MethodSource("inntektEndringerProvider") + fun testWithMultipleInntektEndringAarsak(pair: Pair) { + val (spinnInntektEndringAarsak, inntektEndringAarsak) = pair + assertEquals(spinnInntektEndringAarsak, inntektEndringAarsak.tilSpinnInntektEndringAarsak()) + } + + @Test + fun oversettInntektEndringAarsakTilRapportertInntektEndringAarsak() { + assertEquals("Permisjon", Permisjon(emptyList()).aarsak()) + assertEquals("Ferie", Ferie(emptyList()).aarsak()) + assertEquals("Ferietrekk", Ferietrekk.aarsak()) + assertEquals("Permittering", Permittering(emptyList()).aarsak()) + assertEquals("Tariffendring", Tariffendring(LocalDate.now(), LocalDate.now()).aarsak()) + assertEquals("VarigLonnsendring", VarigLonnsendring(LocalDate.now()).aarsak()) + assertEquals("NyStilling", NyStilling(LocalDate.now()).aarsak()) + assertEquals("NyStillingsprosent", NyStillingsprosent(LocalDate.now()).aarsak()) + assertEquals("Bonus", Bonus().aarsak()) + assertEquals("Sykefravaer", Sykefravaer(emptyList()).aarsak()) + assertEquals("Nyansatt", Nyansatt.aarsak()) + assertEquals("Feilregistrert", Feilregistrert.aarsak()) + } +} diff --git a/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt b/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt index 01973330..3895c155 100644 --- a/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt +++ b/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt @@ -33,25 +33,6 @@ import java.time.LocalDate import java.time.OffsetDateTime class MapInntektsmeldingFraSimbaTest { - - companion object { - @JvmStatic - fun inntektEndringerProvider() = listOf( - Pair(Mock.spinntInntektEndringBonus, Mock.bonus), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Feilregistrert"), Feilregistrert), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Ferie", perioder = listOf(Mock.spinnPeriode)), Ferie(liste = listOf(Mock.periode))), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Ferietrekk"), Ferietrekk), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Nyansatt"), Nyansatt), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "NyStilling", gjelderFra = Mock.gjelderFra), NyStilling(gjelderFra = Mock.gjelderFra)), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "NyStillingsprosent", gjelderFra = Mock.gjelderFra), NyStillingsprosent(gjelderFra = Mock.gjelderFra)), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Permisjon", perioder = listOf(Mock.spinnPeriode)), Permisjon(liste = listOf(Mock.periode))), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Permittering", perioder = listOf(Mock.spinnPeriode)), Permittering(liste = listOf(Mock.periode))), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Sykefravaer", perioder = listOf(Mock.spinnPeriode)), Sykefravaer(liste = listOf(Mock.periode))), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Tariffendring", gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent), Tariffendring(gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent)), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "VarigLonnsendring", gjelderFra = Mock.gjelderFra), VarigLonnsendring(gjelderFra = Mock.gjelderFra)), - ) - } - @Test fun mapInntektsmeldingMedNaturalytelser() { val naturalytelser = NaturalytelseKode.entries.map { Naturalytelse(it, LocalDate.now(), 1.0) } @@ -109,45 +90,6 @@ class MapInntektsmeldingFraSimbaTest { } - @Test - fun oversettInntektEndringAarsakTilRapportertInntektEndringAarsak() { - assertEquals("Permisjon", Permisjon(emptyList()).aarsak()) - assertEquals("Ferie", Ferie(emptyList()).aarsak()) - assertEquals("Ferietrekk", Ferietrekk.aarsak()) - assertEquals("Permittering", Permittering(emptyList()).aarsak()) - assertEquals("Tariffendring", Tariffendring(LocalDate.now(), LocalDate.now()).aarsak()) - assertEquals("VarigLonnsendring", VarigLonnsendring(LocalDate.now()).aarsak()) - assertEquals("NyStilling", NyStilling(LocalDate.now()).aarsak()) - assertEquals("NyStillingsprosent", NyStillingsprosent(LocalDate.now()).aarsak()) - assertEquals("Bonus", Bonus().aarsak()) - assertEquals("Sykefravaer", Sykefravaer(emptyList()).aarsak()) - assertEquals("Nyansatt", Nyansatt.aarsak()) - assertEquals("Feilregistrert", Feilregistrert.aarsak()) - } - - @ParameterizedTest - @MethodSource("inntektEndringerProvider") - fun testWithMultipleInntektEndringAarsak(pair: Pair) { - val (spinnInntektEndringAarsak, inntektEndringAarsak) = pair - assertEquals(spinnInntektEndringAarsak, inntektEndringAarsak.tilSpinnInntektEndringAarsak()) - } - object Mock { - val periode = Periode(LocalDate.of(2021, 1,1), LocalDate.of(2021, 1,30)) - val gjelderFra = LocalDate.of(2021, 1,1) - val bleKjent = LocalDate.of(2021, 5,1) - val bonus = Bonus() - val forslagInntekt = 50_000.0 - val endretInntekt = 60_000.0 - val inntektUtenEndring = Inntekt( - bekreftet = true, - beregnetInntekt = forslagInntekt, - manueltKorrigert = false - ) - val spinnPeriode = no.nav.syfo.domain.Periode(fom = periode.fom, tom = periode.tom) - val inntektEndringBonus = inntektUtenEndring.copy(beregnetInntekt = endretInntekt, endringÅrsak = bonus, manueltKorrigert = true) - val spinntInntektEndringBonus = SpinnInntektEndringAarsak(aarsak = "Bonus") - } - private fun lagInntektsmelding(): Inntektsmelding { val dato1 = LocalDate.now().minusDays(7) @@ -180,4 +122,15 @@ class MapInntektsmeldingFraSimbaTest { ) return imFraSimba } + object Mock { + val bonus = Bonus() + val forslagInntekt = 50_000.0 + val endretInntekt = 60_000.0 + val inntektUtenEndring = Inntekt( + bekreftet = true, + beregnetInntekt = forslagInntekt, + manueltKorrigert = false + ) + val inntektEndringBonus = inntektUtenEndring.copy(beregnetInntekt = endretInntekt, endringÅrsak = bonus, manueltKorrigert = true) + } } From 4d30d90ef1eef498726a964919aa17744873c399 Mon Sep 17 00:00:00 2001 From: Gustav Berggren Date: Fri, 15 Dec 2023 10:52:13 +0100 Subject: [PATCH 3/7] fiks formattering og diverse forenklinger --- .../inntektsmelding/RapportertInntekt.kt | 7 ++--- .../no/nav/syfo/simba/MapInntektsmelding.kt | 31 +++---------------- .../MapInntektEndringAarsakFraSimbaTest.kt | 11 ------- .../simba/MapInntektsmeldingFraSimbaTest.kt | 20 +++--------- 4 files changed, 11 insertions(+), 58 deletions(-) diff --git a/src/main/kotlin/no/nav/syfo/domain/inntektsmelding/RapportertInntekt.kt b/src/main/kotlin/no/nav/syfo/domain/inntektsmelding/RapportertInntekt.kt index d1258ef4..7fefbe12 100644 --- a/src/main/kotlin/no/nav/syfo/domain/inntektsmelding/RapportertInntekt.kt +++ b/src/main/kotlin/no/nav/syfo/domain/inntektsmelding/RapportertInntekt.kt @@ -1,6 +1,5 @@ package no.nav.syfo.domain.inntektsmelding - import no.nav.syfo.domain.Periode import java.time.LocalDate @@ -17,9 +16,9 @@ data class RapportertInntekt( val manueltKorrigert: Boolean, ) data class SpinnInntektEndringAarsak( - val aarsak : String, - val perioder : List? = null, - val gjelderFra : LocalDate? = null, + val aarsak: String, + val perioder: List? = null, + val gjelderFra: LocalDate? = null, val bleKjent: LocalDate? = null ) diff --git a/src/main/kotlin/no/nav/syfo/simba/MapInntektsmelding.kt b/src/main/kotlin/no/nav/syfo/simba/MapInntektsmelding.kt index 50315cad..a3a70f0c 100644 --- a/src/main/kotlin/no/nav/syfo/simba/MapInntektsmelding.kt +++ b/src/main/kotlin/no/nav/syfo/simba/MapInntektsmelding.kt @@ -77,39 +77,15 @@ fun Inntekt.tilRapportertInntekt() = RapportertInntekt( bekreftet = this.bekreftet, beregnetInntekt = this.beregnetInntekt, - endringAarsak = this.endringÅrsak?.tilSpinnInntektEndringAarsak()?.aarsak, + endringAarsak = this.endringÅrsak?.aarsak(), endringAarsakData = this.endringÅrsak?.tilSpinnInntektEndringAarsak(), manueltKorrigert = this.manueltKorrigert ) fun InntektEndringAarsak.aarsak(): String = - when (this) { - is Permisjon -> "Permisjon" - is Ferie -> "Ferie" - is Ferietrekk -> "Ferietrekk" - is Permittering -> "Permittering" - is Tariffendring -> "Tariffendring" - is VarigLonnsendring -> "VarigLonnsendring" - is NyStilling -> "NyStilling" - is NyStillingsprosent -> "NyStillingsprosent" - is Bonus -> "Bonus" - is Sykefravaer -> "Sykefravaer" - is Nyansatt -> "Nyansatt" - is Feilregistrert -> "Feilregistrert" - else -> this::class.simpleName ?: "Ukjent" - } - - -fun InntektEndringAarsak.tilNyKontrakt() : SpinnInntektEndringAarsak? { - - this::class.simpleName?.let { - return SpinnInntektEndringAarsak(aarsak = it) - } - return null -} - + this.tilSpinnInntektEndringAarsak()?.aarsak ?: this::class.simpleName ?: "Ukjent" -fun InntektEndringAarsak.tilSpinnInntektEndringAarsak(): SpinnInntektEndringAarsak = +fun InntektEndringAarsak.tilSpinnInntektEndringAarsak(): SpinnInntektEndringAarsak? = when (this) { is Permisjon -> SpinnInntektEndringAarsak(aarsak = "Permisjon", perioder = liste.map { Periode(it.fom, it.tom) }) is Ferie -> SpinnInntektEndringAarsak(aarsak = "Ferie", perioder = liste.map { Periode(it.fom, it.tom) }) @@ -123,4 +99,5 @@ fun InntektEndringAarsak.tilSpinnInntektEndringAarsak(): SpinnInntektEndringAars is Sykefravaer -> SpinnInntektEndringAarsak(aarsak = "Sykefravaer", perioder = liste.map { Periode(it.fom, it.tom) }) is Nyansatt -> SpinnInntektEndringAarsak(aarsak = "Nyansatt") is Feilregistrert -> SpinnInntektEndringAarsak(aarsak = "Feilregistrert") + else -> null } diff --git a/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt b/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt index 78d8327a..4e92f619 100644 --- a/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt +++ b/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt @@ -1,36 +1,25 @@ package no.nav.syfo.simba -import no.nav.helsearbeidsgiver.domene.inntektsmelding.AarsakInnsending -import no.nav.helsearbeidsgiver.domene.inntektsmelding.BegrunnelseIngenEllerRedusertUtbetalingKode import no.nav.helsearbeidsgiver.domene.inntektsmelding.Bonus import no.nav.helsearbeidsgiver.domene.inntektsmelding.Feilregistrert import no.nav.helsearbeidsgiver.domene.inntektsmelding.Ferie import no.nav.helsearbeidsgiver.domene.inntektsmelding.Ferietrekk -import no.nav.helsearbeidsgiver.domene.inntektsmelding.FullLoennIArbeidsgiverPerioden -import no.nav.helsearbeidsgiver.domene.inntektsmelding.Inntekt import no.nav.helsearbeidsgiver.domene.inntektsmelding.InntektEndringAarsak -import no.nav.helsearbeidsgiver.domene.inntektsmelding.Inntektsmelding -import no.nav.helsearbeidsgiver.domene.inntektsmelding.Naturalytelse -import no.nav.helsearbeidsgiver.domene.inntektsmelding.NaturalytelseKode import no.nav.helsearbeidsgiver.domene.inntektsmelding.NyStilling import no.nav.helsearbeidsgiver.domene.inntektsmelding.NyStillingsprosent import no.nav.helsearbeidsgiver.domene.inntektsmelding.Nyansatt import no.nav.helsearbeidsgiver.domene.inntektsmelding.Periode import no.nav.helsearbeidsgiver.domene.inntektsmelding.Permisjon import no.nav.helsearbeidsgiver.domene.inntektsmelding.Permittering -import no.nav.helsearbeidsgiver.domene.inntektsmelding.Refusjon -import no.nav.helsearbeidsgiver.domene.inntektsmelding.RefusjonEndring import no.nav.helsearbeidsgiver.domene.inntektsmelding.Sykefravaer import no.nav.helsearbeidsgiver.domene.inntektsmelding.Tariffendring import no.nav.helsearbeidsgiver.domene.inntektsmelding.VarigLonnsendring import no.nav.syfo.domain.inntektsmelding.SpinnInntektEndringAarsak import org.junit.jupiter.api.Assertions.assertEquals -import org.junit.jupiter.api.Assertions.assertNull import org.junit.jupiter.api.Test import org.junit.jupiter.params.ParameterizedTest import org.junit.jupiter.params.provider.MethodSource import java.time.LocalDate -import java.time.OffsetDateTime class MapInntektEndringAarsakFraSimbaTest { diff --git a/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt b/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt index 3895c155..a32d833f 100644 --- a/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt +++ b/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt @@ -3,32 +3,17 @@ package no.nav.syfo.simba import no.nav.helsearbeidsgiver.domene.inntektsmelding.AarsakInnsending import no.nav.helsearbeidsgiver.domene.inntektsmelding.BegrunnelseIngenEllerRedusertUtbetalingKode import no.nav.helsearbeidsgiver.domene.inntektsmelding.Bonus -import no.nav.helsearbeidsgiver.domene.inntektsmelding.Feilregistrert -import no.nav.helsearbeidsgiver.domene.inntektsmelding.Ferie -import no.nav.helsearbeidsgiver.domene.inntektsmelding.Ferietrekk import no.nav.helsearbeidsgiver.domene.inntektsmelding.FullLoennIArbeidsgiverPerioden import no.nav.helsearbeidsgiver.domene.inntektsmelding.Inntekt -import no.nav.helsearbeidsgiver.domene.inntektsmelding.InntektEndringAarsak import no.nav.helsearbeidsgiver.domene.inntektsmelding.Inntektsmelding import no.nav.helsearbeidsgiver.domene.inntektsmelding.Naturalytelse import no.nav.helsearbeidsgiver.domene.inntektsmelding.NaturalytelseKode -import no.nav.helsearbeidsgiver.domene.inntektsmelding.NyStilling -import no.nav.helsearbeidsgiver.domene.inntektsmelding.NyStillingsprosent -import no.nav.helsearbeidsgiver.domene.inntektsmelding.Nyansatt import no.nav.helsearbeidsgiver.domene.inntektsmelding.Periode -import no.nav.helsearbeidsgiver.domene.inntektsmelding.Permisjon -import no.nav.helsearbeidsgiver.domene.inntektsmelding.Permittering import no.nav.helsearbeidsgiver.domene.inntektsmelding.Refusjon import no.nav.helsearbeidsgiver.domene.inntektsmelding.RefusjonEndring -import no.nav.helsearbeidsgiver.domene.inntektsmelding.Sykefravaer -import no.nav.helsearbeidsgiver.domene.inntektsmelding.Tariffendring -import no.nav.helsearbeidsgiver.domene.inntektsmelding.VarigLonnsendring -import no.nav.syfo.domain.inntektsmelding.SpinnInntektEndringAarsak import org.junit.jupiter.api.Assertions.assertEquals import org.junit.jupiter.api.Assertions.assertNull import org.junit.jupiter.api.Test -import org.junit.jupiter.params.ParameterizedTest -import org.junit.jupiter.params.provider.MethodSource import java.time.LocalDate import java.time.OffsetDateTime @@ -87,7 +72,10 @@ class MapInntektsmeldingFraSimbaTest { assertEquals("", im.begrunnelseRedusert) assertNull(im.bruttoUtbetalt) assertEquals("Bonus", im.rapportertInntekt?.endringAarsak) - + assertEquals("Bonus", im.rapportertInntekt?.endringAarsakData?.aarsak) + assertNull(im.rapportertInntekt?.endringAarsakData?.perioder) + assertNull(im.rapportertInntekt?.endringAarsakData?.gjelderFra) + assertNull(im.rapportertInntekt?.endringAarsakData?.bleKjent) } From 67b54799c76360c50b19d46a7190b04307dcb991 Mon Sep 17 00:00:00 2001 From: Gustav Berggren Date: Fri, 15 Dec 2023 11:03:58 +0100 Subject: [PATCH 4/7] Rename test og ktlint formattering --- .../nav/syfo/domain/inntektsmelding/RapportertInntekt.kt | 1 - .../kotlin/no/nav/syfo/mapping/InntektsmeldingMapper.kt | 9 +++++++-- src/main/kotlin/no/nav/syfo/simba/MapInntektsmelding.kt | 1 - .../syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt | 2 +- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/main/kotlin/no/nav/syfo/domain/inntektsmelding/RapportertInntekt.kt b/src/main/kotlin/no/nav/syfo/domain/inntektsmelding/RapportertInntekt.kt index 7fefbe12..b9d08a23 100644 --- a/src/main/kotlin/no/nav/syfo/domain/inntektsmelding/RapportertInntekt.kt +++ b/src/main/kotlin/no/nav/syfo/domain/inntektsmelding/RapportertInntekt.kt @@ -21,4 +21,3 @@ data class SpinnInntektEndringAarsak( val gjelderFra: LocalDate? = null, val bleKjent: LocalDate? = null ) - diff --git a/src/main/kotlin/no/nav/syfo/mapping/InntektsmeldingMapper.kt b/src/main/kotlin/no/nav/syfo/mapping/InntektsmeldingMapper.kt index 4619fa41..c112757e 100644 --- a/src/main/kotlin/no/nav/syfo/mapping/InntektsmeldingMapper.kt +++ b/src/main/kotlin/no/nav/syfo/mapping/InntektsmeldingMapper.kt @@ -52,8 +52,13 @@ fun mapInntektsmeldingKontrakt( ) } -fun SpinnInntektEndringAarsak.tilInntektEndringAarsak(): InntektEndringAarsak -= InntektEndringAarsak(aarsak, perioder?.map { Periode(it.fom, it.tom) }, gjelderFra, bleKjent) +fun SpinnInntektEndringAarsak.tilInntektEndringAarsak(): InntektEndringAarsak = + InntektEndringAarsak( + aarsak = aarsak, + perioder = perioder?.map { Periode(it.fom, it.tom) }, + gjelderFra = gjelderFra, + bleKjent = bleKjent + ) fun mapFerieperioder(inntektsmelding: Inntektsmelding): List { return inntektsmelding.feriePerioder.map { p -> Periode(p.fom, p.tom) } diff --git a/src/main/kotlin/no/nav/syfo/simba/MapInntektsmelding.kt b/src/main/kotlin/no/nav/syfo/simba/MapInntektsmelding.kt index a3a70f0c..587fe4ad 100644 --- a/src/main/kotlin/no/nav/syfo/simba/MapInntektsmelding.kt +++ b/src/main/kotlin/no/nav/syfo/simba/MapInntektsmelding.kt @@ -30,7 +30,6 @@ import no.nav.syfo.domain.inntektsmelding.SpinnInntektEndringAarsak import java.time.LocalDateTime import no.nav.helsearbeidsgiver.domene.inntektsmelding.Inntektsmelding as InntektmeldingSimba - fun mapInntektsmelding(arkivreferanse: String, aktorId: String, journalpostId: String, im: InntektmeldingSimba): Inntektsmelding { return Inntektsmelding( id = "", diff --git a/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt b/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt index 4e92f619..48c636f8 100644 --- a/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt +++ b/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt @@ -52,7 +52,7 @@ class MapInntektEndringAarsakFraSimbaTest { } @ParameterizedTest @MethodSource("inntektEndringerProvider") - fun testWithMultipleInntektEndringAarsak(pair: Pair) { + fun `InntektEndringAarsak mappes til riktig SpinnInntektEndringAarsak`(pair: Pair) { val (spinnInntektEndringAarsak, inntektEndringAarsak) = pair assertEquals(spinnInntektEndringAarsak, inntektEndringAarsak.tilSpinnInntektEndringAarsak()) } From 43d0ecd60e0a76bacd8b28cfd9b1583dd7bfbcba Mon Sep 17 00:00:00 2001 From: Gustav Berggren Date: Fri, 15 Dec 2023 11:13:41 +0100 Subject: [PATCH 5/7] format ktlint --- .../MapInntektEndringAarsakFraSimbaTest.kt | 41 +++++++++++-------- .../simba/MapInntektsmeldingFraSimbaTest.kt | 1 - 2 files changed, 24 insertions(+), 18 deletions(-) diff --git a/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt b/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt index 48c636f8..fda874c7 100644 --- a/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt +++ b/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt @@ -27,27 +27,34 @@ class MapInntektEndringAarsakFraSimbaTest { // SpinnInntektEndringAarsak som tilsvarer InntektEndringAarsak @JvmStatic - fun inntektEndringerProvider() = listOf( - Pair(Mock.spinntInntektEndringBonus, Bonus()), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Feilregistrert"), Feilregistrert), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Ferie", perioder = listOf(Mock.spinnPeriode)), Ferie(liste = listOf(Mock.periode))), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Ferietrekk"), Ferietrekk), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Nyansatt"), Nyansatt), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "NyStilling", gjelderFra = Mock.gjelderFra), NyStilling(gjelderFra = Mock.gjelderFra)), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "NyStillingsprosent", gjelderFra = Mock.gjelderFra), NyStillingsprosent(gjelderFra = Mock.gjelderFra)), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Permisjon", perioder = listOf(Mock.spinnPeriode)), Permisjon(liste = listOf(Mock.periode))), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Permittering", perioder = listOf(Mock.spinnPeriode)), Permittering(liste = listOf(Mock.periode))), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Sykefravaer", perioder = listOf(Mock.spinnPeriode)), Sykefravaer(liste = listOf(Mock.periode))), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Tariffendring", gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent), Tariffendring(gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent)), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "VarigLonnsendring", gjelderFra = Mock.gjelderFra), VarigLonnsendring(gjelderFra = Mock.gjelderFra)), + fun inntektEndringerProvider() = + listOf( + Pair(Mock.spinntInntektEndringBonus, Bonus()), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Feilregistrert"), Feilregistrert), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Ferie", perioder = listOf(Mock.spinnPeriode)), Ferie(liste = listOf(Mock.periode))), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Ferietrekk"), Ferietrekk), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Nyansatt"), Nyansatt), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "NyStilling", gjelderFra = Mock.gjelderFra), NyStilling(gjelderFra = Mock.gjelderFra)), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "NyStillingsprosent", gjelderFra = Mock.gjelderFra), NyStillingsprosent(gjelderFra = Mock.gjelderFra)), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Permisjon", perioder = listOf(Mock.spinnPeriode)), Permisjon(liste = listOf(Mock.periode))), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Permittering", perioder = listOf(Mock.spinnPeriode)), Permittering(liste = listOf(Mock.periode))), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Sykefravaer", perioder = listOf(Mock.spinnPeriode)), Sykefravaer(liste = listOf(Mock.periode))), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Tariffendring", gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent), Tariffendring(gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent)), + Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "VarigLonnsendring", gjelderFra = Mock.gjelderFra), VarigLonnsendring(gjelderFra = Mock.gjelderFra)), ) } object Mock { - val periode = Periode(LocalDate.of(2021, 1,1), LocalDate.of(2021, 1,30)) - val gjelderFra = LocalDate.of(2021, 1,1) - val bleKjent = LocalDate.of(2021, 5,1) - val spinnPeriode = no.nav.syfo.domain.Periode(fom = periode.fom, tom = periode.tom) + val periode = Periode( + LocalDate.of(2021, 1, 1), + LocalDate.of(2021, 1, 30) + ) + val spinnPeriode = no.nav.syfo.domain.Periode( + fom = periode.fom, + tom = periode.tom + ) + val gjelderFra = LocalDate.of(2021, 1, 1) + val bleKjent = LocalDate.of(2021, 5, 1) val spinntInntektEndringBonus = SpinnInntektEndringAarsak(aarsak = "Bonus") } @ParameterizedTest diff --git a/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt b/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt index a32d833f..245728d8 100644 --- a/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt +++ b/src/test/kotlin/no/nav/syfo/simba/MapInntektsmeldingFraSimbaTest.kt @@ -78,7 +78,6 @@ class MapInntektsmeldingFraSimbaTest { assertNull(im.rapportertInntekt?.endringAarsakData?.bleKjent) } - private fun lagInntektsmelding(): Inntektsmelding { val dato1 = LocalDate.now().minusDays(7) val dato2 = LocalDate.now().minusDays(5) From cba949b9e1bed109ed3214b7230a720b07a8a9a8 Mon Sep 17 00:00:00 2001 From: Gustav Berggren Date: Fri, 15 Dec 2023 12:42:49 +0100 Subject: [PATCH 6/7] fiks typo --- .../MapInntektEndringAarsakFraSimbaTest.kt | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt b/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt index fda874c7..c3f792ee 100644 --- a/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt +++ b/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt @@ -29,18 +29,18 @@ class MapInntektEndringAarsakFraSimbaTest { @JvmStatic fun inntektEndringerProvider() = listOf( - Pair(Mock.spinntInntektEndringBonus, Bonus()), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Feilregistrert"), Feilregistrert), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Ferie", perioder = listOf(Mock.spinnPeriode)), Ferie(liste = listOf(Mock.periode))), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Ferietrekk"), Ferietrekk), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Nyansatt"), Nyansatt), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "NyStilling", gjelderFra = Mock.gjelderFra), NyStilling(gjelderFra = Mock.gjelderFra)), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "NyStillingsprosent", gjelderFra = Mock.gjelderFra), NyStillingsprosent(gjelderFra = Mock.gjelderFra)), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Permisjon", perioder = listOf(Mock.spinnPeriode)), Permisjon(liste = listOf(Mock.periode))), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Permittering", perioder = listOf(Mock.spinnPeriode)), Permittering(liste = listOf(Mock.periode))), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Sykefravaer", perioder = listOf(Mock.spinnPeriode)), Sykefravaer(liste = listOf(Mock.periode))), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "Tariffendring", gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent), Tariffendring(gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent)), - Pair(Mock.spinntInntektEndringBonus.copy(aarsak = "VarigLonnsendring", gjelderFra = Mock.gjelderFra), VarigLonnsendring(gjelderFra = Mock.gjelderFra)), + Pair(Mock.spinnInntektEndringBonus, Bonus()), + Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Feilregistrert"), Feilregistrert), + Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Ferie", perioder = listOf(Mock.spinnPeriode)), Ferie(liste = listOf(Mock.periode))), + Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Ferietrekk"), Ferietrekk), + Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Nyansatt"), Nyansatt), + Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "NyStilling", gjelderFra = Mock.gjelderFra), NyStilling(gjelderFra = Mock.gjelderFra)), + Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "NyStillingsprosent", gjelderFra = Mock.gjelderFra), NyStillingsprosent(gjelderFra = Mock.gjelderFra)), + Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Permisjon", perioder = listOf(Mock.spinnPeriode)), Permisjon(liste = listOf(Mock.periode))), + Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Permittering", perioder = listOf(Mock.spinnPeriode)), Permittering(liste = listOf(Mock.periode))), + Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Sykefravaer", perioder = listOf(Mock.spinnPeriode)), Sykefravaer(liste = listOf(Mock.periode))), + Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Tariffendring", gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent), Tariffendring(gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent)), + Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "VarigLonnsendring", gjelderFra = Mock.gjelderFra), VarigLonnsendring(gjelderFra = Mock.gjelderFra)), ) } @@ -55,7 +55,7 @@ class MapInntektEndringAarsakFraSimbaTest { ) val gjelderFra = LocalDate.of(2021, 1, 1) val bleKjent = LocalDate.of(2021, 5, 1) - val spinntInntektEndringBonus = SpinnInntektEndringAarsak(aarsak = "Bonus") + val spinnInntektEndringBonus = SpinnInntektEndringAarsak(aarsak = "Bonus") } @ParameterizedTest @MethodSource("inntektEndringerProvider") From 4f076b452d69a521197d0d813ef8a107be6f284a Mon Sep 17 00:00:00 2001 From: Gustav Berggren Date: Fri, 15 Dec 2023 12:44:04 +0100 Subject: [PATCH 7/7] rename variabel --- .../MapInntektEndringAarsakFraSimbaTest.kt | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt b/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt index c3f792ee..c8e144b4 100644 --- a/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt +++ b/src/test/kotlin/no/nav/syfo/simba/MapInntektEndringAarsakFraSimbaTest.kt @@ -29,18 +29,18 @@ class MapInntektEndringAarsakFraSimbaTest { @JvmStatic fun inntektEndringerProvider() = listOf( - Pair(Mock.spinnInntektEndringBonus, Bonus()), - Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Feilregistrert"), Feilregistrert), - Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Ferie", perioder = listOf(Mock.spinnPeriode)), Ferie(liste = listOf(Mock.periode))), - Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Ferietrekk"), Ferietrekk), - Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Nyansatt"), Nyansatt), - Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "NyStilling", gjelderFra = Mock.gjelderFra), NyStilling(gjelderFra = Mock.gjelderFra)), - Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "NyStillingsprosent", gjelderFra = Mock.gjelderFra), NyStillingsprosent(gjelderFra = Mock.gjelderFra)), - Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Permisjon", perioder = listOf(Mock.spinnPeriode)), Permisjon(liste = listOf(Mock.periode))), - Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Permittering", perioder = listOf(Mock.spinnPeriode)), Permittering(liste = listOf(Mock.periode))), - Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Sykefravaer", perioder = listOf(Mock.spinnPeriode)), Sykefravaer(liste = listOf(Mock.periode))), - Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "Tariffendring", gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent), Tariffendring(gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent)), - Pair(Mock.spinnInntektEndringBonus.copy(aarsak = "VarigLonnsendring", gjelderFra = Mock.gjelderFra), VarigLonnsendring(gjelderFra = Mock.gjelderFra)), + Pair(Mock.spinnInntektEndringAarsak, Bonus()), + Pair(Mock.spinnInntektEndringAarsak.copy(aarsak = "Feilregistrert"), Feilregistrert), + Pair(Mock.spinnInntektEndringAarsak.copy(aarsak = "Ferie", perioder = listOf(Mock.spinnPeriode)), Ferie(liste = listOf(Mock.periode))), + Pair(Mock.spinnInntektEndringAarsak.copy(aarsak = "Ferietrekk"), Ferietrekk), + Pair(Mock.spinnInntektEndringAarsak.copy(aarsak = "Nyansatt"), Nyansatt), + Pair(Mock.spinnInntektEndringAarsak.copy(aarsak = "NyStilling", gjelderFra = Mock.gjelderFra), NyStilling(gjelderFra = Mock.gjelderFra)), + Pair(Mock.spinnInntektEndringAarsak.copy(aarsak = "NyStillingsprosent", gjelderFra = Mock.gjelderFra), NyStillingsprosent(gjelderFra = Mock.gjelderFra)), + Pair(Mock.spinnInntektEndringAarsak.copy(aarsak = "Permisjon", perioder = listOf(Mock.spinnPeriode)), Permisjon(liste = listOf(Mock.periode))), + Pair(Mock.spinnInntektEndringAarsak.copy(aarsak = "Permittering", perioder = listOf(Mock.spinnPeriode)), Permittering(liste = listOf(Mock.periode))), + Pair(Mock.spinnInntektEndringAarsak.copy(aarsak = "Sykefravaer", perioder = listOf(Mock.spinnPeriode)), Sykefravaer(liste = listOf(Mock.periode))), + Pair(Mock.spinnInntektEndringAarsak.copy(aarsak = "Tariffendring", gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent), Tariffendring(gjelderFra = Mock.gjelderFra, bleKjent = Mock.bleKjent)), + Pair(Mock.spinnInntektEndringAarsak.copy(aarsak = "VarigLonnsendring", gjelderFra = Mock.gjelderFra), VarigLonnsendring(gjelderFra = Mock.gjelderFra)), ) } @@ -55,7 +55,7 @@ class MapInntektEndringAarsakFraSimbaTest { ) val gjelderFra = LocalDate.of(2021, 1, 1) val bleKjent = LocalDate.of(2021, 5, 1) - val spinnInntektEndringBonus = SpinnInntektEndringAarsak(aarsak = "Bonus") + val spinnInntektEndringAarsak = SpinnInntektEndringAarsak(aarsak = "Bonus") } @ParameterizedTest @MethodSource("inntektEndringerProvider")