Legger til tester søkefunksjonalitet

Co-authored-by: Markus A. R. Johansen <markus.aleksander.rakil.johansen@nav.no>
This commit is contained in:
Sindre Kjelsrud 2023-07-25 14:44:45 +02:00
parent 331fe293ef
commit 3f1ebe8a07
2 changed files with 71 additions and 0 deletions
backend/src
main/kotlin/no/nav/helse/sprik/modell
test/kotlin/no/nav/helse/sprik

View file

@ -0,0 +1,22 @@
package no.nav.helse.sprik.modell
import no.nav.helse.sprik.db.FeilmeldingRepository
import java.util.*
import kotlin.collections.ArrayList
class Sokemotor {
private val feilmeldingRepository = FeilmeldingRepository()
fun sok(s: String): List<Feilmelding> {
val feilmeldinger = feilmeldingRepository.hentAlleFeilmeldinger()
val resultat = ArrayList<Feilmelding>()
for (i in feilmeldinger) {
if (i.tittel.equals(s) or i.beskrivelse.equals(s)) {
resultat.add(i)
}
}
return resultat.toList()
}
}

View file

@ -0,0 +1,49 @@
package no.nav.helse.sprik
import no.nav.helse.sprik.db.Database
import no.nav.helse.sprik.db.FeilmeldingRepository
import no.nav.helse.sprik.modell.Feilmelding
import no.nav.helse.sprik.modell.Sokemotor
import org.junit.jupiter.api.BeforeAll
import org.junit.jupiter.api.Test
import org.junit.jupiter.api.TestInstance
import java.time.LocalDateTime
import kotlin.test.assertEquals
import org.jetbrains.exposed.sql.Database as ExposedDatabase
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
class SokTest {
private val database = Database(dbconfig()).configureFlyway()
private val sokemotor = Sokemotor()
private val feilmeldingRepository = FeilmeldingRepository()
private val feilmelding = Feilmelding("Test", "Testesen", LocalDateTime.of(2023,1,1,8,0))
private val feilmelding2 = Feilmelding("Tittel", "Beskrivelse", LocalDateTime.of(2023,2,1,8,0))
@BeforeAll
fun setup() {
ExposedDatabase.connect(database.dataSource)
feilmeldingRepository.lagre(feilmelding)
feilmeldingRepository.lagre(feilmelding2)
}
@Test
fun `Søk etter nøkkelord i titler`() {
val sokeresultat = sokemotor.sok("Test")
assertEquals(1, sokeresultat.size)
assertEquals(sokeresultat[0].tittel, "Test")
}
@Test
fun `Søk etter nøkkelord i beskrivelser`() {
val sokeresultat = sokemotor.sok("Beskrivelse")
assertEquals(1, sokeresultat.size)
assertEquals(sokeresultat[0].beskrivelse, "Beskrivelse")
}
/*
@Test
fun `Søk etter kategorier`() {
TODO()
}
*/
}