Skip to content

Commit

Permalink
Mer tester
Browse files Browse the repository at this point in the history
  • Loading branch information
MagnusTonnessen committed Feb 13, 2025
1 parent 6f4f54c commit 1cd3d16
Show file tree
Hide file tree
Showing 4 changed files with 19 additions and 26 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import no.nav.familie.ba.sak.datagenerator.lagAndelTilkjentYtelse
import no.nav.familie.ba.sak.datagenerator.lagBehandling
import no.nav.familie.ba.sak.datagenerator.lagEndretUtbetalingAndel
import no.nav.familie.ba.sak.datagenerator.lagPerson
import no.nav.familie.ba.sak.datagenerator.randomAktør
import no.nav.familie.ba.sak.datagenerator.tilfeldigPerson
import no.nav.familie.ba.sak.kjerne.beregning.BeregningService
import no.nav.familie.ba.sak.kjerne.beregning.domene.YtelseType
Expand Down Expand Up @@ -229,7 +228,6 @@ class UtbetalingTidslinjeServiceTest {
val forventet =
mapOf(
person1.aktør to "TTTTT TTTTT".somBoolskTidslinje(mar(2020)).filtrerIkkeNull(),
randomAktør() to "TTTTT TTTTT".somBoolskTidslinje(mar(2020)),
person2.aktør to "TTTTTTTTTTTTTTTTT".somBoolskTidslinje(nov(2019)).filtrerIkkeNull(),
)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,15 +10,14 @@ import no.nav.familie.ba.sak.kjerne.tidslinjefamiliefelles.util.mar
import no.nav.familie.ba.sak.kjerne.tidslinjefamiliefelles.util.somBoolskTidslinje
import no.nav.familie.ba.sak.kjerne.tidslinjefamiliefelles.util.tilCharTidslinje
import no.nav.familie.tidslinje.Periode
import no.nav.familie.tidslinje.mapVerdi
import no.nav.familie.tidslinje.utvidelser.tilPerioder
import org.assertj.core.api.Assertions.assertThat
import org.junit.jupiter.api.Test

class FiltrerTidslinjeTest {
@Test
fun filtrerIkkeNull() {
val tidslinje = "aabbcc".tilCharTidslinje(feb(2000)).mapVerdi { if (it == 'b') null else it }
val tidslinje = "aa cc".tilCharTidslinje(feb(2000))
val opprinneligePerioder = tidslinje.tilPerioder()

assertThat(opprinneligePerioder[0]).isEqualTo(Periode('a', 1.feb(2000), 31.mar(2000)))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,10 @@ package no.nav.familie.ba.sak.kjerne.tidslinjefamiliefelles.util

import no.nav.familie.ba.sak.common.førsteDagIInneværendeMåned
import no.nav.familie.ba.sak.common.sisteDagIInneværendeMåned
import no.nav.familie.tidslinje.Periode
import no.nav.familie.ba.sak.kjerne.tidslinjefamiliefelles.transformasjon.tilMåned
import no.nav.familie.tidslinje.Tidslinje
import no.nav.familie.tidslinje.TidslinjePeriodeMedDato
import no.nav.familie.tidslinje.tilTidslinje
import no.nav.familie.tidslinje.utvidelser.konverterTilMåned
import java.time.LocalDate
import java.time.YearMonth

Expand All @@ -16,8 +16,8 @@ fun String.tilCharTidslinje(startTidspunkt: LocalDate): Tidslinje<Char> {
return this
.filter { it !in "<>" }
.mapIndexed { index, c ->
Periode(
verdi = c,
TidslinjePeriodeMedDato(
verdi = if (c == ' ') null else c,
fom = if (index == 0 && erUendeligLengeSiden) null else startTidspunkt.plusDays(index.toLong()),
tom = if (index == sisteIndeks && erUendeligLengeTil) null else startTidspunkt.plusDays(index.toLong()),
)
Expand All @@ -31,13 +31,11 @@ fun String.tilCharTidslinje(startTidspunkt: YearMonth): Tidslinje<Char> {
return this
.filter { it !in "<>" }
.mapIndexed { index, c ->
Periode(
verdi = c,
TidslinjePeriodeMedDato(
verdi = if (c == ' ') null else c,
fom = if (index == 0 && erUendeligLengeSiden) null else startTidspunkt.plusMonths(index.toLong()).førsteDagIInneværendeMåned(),
tom = if (index == sisteIndeks && erUendeligLengeTil) null else startTidspunkt.plusMonths(index.toLong()).sisteDagIInneværendeMåned(),
)
}.tilTidslinje()
.konverterTilMåned { _, månedListe ->
månedListe.first().first().periodeVerdi
}
.tilMåned { it.first() }
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,44 +2,42 @@ package no.nav.familie.ba.sak.kjerne.tidslinjefamiliefelles.util

import no.nav.familie.ba.sak.common.førsteDagIInneværendeMåned
import no.nav.familie.ba.sak.common.sisteDagIInneværendeMåned
import no.nav.familie.tidslinje.Periode
import no.nav.familie.ba.sak.kjerne.tidslinjefamiliefelles.transformasjon.tilMåned
import no.nav.familie.tidslinje.Tidslinje
import no.nav.familie.tidslinje.TidslinjePeriodeMedDato
import no.nav.familie.tidslinje.tilTidslinje
import no.nav.familie.tidslinje.utvidelser.konverterTilMåned
import java.time.LocalDate
import java.time.YearMonth

fun List<String>.tilStringTidslinje(startTidspunkt: LocalDate): Tidslinje<String> {
fun List<String?>.tilStringTidslinje(startTidspunkt: LocalDate): Tidslinje<String> {
val erUendeligLengeSiden = firstOrNull() == "<"
val erUendeligLengeTil = lastOrNull() == ">"
val sisteIndeks = filter { it !in "<>" }.lastIndex
val sisteIndeks = filter { it != "<" && it != ">" }.lastIndex

return this
.filter { it !in "<>" }
.filter { it != "<" && it != ">" }
.mapIndexed { index, s ->
Periode(
TidslinjePeriodeMedDato(
verdi = s,
fom = if (index == 0 && erUendeligLengeSiden) null else startTidspunkt.plusDays(index.toLong()),
tom = if (index == sisteIndeks && erUendeligLengeTil) null else startTidspunkt.plusDays(index.toLong()),
)
}.tilTidslinje()
}

fun List<String>.tilStringTidslinje(startTidspunkt: YearMonth): Tidslinje<String> {
fun List<String?>.tilStringTidslinje(startTidspunkt: YearMonth): Tidslinje<String> {
val erUendeligLengeSiden = firstOrNull() == "<"
val erUendeligLengeTil = lastOrNull() == ">"
val sisteIndeks = filter { it !in "<>" }.lastIndex
val sisteIndeks = filter { it != "<" && it != ">" }.lastIndex

return this
.filter { it !in "<>" }
.filter { it != "<" && it != ">" }
.mapIndexed { index, s ->
Periode(
TidslinjePeriodeMedDato(
verdi = s,
fom = if (index == 0 && erUendeligLengeSiden) null else startTidspunkt.plusMonths(index.toLong()).førsteDagIInneværendeMåned(),
tom = if (index == sisteIndeks && erUendeligLengeTil) null else startTidspunkt.plusMonths(index.toLong()).sisteDagIInneværendeMåned(),
)
}.tilTidslinje()
.konverterTilMåned { _, månedListe ->
månedListe.first().first().periodeVerdi
}
.tilMåned { it.first() }
}

0 comments on commit 1cd3d16

Please sign in to comment.