diff --git a/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/NotifikasjonIT.kt b/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/NotifikasjonIT.kt index ab4709e0b..e73f96b27 100644 --- a/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/NotifikasjonIT.kt +++ b/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/NotifikasjonIT.kt @@ -34,6 +34,8 @@ class NotifikasjonIT : EndToEndTest() { publish( Key.EVENT_NAME to EventName.SAK_OPPRETT_REQUESTED.toJson(), + Key.UUID to UUID.randomUUID().toJson(), + Key.DATA to "".toJson(), Key.IDENTITETSNUMMER to Mock.fnr.toJson(), Key.ORGNRUNDERENHET to Mock.orgnr.toJson(), Key.FORESPOERSEL_ID to Mock.forespoerselId.toJson(), diff --git a/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/utils/EndToEndTest.kt b/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/utils/EndToEndTest.kt index 7fc269ca9..2e6551a85 100644 --- a/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/utils/EndToEndTest.kt +++ b/integrasjonstest/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/integrasjonstest/utils/EndToEndTest.kt @@ -53,6 +53,7 @@ import no.nav.helsearbeidsgiver.inntektsmelding.inntektselvbestemtservice.create import no.nav.helsearbeidsgiver.inntektsmelding.inntektservice.createInntektService import no.nav.helsearbeidsgiver.inntektsmelding.joark.createJournalfoerImRiver import no.nav.helsearbeidsgiver.inntektsmelding.notifikasjon.createNotifikasjonRivers +import no.nav.helsearbeidsgiver.inntektsmelding.notifikasjon.createNotifikasjonServices import no.nav.helsearbeidsgiver.inntektsmelding.notifikasjon.db.SelvbestemtRepo import no.nav.helsearbeidsgiver.inntektsmelding.pdl.createPdl import no.nav.helsearbeidsgiver.inntektsmelding.selvbestemtlagreimservice.createLagreSelvbestemtImService @@ -211,6 +212,7 @@ abstract class EndToEndTest : ContainerTest() { createInntektService(redisConnection) createInntektSelvbestemtService(redisConnection) createLagreSelvbestemtImService(redisConnection) + createNotifikasjonServices(redisConnection) createSpinnService(redisConnection) createTilgangService(redisConnection) createHentForespoerselService(redisConnection) @@ -230,7 +232,7 @@ abstract class EndToEndTest : ContainerTest() { createInntekt(inntektClient) createJournalfoerImRiver(dokarkivClient) createMarkerForespoerselBesvart(mockPriProducer) - createNotifikasjonRivers(NOTIFIKASJON_LINK, selvbestemtRepo, redisStore, redisConnection, arbeidsgiverNotifikasjonKlient) + createNotifikasjonRivers(NOTIFIKASJON_LINK, selvbestemtRepo, arbeidsgiverNotifikasjonKlient) createPdl(pdlKlient) } } diff --git a/notifikasjon/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/App.kt b/notifikasjon/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/App.kt index da52b13a7..e851224cd 100644 --- a/notifikasjon/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/App.kt +++ b/notifikasjon/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/App.kt @@ -6,7 +6,6 @@ import no.nav.helsearbeidsgiver.arbeidsgivernotifikasjon.ArbeidsgiverNotifikasjo import no.nav.helsearbeidsgiver.felles.db.exposed.Database import no.nav.helsearbeidsgiver.felles.rapidsrivers.redis.RedisConnection import no.nav.helsearbeidsgiver.felles.rapidsrivers.redis.RedisPrefix -import no.nav.helsearbeidsgiver.felles.rapidsrivers.redis.RedisStore import no.nav.helsearbeidsgiver.felles.rapidsrivers.redis.RedisStoreClassSpecific import no.nav.helsearbeidsgiver.felles.rapidsrivers.registerShutdownLifecycle import no.nav.helsearbeidsgiver.felles.rapidsrivers.service.ServiceRiver @@ -27,7 +26,6 @@ import no.nav.helsearbeidsgiver.utils.log.logger private val logger = "im-notifikasjon".logger() fun main() { - val redisStore = RedisStore(Env.redisUrl) val redisConnection = RedisConnection(Env.redisUrl) val database = Database("NAIS_DATABASE_IM_NOTIFIKASJON_NOTIFIKASJON") @@ -40,14 +38,12 @@ fun main() { RapidApplication .create(System.getenv()) + .createNotifikasjonServices(redisConnection) .createNotifikasjonRivers( Env.linkUrl, selvbestemtRepo, - redisStore, - redisConnection, buildClient(), ).registerShutdownLifecycle { - redisStore.shutdown() redisConnection.close() logger.info("Stoppsignal mottatt, lukker databasetilkobling.") @@ -55,20 +51,42 @@ fun main() { }.start() } +fun RapidsConnection.createNotifikasjonServices(redisConnection: RedisConnection): RapidsConnection = + also { + logger.info("Starter ${OpprettSakService::class.simpleName}...") + ServiceRiver( + OpprettSakService( + rapid = this, + redisStore = RedisStoreClassSpecific(redisConnection, RedisPrefix.OpprettSakService), + ), + ).connect(this) + + logger.info("Starter ${OpprettOppgaveService::class.simpleName}...") + ServiceRiver( + OpprettOppgaveService( + rapid = this, + redisStore = RedisStoreClassSpecific(redisConnection, RedisPrefix.OpprettOppgaveService), + ), + ).connect(this) + + logger.info("Starter ${ManuellOpprettSakService::class.simpleName}...") + ServiceRiver( + ManuellOpprettSakService( + rapid = this, + redisStore = RedisStoreClassSpecific(redisConnection, RedisPrefix.ManuellOpprettSakService), + ), + ).connect(this) + } + fun RapidsConnection.createNotifikasjonRivers( linkUrl: String, selvbestemtRepo: SelvbestemtRepo, - redisStore: RedisStore, - redisConnection: RedisConnection, arbeidsgiverNotifikasjonKlient: ArbeidsgiverNotifikasjonKlient, ): RapidsConnection = also { logger.info("Starter ${ForespoerselLagretRiver::class.simpleName}...") ForespoerselLagretRiver(this) - logger.info("Starter ${OpprettSakService::class.simpleName}...") - OpprettSakService(this, redisStore) - logger.info("Starter ${OpprettSakLoeser::class.simpleName}...") OpprettSakLoeser(this, arbeidsgiverNotifikasjonKlient, linkUrl) @@ -78,25 +96,9 @@ fun RapidsConnection.createNotifikasjonRivers( logger.info("Starter ${OpprettOppgaveLoeser::class.simpleName}...") OpprettOppgaveLoeser(this, arbeidsgiverNotifikasjonKlient, linkUrl) - logger.info("Starter ${OpprettOppgaveService::class.simpleName}...") - ServiceRiver( - OpprettOppgaveService( - rapid = this, - redisStore = RedisStoreClassSpecific(redisConnection, RedisPrefix.OpprettOppgaveService), - ), - ).connect(this) - logger.info("Starter ${OppgaveFerdigLoeser::class.simpleName}...") OppgaveFerdigLoeser(this, arbeidsgiverNotifikasjonKlient) - logger.info("Starter ${ManuellOpprettSakService::class.simpleName}...") - ServiceRiver( - ManuellOpprettSakService( - rapid = this, - redisStore = RedisStoreClassSpecific(redisConnection, RedisPrefix.ManuellOpprettSakService), - ), - ).connect(this) - logger.info("Starter ${SlettSakLoeser::class.simpleName}...") SlettSakLoeser(this, arbeidsgiverNotifikasjonKlient) diff --git a/notifikasjon/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/river/ForespoerselLagretRiver.kt b/notifikasjon/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/river/ForespoerselLagretRiver.kt index 1938a67db..96cacfcba 100644 --- a/notifikasjon/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/river/ForespoerselLagretRiver.kt +++ b/notifikasjon/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/river/ForespoerselLagretRiver.kt @@ -66,6 +66,7 @@ class ForespoerselLagretRiver( context.publish( Key.EVENT_NAME to EventName.SAK_OPPRETT_REQUESTED.toJson(), Key.UUID to UUID.randomUUID().toJson(), + Key.DATA to "".toJson(), Key.FORESPOERSEL_ID to forespoerselId.toJson(), Key.ORGNRUNDERENHET to orgnr.toJson(), Key.IDENTITETSNUMMER to fnr.toJson(), diff --git a/notifikasjon/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/service/OpprettSakService.kt b/notifikasjon/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/service/OpprettSakService.kt index b4806b83f..6860fe685 100644 --- a/notifikasjon/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/service/OpprettSakService.kt +++ b/notifikasjon/src/main/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/service/OpprettSakService.kt @@ -11,30 +11,34 @@ import no.nav.helsearbeidsgiver.felles.json.les import no.nav.helsearbeidsgiver.felles.json.lesOrNull import no.nav.helsearbeidsgiver.felles.json.toJson import no.nav.helsearbeidsgiver.felles.json.toMap -import no.nav.helsearbeidsgiver.felles.rapidsrivers.FailKanal -import no.nav.helsearbeidsgiver.felles.rapidsrivers.LagreDataRedisRiver -import no.nav.helsearbeidsgiver.felles.rapidsrivers.LagreStartDataRedisRiver -import no.nav.helsearbeidsgiver.felles.rapidsrivers.composite.CompositeEventListener import no.nav.helsearbeidsgiver.felles.rapidsrivers.model.Fail import no.nav.helsearbeidsgiver.felles.rapidsrivers.publish import no.nav.helsearbeidsgiver.felles.rapidsrivers.redis.RedisKey -import no.nav.helsearbeidsgiver.felles.rapidsrivers.redis.RedisStore +import no.nav.helsearbeidsgiver.felles.rapidsrivers.redis.RedisStoreClassSpecific +import no.nav.helsearbeidsgiver.felles.rapidsrivers.service.ServiceMed3Steg import no.nav.helsearbeidsgiver.felles.utils.Log import no.nav.helsearbeidsgiver.utils.json.serializer.UuidSerializer import no.nav.helsearbeidsgiver.utils.json.toJson import no.nav.helsearbeidsgiver.utils.log.MdcUtils import no.nav.helsearbeidsgiver.utils.log.logger import no.nav.helsearbeidsgiver.utils.log.sikkerLogger +import no.nav.helsearbeidsgiver.utils.wrapper.Fnr +import no.nav.helsearbeidsgiver.utils.wrapper.Orgnr import java.util.UUID class OpprettSakService( private val rapid: RapidsConnection, - override val redisStore: RedisStore, -) : CompositeEventListener() { - private val logger = logger() - private val sikkerLogger = sikkerLogger() - - override val event = EventName.SAK_OPPRETT_REQUESTED + override val redisStore: RedisStoreClassSpecific, +) : ServiceMed3Steg< + OpprettSakService.Steg0, + OpprettSakService.Steg1, + OpprettSakService.Steg2, + OpprettSakService.Steg3, + >() { + override val logger = logger() + override val sikkerLogger = sikkerLogger() + + override val eventName = EventName.SAK_OPPRETT_REQUESTED override val startKeys = setOf( Key.UUID, @@ -49,74 +53,97 @@ class OpprettSakService( Key.PERSISTERT_SAK_ID, ) - private val step2Keys = setOf(Key.ARBEIDSTAKER_INFORMASJON) - private val step3Keys = setOf(Key.SAK_ID) + data class Steg0( + val transaksjonId: UUID, + val forespoerselId: UUID, + val orgnr: Orgnr, + val fnr: Fnr, + ) + + data class Steg1( + val sykmeldt: PersonDato, + ) + + data class Steg2( + val sakId: String, + ) + + data class Steg3( + val persistertSakId: String, + ) + + override fun lesSteg0(melding: Map): Steg0 = + Steg0( + transaksjonId = Key.UUID.les(UuidSerializer, melding), + forespoerselId = Key.FORESPOERSEL_ID.les(UuidSerializer, melding), + orgnr = Key.ORGNRUNDERENHET.les(Orgnr.serializer(), melding), + fnr = Key.IDENTITETSNUMMER.les(Fnr.serializer(), melding), + ) + + override fun lesSteg1(melding: Map): Steg1 = + Steg1( + sykmeldt = Key.ARBEIDSTAKER_INFORMASJON.les(PersonDato.serializer(), melding), + ) + + override fun lesSteg2(melding: Map): Steg2 = + Steg2( + sakId = Key.SAK_ID.les(String.serializer(), melding), + ) + + override fun lesSteg3(melding: Map): Steg3 = + Steg3( + persistertSakId = Key.PERSISTERT_SAK_ID.les(String.serializer(), melding), + ) - init { - LagreStartDataRedisRiver(event, startKeys, rapid, redisStore, ::onPacket) - LagreDataRedisRiver(event, dataKeys, rapid, redisStore, ::onPacket) - FailKanal(event, rapid, ::onPacket) + override fun utfoerSteg0(steg0: Steg0) { + rapid.publish( + Key.EVENT_NAME to eventName.toJson(), + Key.BEHOV to BehovType.FULLT_NAVN.toJson(), + Key.UUID to steg0.transaksjonId.toJson(), + Key.FORESPOERSEL_ID to steg0.forespoerselId.toJson(), + Key.IDENTITETSNUMMER to steg0.fnr.toJson(), + ) } - override fun new(melding: Map) { - medTransaksjonIdOgForespoerselId(melding) { transaksjonId, forespoerselId -> - val fnr = Key.IDENTITETSNUMMER.les(String.serializer(), melding) - - rapid.publish( - Key.EVENT_NAME to event.toJson(), - Key.BEHOV to BehovType.FULLT_NAVN.toJson(), - Key.UUID to transaksjonId.toJson(), - Key.FORESPOERSEL_ID to forespoerselId.toJson(), - Key.IDENTITETSNUMMER to fnr.toJson(), - ) - } + override fun utfoerSteg1( + steg0: Steg0, + steg1: Steg1, + ) { + rapid.publish( + Key.EVENT_NAME to eventName.toJson(), + Key.BEHOV to BehovType.OPPRETT_SAK.toJson(), + Key.UUID to steg0.transaksjonId.toJson(), + Key.FORESPOERSEL_ID to steg0.forespoerselId.toJson(), + Key.ORGNRUNDERENHET to steg0.orgnr.toJson(), + Key.ARBEIDSTAKER_INFORMASJON to steg1.sykmeldt.toJson(PersonDato.serializer()), + ) } - override fun inProgress(melding: Map) { - medTransaksjonIdOgForespoerselId(melding) { transaksjonId, forespoerselId -> - if (step3Keys.all(melding::containsKey)) { - val sakId = Key.SAK_ID.les(String.serializer(), melding) - - rapid.publish( - Key.EVENT_NAME to event.toJson(), - Key.UUID to transaksjonId.toJson(), - Key.BEHOV to BehovType.PERSISTER_SAK_ID.toJson(), - Key.FORESPOERSEL_ID to forespoerselId.toJson(), - Key.SAK_ID to sakId.toJson(), - ) - } else if (step2Keys.all(melding::containsKey)) { - val orgnr = Key.ORGNRUNDERENHET.les(String.serializer(), melding) - val arbeidstaker = Key.ARBEIDSTAKER_INFORMASJON.les(PersonDato.serializer(), melding) - - rapid.publish( - Key.EVENT_NAME to event.toJson(), - Key.UUID to transaksjonId.toJson(), - Key.BEHOV to BehovType.OPPRETT_SAK.toJson(), - Key.FORESPOERSEL_ID to forespoerselId.toJson(), - Key.ORGNRUNDERENHET to orgnr.toJson(), - Key.ARBEIDSTAKER_INFORMASJON to arbeidstaker.toJson(PersonDato.serializer()), - ) - } - } + override fun utfoerSteg2( + steg0: Steg0, + steg1: Steg1, + steg2: Steg2, + ) { + rapid.publish( + Key.EVENT_NAME to eventName.toJson(), + Key.BEHOV to BehovType.PERSISTER_SAK_ID.toJson(), + Key.UUID to steg0.transaksjonId.toJson(), + Key.FORESPOERSEL_ID to steg0.forespoerselId.toJson(), + Key.SAK_ID to steg2.sakId.toJson(), + ) } - override fun finalize(melding: Map) { - medTransaksjonIdOgForespoerselId(melding) { transaksjonId, forespoerselId -> - MdcUtils.withLogFields( - Log.klasse(this), - Log.event(EventName.SAK_OPPRETT_REQUESTED), - Log.transaksjonId(transaksjonId), - Log.forespoerselId(forespoerselId), - ) { - val sakId = Key.SAK_ID.les(String.serializer(), melding) - - rapid.publish( - Key.EVENT_NAME to EventName.SAK_OPPRETTET.toJson(), - Key.FORESPOERSEL_ID to forespoerselId.toJson(), - Key.SAK_ID to sakId.toJson(), - ) - } - } + override fun utfoerSteg3( + steg0: Steg0, + steg1: Steg1, + steg2: Steg2, + steg3: Steg3, + ) { + rapid.publish( + Key.EVENT_NAME to EventName.SAK_OPPRETTET.toJson(), + Key.FORESPOERSEL_ID to steg0.forespoerselId.toJson(), + Key.SAK_ID to steg3.persistertSakId.toJson(), + ) } override fun onError( @@ -125,7 +152,7 @@ class OpprettSakService( ) { MdcUtils.withLogFields( Log.klasse(this), - Log.event(EventName.SAK_OPPRETT_REQUESTED), + Log.event(eventName), Log.transaksjonId(fail.transaksjonId), ) { val utloesendeBehov = Key.BEHOV.lesOrNull(BehovType.serializer(), fail.utloesendeMelding.toMap()) @@ -133,46 +160,22 @@ class OpprettSakService( val fnr = Key.IDENTITETSNUMMER.les(String.serializer(), melding) val ukjentPersonJson = PersonDato("Ukjent person", null, fnr).toJson(PersonDato.serializer()) - redisStore.set(RedisKey.of(fail.transaksjonId, Key.ARBEIDSTAKER_INFORMASJON), ukjentPersonJson.toString()) + redisStore.set(RedisKey.of(fail.transaksjonId, Key.ARBEIDSTAKER_INFORMASJON), ukjentPersonJson) val meldingMedDefault = mapOf(Key.ARBEIDSTAKER_INFORMASJON to ukjentPersonJson).plus(melding) - return inProgress(meldingMedDefault) - } - - val clientId = - redisStore - .get(RedisKey.of(fail.transaksjonId, event)) - ?.let(UUID::fromString) - - if (clientId == null) { - "Forsøkte å terminere, men clientId mangler i Redis. forespoerselId=${fail.forespoerselId}".also { - logger.error(it) - sikkerLogger.error(it) - } + onData(meldingMedDefault) } else { - redisStore.set(RedisKey.of(clientId), fail.feilmelding) + redisStore.set(RedisKey.of(fail.transaksjonId), fail.feilmelding.toJson()) } } } - private inline fun medTransaksjonIdOgForespoerselId( - melding: Map, - block: (UUID, UUID) -> Unit, - ) { - MdcUtils.withLogFields( - Log.klasse(this), - Log.event(EventName.SAK_OPPRETT_REQUESTED), - ) { - val transaksjonId = Key.UUID.les(UuidSerializer, melding) - val forespoerselId = Key.FORESPOERSEL_ID.les(UuidSerializer, melding) - - MdcUtils.withLogFields( - Log.transaksjonId(transaksjonId), - Log.forespoerselId(forespoerselId), - ) { - block(transaksjonId, forespoerselId) - } - } - } + override fun Steg0.loggfelt(): Map = + mapOf( + Log.klasse(this@OpprettSakService), + Log.event(eventName), + Log.transaksjonId(transaksjonId), + Log.forespoerselId(forespoerselId), + ) } diff --git a/notifikasjon/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/service/OpprettSakServiceTest.kt b/notifikasjon/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/service/OpprettSakServiceTest.kt index ea31b6a9d..62c4453b1 100644 --- a/notifikasjon/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/service/OpprettSakServiceTest.kt +++ b/notifikasjon/src/test/kotlin/no/nav/helsearbeidsgiver/inntektsmelding/notifikasjon/service/OpprettSakServiceTest.kt @@ -1,7 +1,6 @@ package no.nav.helsearbeidsgiver.inntektsmelding.notifikasjon.service import io.mockk.clearAllMocks -import io.mockk.every import io.mockk.verify import kotlinx.serialization.json.JsonObject import no.nav.helse.rapids_rivers.testsupport.TestRapid @@ -12,22 +11,26 @@ import no.nav.helsearbeidsgiver.felles.PersonDato import no.nav.helsearbeidsgiver.felles.json.toJson import no.nav.helsearbeidsgiver.felles.rapidsrivers.model.Fail import no.nav.helsearbeidsgiver.felles.rapidsrivers.redis.RedisKey -import no.nav.helsearbeidsgiver.felles.test.mock.MockRedis +import no.nav.helsearbeidsgiver.felles.rapidsrivers.redis.RedisPrefix +import no.nav.helsearbeidsgiver.felles.rapidsrivers.service.ServiceRiver +import no.nav.helsearbeidsgiver.felles.test.mock.MockRedisClassSpecific import no.nav.helsearbeidsgiver.felles.test.rapidsrivers.sendJson -import no.nav.helsearbeidsgiver.felles.utils.randomUuid import no.nav.helsearbeidsgiver.utils.json.toJson -import no.nav.helsearbeidsgiver.utils.json.toJsonStr -import no.nav.helsearbeidsgiver.utils.test.mock.mockStatic +import no.nav.helsearbeidsgiver.utils.test.wrapper.genererGyldig +import no.nav.helsearbeidsgiver.utils.wrapper.Fnr +import no.nav.helsearbeidsgiver.utils.wrapper.Orgnr import org.junit.jupiter.api.BeforeEach import org.junit.jupiter.api.Test import java.util.UUID class OpprettSakServiceTest { private val testRapid = TestRapid() - private val mockRedis = MockRedis() + private val mockRedis = MockRedisClassSpecific(RedisPrefix.OpprettSakService) init { - OpprettSakService(testRapid, mockRedis.store) + ServiceRiver( + OpprettSakService(testRapid, mockRedis.store), + ).connect(testRapid) } @BeforeEach @@ -41,19 +44,16 @@ class OpprettSakServiceTest { fun `OpprettSak skal håndtere feil`() { val transaksjonId: UUID = UUID.randomUUID() val foresporselId: UUID = UUID.randomUUID() - val fnr = "123456789" + val fnr = Fnr.genererGyldig() - mockStatic(::randomUuid) { - every { randomUuid() } returns transaksjonId - - testRapid.sendJson( - Key.EVENT_NAME to EventName.SAK_OPPRETT_REQUESTED.name.toJson(), - Key.CLIENT_ID to UUID.randomUUID().toJson(), - Key.FORESPOERSEL_ID to foresporselId.toJson(), - Key.ORGNRUNDERENHET to "123456".toJson(), - Key.IDENTITETSNUMMER to fnr.toJson(), - ) - } + testRapid.sendJson( + Key.EVENT_NAME to EventName.SAK_OPPRETT_REQUESTED.name.toJson(), + Key.UUID to transaksjonId.toJson(), + Key.DATA to "".toJson(), + Key.FORESPOERSEL_ID to foresporselId.toJson(), + Key.ORGNRUNDERENHET to Orgnr.genererGyldig().toJson(), + Key.IDENTITETSNUMMER to fnr.toJson(), + ) testRapid.sendJson( Key.FAIL to @@ -77,7 +77,7 @@ class OpprettSakServiceTest { verify { mockRedis.store.set( RedisKey.of(transaksjonId, Key.ARBEIDSTAKER_INFORMASJON), - PersonDato("Ukjent person", null, fnr).toJsonStr(PersonDato.serializer()), + PersonDato("Ukjent person", null, fnr.verdi).toJson(PersonDato.serializer()), ) } }