Skip to content

Commit 7421520

Browse files
committed
La til initiell støtte for ny variant av feilretting
1 parent 6f3f8bd commit 7421520

File tree

4 files changed

+45
-3
lines changed

4 files changed

+45
-3
lines changed

apps/hendelseprosessor/src/main/kotlin/no/nav/paw/arbeidssokerregisteret/app/tilstand/KonverterTilApiHendelse.kt

+3-1
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,9 @@ fun TidspunktFraKilde.api(): ApiTidspunktFraKilde =
5858
tidspunkt,
5959
when (avviksType) {
6060
AvviksType.FORSINKELSE -> ApiAvviksType.FORSINKELSE
61-
AvviksType.RETTING -> ApiAvviksType.RETTING
61+
AvviksType.RETTING -> ApiAvviksType.SLETTET // RETTING er erstattet av SLETTET(periode som aldri skulle vært lagt inn)
62+
AvviksType.SLETTET -> ApiAvviksType.SLETTET
63+
AvviksType.TIDSPUNKT_KORRIGERT -> no.nav.paw.arbeidssokerregisteret.api.v1.AvviksType.TIDSPUNKT_KORRIGERT
6264
}
6365
)
6466

apps/hendelseprosessor/src/test/kotlin/no/nav/paw/arbeidssokerregisteret/app/ApplikasjonsTest.kt

+36-1
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import no.nav.paw.arbeidssokerregisteret.intern.v1.OpplysningerOmArbeidssoekerMo
1818
import no.nav.paw.arbeidssokerregisteret.intern.v1.Startet
1919
import no.nav.paw.arbeidssokerregisteret.intern.v1.vo.*
2020
import no.nav.paw.test.assertEvent
21+
import no.nav.paw.test.days
2122
import org.apache.kafka.common.serialization.Serdes
2223
import org.apache.kafka.streams.TopologyTestDriver
2324
import java.time.Duration
@@ -76,7 +77,7 @@ class ApplikasjonsTest : FreeSpec({
7677
aarsak = "tester",
7778
tidspunktFraKilde = TidspunktFraKilde(
7879
Instant.parse("2024-03-07T15:41:01Z"),
79-
AvviksType.RETTING
80+
AvviksType.FORSINKELSE
8081
)
8182
)
8283
)
@@ -126,6 +127,40 @@ class ApplikasjonsTest : FreeSpec({
126127
opplysningerOmArbeidssoekerTopic.isEmpty shouldBe true
127128
}
128129

130+
"Når vi mottar en 'startet' med korrigert tidspunkt for en akrive periode skal vi oppdatere perioden".config(
131+
enabled = false // Funsjonalitet er ikke implementert
132+
) {
133+
val duplikatStart = Startet(
134+
hendelseId = UUID.randomUUID(),
135+
id = 1L,
136+
identitetsnummer = identitetnummer,
137+
metadata = Metadata(
138+
tidspunkt = Instant.now(),
139+
utfoertAv = Bruker(type = BrukerType.VEILEDER, id = "en_som_fikser_ting"),
140+
kilde = "unit-test2",
141+
aarsak = "tekniske feil i systemet",
142+
tidspunktFraKilde = TidspunktFraKilde(
143+
startet.metadata.tidspunkt - 10.days,
144+
AvviksType.TIDSPUNKT_KORRIGERT
145+
)
146+
)
147+
)
148+
eventlogTopic.pipeInput(key, duplikatStart)
149+
periodeTopic.isEmpty shouldBe false
150+
val periodeKv = periodeTopic.readKeyValue()
151+
val periode = periodeKv.value
152+
periode.startet.tidspunkt shouldBe startet.metadata.tidspunkt
153+
periode.startet.tidspunktFraKilde?.avviksType shouldBe AvviksType.TIDSPUNKT_KORRIGERT
154+
periode.startet.tidspunktFraKilde?.tidspunkt shouldBe duplikatStart.metadata.tidspunktFraKilde?.tidspunkt
155+
periode.id shouldBe startet.hendelseId
156+
periode.identitetsnummer shouldBe startet.identitetsnummer
157+
periode.startet.utfoertAv.type shouldBe BrukerType.VEILEDER
158+
periode.startet.utfoertAv.id shouldBe "en_som_fikser_ting"
159+
periode.startet.aarsak shouldBe "tekniske feil i systemet"
160+
periode.startet.kilde shouldBe "unit-test2"
161+
periodeTopic.isEmpty shouldBe true
162+
}
163+
129164
"Når vi mottar en ny situsjon for en person med en aktiv periode skal vi sende ut en ny situasjon" {
130165
val situsjonMottat = opplysningerMottatt(1L, identitetnummer, Instant.now())
131166
eventlogTopic.pipeInput(key, situsjonMottat)

apps/hendelseprosessor/src/test/kotlin/no/nav/paw/arbeidssokerregisteret/app/TestUtils.kt

+2
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,8 @@ fun verifiserApiMetadataMotInternMetadata(
7474
when (forventedeMetadataVerdier.tidspunktFraKilde?.avviksType) {
7575
FORSINKELSE -> mottattApiMetadata.tidspunktFraKilde?.avviksType shouldBe AvviksType.FORSINKELSE
7676
RETTING -> mottattApiMetadata.tidspunktFraKilde?.avviksType shouldBe AvviksType.RETTING
77+
SLETTET -> mottattApiMetadata.tidspunktFraKilde?.avviksType shouldBe AvviksType.SLETTET
78+
TIDSPUNKT_KORRIGERT -> mottattApiMetadata.tidspunktFraKilde?.avviksType shouldBe AvviksType.TIDSPUNKT_KORRIGERT
7779
null -> mottattApiMetadata.tidspunktFraKilde shouldBe null
7880
}
7981
}

domain/interne-hendelser/src/main/kotlin/no/nav/paw/arbeidssokerregisteret/intern/v1/vo/AvviksType.kt

+4-1
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,8 @@ package no.nav.paw.arbeidssokerregisteret.intern.v1.vo
22

33
enum class AvviksType {
44
FORSINKELSE,
5-
RETTING
5+
@Deprecated("Erstattet av 'SLETTET'", replaceWith = ReplaceWith("SLETTET"))
6+
RETTING,
7+
SLETTET,
8+
TIDSPUNKT_KORRIGERT
69
}

0 commit comments

Comments
 (0)