Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions gradle/libs.versions.toml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
[versions]
eupid = "3.5.0-SNAPSHOT"
eupid = "3.5.0"
eupid-sdjwt = "1.4.0"
mdl = "1.4.0"
taxid = "1.3.0"
Expand All @@ -10,7 +10,7 @@ av = "1.1.0"
qrcode = "4.5.0"
pgsql = "42.7.7"
mockito = "6.2.1"
vck = "5.13.0-SNAPSHOT"
vck = "5.13.0"
nimbus = "10.7"

spring-boot = "4.0.6"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,12 +1,18 @@
package at.asitplus.wallet.backend.spring

import at.asitplus.wallet.backend.Paths
import at.asitplus.wallet.backend.service.RevocationListScheduler
import at.asitplus.wallet.backend.service.RevocationListWriter
import at.asitplus.wallet.lib.agent.TimePeriodProvider
import io.kotest.matchers.nulls.shouldNotBeNull
import kotlinx.coroutines.runBlocking
import org.junit.jupiter.api.BeforeEach
import org.junit.jupiter.api.Test
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.boot.webtestclient.autoconfigure.AutoConfigureWebTestClient
import org.springframework.boot.test.context.SpringBootTest
import org.springframework.boot.webtestclient.autoconfigure.AutoConfigureWebTestClient
import org.springframework.http.HttpHeaders
import org.springframework.test.context.bean.override.mockito.MockitoBean
import org.springframework.test.web.reactive.server.WebTestClient
import org.springframework.test.web.reactive.server.returnResult
import kotlin.time.Clock
Expand All @@ -25,6 +31,18 @@ class PublicControllerWebClientTest {
@Autowired
private lateinit var timePeriodProvider: TimePeriodProvider

@Autowired
private lateinit var revocationListWriter: RevocationListWriter

@MockitoBean
private lateinit var revocationListScheduler: RevocationListScheduler

@BeforeEach
fun setUpRevocationList() = runBlocking {
val timePeriod = timePeriodProvider.getRelevantTimePeriods(Clock.System).first()
revocationListWriter.writeRevocationList(timePeriod)
}

@Test
fun `GET status list with If-None-Match in second request`() {
val timePeriod = timePeriodProvider.getRelevantTimePeriods(Clock.System).first()
Expand Down Expand Up @@ -61,13 +79,13 @@ class PublicControllerWebClientTest {
} else {
it
}
}
}.shouldNotBeNull()

webClient.get().uri("${Paths.Credentials.StatusUrl}/$timePeriod")
.header(HttpHeaders.IF_NONE_MATCH, etag ?: "")
.header(HttpHeaders.IF_NONE_MATCH, etag)
.exchange()
.expectStatus().isNotModified
.expectHeader().exists(HttpHeaders.ETAG)
.returnResult<String>()
}
}
}
Loading