@@ -27,6 +27,8 @@ import no.nav.syfo.personstatus.domain.*
27
27
import no.nav.syfo.testutil.*
28
28
import no.nav.syfo.testutil.UserConstants.ARBEIDSTAKER_FNR
29
29
import no.nav.syfo.testutil.UserConstants.NAV_ENHET
30
+ import no.nav.syfo.testutil.UserConstants.VEILEDER_ETTERNAVN
31
+ import no.nav.syfo.testutil.UserConstants.VEILEDER_FORNAVN
30
32
import no.nav.syfo.testutil.UserConstants.VEILEDER_ID
31
33
import no.nav.syfo.tilgangskontroll.TilgangskontrollConsumer
32
34
import org.amshove.kluent.shouldEqual
@@ -54,6 +56,10 @@ object PersonoversiktStatusApiSpek : Spek({
54
56
client
55
57
)
56
58
val oversiktHendelseService = OversiktHendelseService (database)
59
+ val veilederConsumer = VeilederConsumer (
60
+ env.syfoveilederUrl,
61
+ clientVeileder
62
+ )
57
63
58
64
afterGroup {
59
65
database.stop()
@@ -73,7 +79,7 @@ object PersonoversiktStatusApiSpek : Spek({
73
79
}
74
80
75
81
application.routing {
76
- registerPersonoversiktApi(tilgangskontrollConsumer, PersonoversiktStatusService (database))
82
+ registerPersonoversiktApi(tilgangskontrollConsumer, PersonoversiktStatusService (database, veilederConsumer ))
77
83
}
78
84
79
85
beforeEachTest {
@@ -129,12 +135,14 @@ object PersonoversiktStatusApiSpek : Spek({
129
135
call.request.cookies[cookies]
130
136
}) {
131
137
response.status() shouldEqual HttpStatusCode .OK
132
- val returnertVerdig = objectMapper.readValue<List <PersonOversiktStatus >>(response.content!!)[0 ]
133
- returnertVerdig.veilederIdent shouldEqual tilknytning.veilederIdent
134
- returnertVerdig.fnr shouldEqual oversiktHendelse.fnr
135
- returnertVerdig.enhet shouldEqual oversiktHendelse.enhetId
136
- returnertVerdig.motebehovUbehandlet shouldEqual true
137
- returnertVerdig.moteplanleggerUbehandlet shouldEqual null
138
+ val personOversiktStatus = objectMapper.readValue<List <PersonOversiktStatus >>(response.content!!)[0 ]
139
+ personOversiktStatus.veilederIdent shouldEqual tilknytning.veilederIdent
140
+ personOversiktStatus.fnr shouldEqual oversiktHendelse.fnr
141
+ personOversiktStatus.enhet shouldEqual oversiktHendelse.enhetId
142
+ personOversiktStatus.motebehovUbehandlet shouldEqual true
143
+ personOversiktStatus.moteplanleggerUbehandlet shouldEqual null
144
+ personOversiktStatus.veileder?.fornavn shouldEqual VEILEDER_FORNAVN
145
+ personOversiktStatus.veileder?.etternavn shouldEqual VEILEDER_ETTERNAVN
138
146
}
139
147
}
140
148
@@ -156,12 +164,14 @@ object PersonoversiktStatusApiSpek : Spek({
156
164
call.request.cookies[cookies]
157
165
}) {
158
166
response.status() shouldEqual HttpStatusCode .OK
159
- val returnertVerdig = objectMapper.readValue<List <PersonOversiktStatus >>(response.content!!)[0 ]
160
- returnertVerdig.veilederIdent shouldEqual tilknytning.veilederIdent
161
- returnertVerdig.fnr shouldEqual oversiktHendelse.fnr
162
- returnertVerdig.enhet shouldEqual oversiktHendelse.enhetId
163
- returnertVerdig.motebehovUbehandlet shouldEqual null
164
- returnertVerdig.moteplanleggerUbehandlet shouldEqual true
167
+ val personOversiktStatus = objectMapper.readValue<List <PersonOversiktStatus >>(response.content!!)[0 ]
168
+ personOversiktStatus.veilederIdent shouldEqual tilknytning.veilederIdent
169
+ personOversiktStatus.fnr shouldEqual oversiktHendelse.fnr
170
+ personOversiktStatus.enhet shouldEqual oversiktHendelse.enhetId
171
+ personOversiktStatus.motebehovUbehandlet shouldEqual null
172
+ personOversiktStatus.moteplanleggerUbehandlet shouldEqual true
173
+ personOversiktStatus.veileder?.fornavn shouldEqual VEILEDER_FORNAVN
174
+ personOversiktStatus.veileder?.etternavn shouldEqual VEILEDER_ETTERNAVN
165
175
}
166
176
}
167
177
@@ -228,5 +238,33 @@ private val client = HttpClient(MockEngine) {
228
238
}
229
239
}
230
240
241
+ @InternalAPI
242
+ private val clientVeileder = HttpClient (MockEngine ) {
243
+ val baseUrl = env.syfoveilederUrl
244
+ engine {
245
+ addHandler { request ->
246
+ when (request.url.fullUrl) {
247
+ " $baseUrl /syfoveileder/api/veiledere/enhet/$NAV_ENHET " -> {
248
+ val responseHeaders = headersOf(" Content-Type" to listOf (ContentType .Application .Json .toString()))
249
+ respond(ByteReadChannel ((
250
+ " [{\" ident\" :\" Z999999\" ,\" fornavn\" :\" $VEILEDER_FORNAVN \" ," +
251
+ " \" etternavn\" :\" $VEILEDER_ETTERNAVN \" ,\" enhetNr\" :\" $NAV_ENHET \" ,\" enhetNavn\" :\" NAV X-FILES\" }]"
252
+
253
+ )
254
+ .toByteArray(Charsets .UTF_8 )), HttpStatusCode .OK , responseHeaders)
255
+ }
256
+ else -> error(" Unhandled ${request.url.fullUrl} " )
257
+ }
258
+ }
259
+ }
260
+ install(JsonFeature ) {
261
+ serializer = JacksonSerializer {
262
+ registerKotlinModule()
263
+ registerModule(JavaTimeModule ())
264
+ configure(SerializationFeature .WRITE_DATES_AS_TIMESTAMPS , false )
265
+ }
266
+ }
267
+ }
268
+
231
269
private val Url .hostWithPortIfRequired: String get() = if (port == protocol.defaultPort) host else hostWithPort
232
270
private val Url .fullUrl: String get() = " ${protocol.name} ://$hostWithPortIfRequired$fullPath "
0 commit comments