Kan oppdatere en feilmelding

This commit is contained in:
Amalie Mansåker 2023-08-01 14:35:55 +02:00
parent 80c0d1c15f
commit a9a8c7e065
3 changed files with 25 additions and 9 deletions

View file

@ -48,12 +48,19 @@ class FeilmeldingRepository {
} }
fun hentFeilmelding(id: String) = transaction { //fun hentFeilmelding(id: String) = transaction {
TODO() // FeilmeldingTable.select()
FeilmeldingTable.id //}
}
fun oppdaterFeilmelding(id: String): Nothing = transaction { fun oppdaterFeilmelding(feilmelding: Feilmelding) = transaction {
TODO() 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
}
}
} }
} }

View file

@ -18,7 +18,7 @@ class Feilmelding(
val tittel: String, val tittel: String,
val beskrivelse: String, val beskrivelse: String,
val dato: LocalDateTime, //Krever en spesiallaget serialiserer i KotlinX val dato: LocalDateTime, //Krever en spesiallaget serialiserer i KotlinX
val arbeidsstatus: Int?, val arbeidsstatus: Int,
val haster: Boolean val haster: Boolean
//val bilde: String, //val bilde: String,
) { ) {

View file

@ -15,6 +15,7 @@ import org.junit.jupiter.api.Test
import org.junit.jupiter.api.TestInstance import org.junit.jupiter.api.TestInstance
import java.time.LocalDateTime import java.time.LocalDateTime
import kotlin.test.assertEquals import kotlin.test.assertEquals
import kotlin.test.assertFalse
import org.jetbrains.exposed.sql.Database as ExposedDatabase import org.jetbrains.exposed.sql.Database as ExposedDatabase
@TestInstance(TestInstance.Lifecycle.PER_CLASS) @TestInstance(TestInstance.Lifecycle.PER_CLASS)
@ -22,7 +23,7 @@ class FeilmeldingTest {
private val database = Database(dbconfig()).configureFlyway() private val database = Database(dbconfig()).configureFlyway()
private val feilmeldingRepository = FeilmeldingRepository() private val feilmeldingRepository = FeilmeldingRepository()
private val feilmelding = Feilmelding(1, "Test", "Testesen", LocalDateTime.of(2023,1,1,8,0), 0, true) 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 @BeforeAll
fun setup() { fun setup() {
@ -104,6 +105,14 @@ class FeilmeldingTest {
@Test @Test
fun `Oppdaterer en feilmelding`() { 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])
}
} }
} }