From 976d69c134e81724a7e7fb8d5cbb5e4304cc81d1 Mon Sep 17 00:00:00 2001 From: Amalie <99425692+amalieem@users.noreply.github.com> Date: Tue, 1 Aug 2023 15:37:49 +0200 Subject: [PATCH] Merge oppdaterer-backend til main (#21) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 🚧 Påbegynt oppdater feilmeldinger * ✨ Kan oppdatere en feilmelding * ✏️ Magisk fjerna felter fikset * ✏️ Fiksa manglende curly og ubrukte imports --- .../helse/sprik/db/FeilmeldingRepository.kt | 28 ++++++++++--------- .../no/nav/helse/sprik/plugins/Routing.kt | 1 + .../no/nav/helse/sprik/FeilmeldingTest.kt | 14 ++++++++-- 3 files changed, 28 insertions(+), 15 deletions(-) diff --git a/backend/src/main/kotlin/no/nav/helse/sprik/db/FeilmeldingRepository.kt b/backend/src/main/kotlin/no/nav/helse/sprik/db/FeilmeldingRepository.kt index d2cf565..f05c4e3 100644 --- a/backend/src/main/kotlin/no/nav/helse/sprik/db/FeilmeldingRepository.kt +++ b/backend/src/main/kotlin/no/nav/helse/sprik/db/FeilmeldingRepository.kt @@ -1,6 +1,5 @@ package no.nav.helse.sprik.db -import com.typesafe.config.ConfigException.Null import no.nav.helse.sprik.db.FeilmeldingTable.arbeidsstatus import no.nav.helse.sprik.db.FeilmeldingTable.beskrivelse import no.nav.helse.sprik.db.FeilmeldingTable.dato @@ -11,7 +10,6 @@ import no.nav.helse.sprik.modell.Feilmelding import org.jetbrains.exposed.sql.* import org.jetbrains.exposed.sql.SqlExpressionBuilder.like import org.jetbrains.exposed.sql.transactions.transaction -import java.time.LocalDateTime class FeilmeldingRepository { fun lagre(feilmelding: Feilmelding) { @@ -44,18 +42,22 @@ class FeilmeldingRepository { fun hentSokteFeilmeldinger(sokeord: String): List = transaction { val sok = "%${sokeord.lowercase()}%" - FeilmeldingTable.select((FeilmeldingTable.tittel.lowerCase() like sok) - or (FeilmeldingTable.beskrivelse.lowerCase() like sok)) - .map(::radTilFeilmelding) - + FeilmeldingTable.select( + (FeilmeldingTable.tittel.lowerCase() like sok) + or (FeilmeldingTable.beskrivelse.lowerCase() like sok) + ) + .map(::radTilFeilmelding) } - fun hentFeilmelding(id: String) = transaction { - TODO() - FeilmeldingTable.id - } - - fun oppdaterFeilmelding(id: String): Nothing = transaction { - TODO() + fun oppdaterFeilmelding(feilmelding: Feilmelding) = transaction { + val id = feilmelding.id + if (id != null) { + FeilmeldingTable.update({ FeilmeldingTable.id eq id }) { + it[FeilmeldingTable.tittel] = feilmelding.tittel + it[FeilmeldingTable.beskrivelse] = feilmelding.beskrivelse + it[FeilmeldingTable.arbeidsstatus] = feilmelding.arbeidsstatus + it[FeilmeldingTable.haster] = feilmelding.haster + } + } } } diff --git a/backend/src/main/kotlin/no/nav/helse/sprik/plugins/Routing.kt b/backend/src/main/kotlin/no/nav/helse/sprik/plugins/Routing.kt index 99e77a4..f2b9514 100644 --- a/backend/src/main/kotlin/no/nav/helse/sprik/plugins/Routing.kt +++ b/backend/src/main/kotlin/no/nav/helse/sprik/plugins/Routing.kt @@ -69,6 +69,7 @@ fun configureRouting(): ApplicationEngine = embeddedServer(CIO, applicationEngin } } } + connector { port = 8080 } diff --git a/backend/src/test/kotlin/no/nav/helse/sprik/FeilmeldingTest.kt b/backend/src/test/kotlin/no/nav/helse/sprik/FeilmeldingTest.kt index 2289b06..622c358 100644 --- a/backend/src/test/kotlin/no/nav/helse/sprik/FeilmeldingTest.kt +++ b/backend/src/test/kotlin/no/nav/helse/sprik/FeilmeldingTest.kt @@ -15,6 +15,7 @@ import org.junit.jupiter.api.Test import org.junit.jupiter.api.TestInstance import java.time.LocalDateTime import kotlin.test.assertEquals +import kotlin.test.assertFalse import org.jetbrains.exposed.sql.Database as ExposedDatabase @TestInstance(TestInstance.Lifecycle.PER_CLASS) @@ -22,7 +23,8 @@ class FeilmeldingTest { private val database = Database(dbconfig()).configureFlyway() private val feilmeldingRepository = FeilmeldingRepository() private val feilmelding = Feilmelding(1, "Test", "Testesen", LocalDateTime.of(2023,1,1,8,0), 0, true) - private val feilmelding2 = Feilmelding(2, "Tittel", "Beskrivelse", LocalDateTime.of(2023,2,1,8,0), 1, false) + // private val feilmelding2 = Feilmelding(2, "Tittel", "Beskrivelse", LocalDateTime.of(2023,2,1,8,0), 1, false) + @BeforeAll fun setup() { @@ -104,6 +106,14 @@ class FeilmeldingTest { @Test fun `Oppdaterer en feilmelding`() { - + val oppdatertFeilmelding = Feilmelding(1, "Oppdatert", "Oppdatert feil", LocalDateTime.of(2023,1,1,8,0), 1, false) + feilmeldingRepository.oppdaterFeilmelding(oppdatertFeilmelding) + transaction { + val actual = FeilmeldingTable.selectAll().single() + assertEquals("Oppdatert", actual[FeilmeldingTable.tittel]) + assertEquals("Oppdatert feil", actual[FeilmeldingTable.beskrivelse]) + assertFalse ( actual[FeilmeldingTable.haster] ) + assertEquals(1, actual[FeilmeldingTable.arbeidsstatus]) + } } } \ No newline at end of file