✨ Søk er case-insensitive
Co-authored-by: Markus A. R. Johansen <markus.aleksander.rakil.johansen@nav.no> Co-authored-by: Amalie Erdal Mansåker <amalie.erdal.mansaker@nav.no>
This commit is contained in:
parent
0271b96cbf
commit
7c7115dfe9
2 changed files with 13 additions and 11 deletions
|
@ -34,16 +34,11 @@ class FeilmeldingRepository {
|
||||||
}
|
}
|
||||||
|
|
||||||
fun hentSokteFeilmeldinger(sokeord: String): List<Feilmelding> = transaction {
|
fun hentSokteFeilmeldinger(sokeord: String): List<Feilmelding> = transaction {
|
||||||
/* val query = FeilmeldingTable.selectAll()
|
val sok = "%${sokeord.lowercase()}%"
|
||||||
tittel?.let {
|
|
||||||
query.andWhere { FeilmeldingTable.tittel like sokeord }
|
|
||||||
}
|
|
||||||
beskrivelse?.let {
|
|
||||||
query.andWhere { FeilmeldingTable.beskrivelse like sokeord }
|
|
||||||
} */
|
|
||||||
val sok = "%${sokeord}%"
|
|
||||||
|
|
||||||
FeilmeldingTable.select((FeilmeldingTable.tittel like sok) or (FeilmeldingTable.beskrivelse like sok)).map(::radTilFeilmelding)
|
FeilmeldingTable.select((FeilmeldingTable.tittel.lowerCase() like sok)
|
||||||
|
or (FeilmeldingTable.beskrivelse.lowerCase() like sok))
|
||||||
|
.map(::radTilFeilmelding)
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -17,7 +17,6 @@ import java.time.LocalDateTime
|
||||||
import kotlin.test.assertEquals
|
import kotlin.test.assertEquals
|
||||||
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)
|
||||||
class FeilmeldingTest {
|
class FeilmeldingTest {
|
||||||
private val database = Database(dbconfig()).configureFlyway()
|
private val database = Database(dbconfig()).configureFlyway()
|
||||||
|
@ -83,7 +82,7 @@ class FeilmeldingTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
fun `Henter feilmeldinger som har søkestreng som substreng`() {
|
fun `Henter feilmeldinger som har søkestreng som substreng`() {
|
||||||
val sokeresultat: List<Feilmelding> = feilmeldingRepository.hentSokteFeilmeldinger("Teste")
|
val sokeresultat: List<Feilmelding> = feilmeldingRepository.hentSokteFeilmeldinger("este")
|
||||||
assertEquals(1, sokeresultat.size)
|
assertEquals(1, sokeresultat.size)
|
||||||
assertEquals("Test", sokeresultat[0].tittel)
|
assertEquals("Test", sokeresultat[0].tittel)
|
||||||
assertEquals("Testesen", sokeresultat[0].beskrivelse)
|
assertEquals("Testesen", sokeresultat[0].beskrivelse)
|
||||||
|
@ -94,4 +93,12 @@ class FeilmeldingTest {
|
||||||
val sokeresultat: List<Feilmelding> = feilmeldingRepository.hentSokteFeilmeldinger("abrakadabra")
|
val sokeresultat: List<Feilmelding> = feilmeldingRepository.hentSokteFeilmeldinger("abrakadabra")
|
||||||
assertEquals(0, sokeresultat.size)
|
assertEquals(0, sokeresultat.size)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
fun `Søk er ikke case sensitivt`() {
|
||||||
|
val sokeresultat: List<Feilmelding> = feilmeldingRepository.hentSokteFeilmeldinger("test")
|
||||||
|
assertEquals(1, sokeresultat.size)
|
||||||
|
assertEquals("Test", sokeresultat[0].tittel)
|
||||||
|
assertEquals("Testesen", sokeresultat[0].beskrivelse)
|
||||||
|
}
|
||||||
}
|
}
|
Reference in a new issue