1
1
package no .nav .foreldrepenger .mottak .oppslag .dkif ;
2
2
3
- import static io .netty .handler .codec .http .HttpResponseStatus .BAD_GATEWAY ;
4
- import static org .assertj .core .api .Assertions .assertThat ;
5
-
6
- import java .io .IOException ;
7
- import java .net .URI ;
8
-
3
+ import no .nav .foreldrepenger .common .domain .Fødselsnummer ;
4
+ import no .nav .foreldrepenger .common .oppslag .dkif .Målform ;
5
+ import no .nav .foreldrepenger .mottak .http .TokenUtil ;
6
+ import okhttp3 .mockwebserver .MockResponse ;
7
+ import okhttp3 .mockwebserver .MockWebServer ;
9
8
import org .junit .jupiter .api .AfterAll ;
10
9
import org .junit .jupiter .api .BeforeAll ;
11
10
import org .junit .jupiter .api .Test ;
12
11
import org .junit .jupiter .api .extension .ExtendWith ;
13
12
import org .springframework .test .context .junit .jupiter .SpringExtension ;
14
13
import org .springframework .web .reactive .function .client .WebClient ;
15
14
16
- import no .nav .foreldrepenger .common .oppslag .dkif .Målform ;
17
- import okhttp3 .mockwebserver .MockResponse ;
18
- import okhttp3 .mockwebserver .MockWebServer ;
15
+ import java .io .IOException ;
16
+ import java .net .URI ;
17
+
18
+ import static io .netty .handler .codec .http .HttpResponseStatus .BAD_GATEWAY ;
19
+ import static org .assertj .core .api .Assertions .assertThat ;
20
+ import static org .mockito .Mockito .mock ;
21
+ import static org .mockito .Mockito .when ;
19
22
20
23
@ ExtendWith (SpringExtension .class )
21
24
class DigdirKrrProxyConnectionTest {
@@ -27,11 +30,13 @@ class DigdirKrrProxyConnectionTest {
27
30
static void setUp () throws IOException {
28
31
mockWebServer = new MockWebServer ();
29
32
mockWebServer .start ();
33
+ var tokenuUtil = mock (TokenUtil .class );
34
+ when (tokenuUtil .autentisertBrukerOrElseThrowException ()).thenReturn (new Fødselsnummer ("12345678901" ));
30
35
31
36
var baseUrl = String .format ("http://localhost:%s" , mockWebServer .getPort ());
32
37
var webClient = WebClient .create ();
33
38
var digdirKrrProxyConfig = new DigdirKrrProxyConfig (URI .create (baseUrl ), "rest/v1/person" );
34
- digdirKrrProxyConnection = new DigdirKrrProxyConnection (webClient , digdirKrrProxyConfig );
39
+ digdirKrrProxyConnection = new DigdirKrrProxyConnection (webClient , digdirKrrProxyConfig , tokenuUtil );
35
40
}
36
41
37
42
@ AfterAll
@@ -43,20 +48,24 @@ static void tearDown() throws IOException {
43
48
void happycase () {
44
49
var body = """
45
50
{
46
- "personident": "string",
47
- "aktiv": true,
48
- "kanVarsles": true,
49
- "reservert": true,
50
- "spraak": "NB",
51
- "epostadresse": "string",
52
- "epostadresseOppdatert": "2022-03-15T13:10:01.920Z",
53
- "mobiltelefonnummer": "string",
54
- "mobiltelefonnummerOppdatert": "2022-03-15T13:10:01.920Z",
55
- "sikkerDigitalPostkasse": {
56
- "adresse": "string",
57
- "leverandoerAdresse": "string",
58
- "leverandoerSertifikat": "string"
59
- }
51
+ "personer": {
52
+ "12345678901": {
53
+ "personident": "string",
54
+ "aktiv": true,
55
+ "kanVarsles": true,
56
+ "reservert": true,
57
+ "spraak": "NB",
58
+ "epostadresse": "string",
59
+ "epostadresseOppdatert": "2022-03-15T13:10:01.920Z",
60
+ "mobiltelefonnummer": "string",
61
+ "mobiltelefonnummerOppdatert": "2022-03-15T13:10:01.920Z",
62
+ "sikkerDigitalPostkasse": {
63
+ "adresse": "string",
64
+ "leverandoerAdresse": "string",
65
+ "leverandoerSertifikat": "string"
66
+ }
67
+ }
68
+ }
60
69
}
61
70
""" ;
62
71
mockWebServer .enqueue (new MockResponse ()
@@ -69,14 +78,41 @@ void happycase() {
69
78
70
79
@ Test
71
80
void skalBrukeDefaultMålformVed4xxFeil () {
81
+ var body = """
82
+ "feil": {
83
+ "12345678901": "person_ikke_funnet"
84
+ }
85
+ """ ;
86
+
72
87
mockWebServer .enqueue (new MockResponse ()
73
- .setResponseCode ( 404 )
88
+ .setBody ( body )
74
89
.addHeader ("Content-Type" , "application/json" ));
75
90
76
91
var målform = digdirKrrProxyConnection .målform ();
77
92
assertThat (målform ).isEqualTo (Målform .NB );
78
93
}
79
94
95
+ @ Test
96
+ void person_som_finnes_i_pdl_men_mangler_kontaktinfo_i_KRR_har_respons_med_aktiv_false_bruk_default_språk_nb () {
97
+ var body = """
98
+ {
99
+ "personer": {
100
+ "12345678901": {
101
+ "personident": "12345678901",
102
+ "aktiv": false
103
+ }
104
+ }
105
+ }
106
+ """ ;
107
+
108
+ mockWebServer .enqueue (new MockResponse ()
109
+ .setBody (body )
110
+ .addHeader ("Content-Type" , "application/json" ));
111
+
112
+ var målform = digdirKrrProxyConnection .målform ();
113
+ assertThat (målform ).isEqualTo (Målform .NB );
114
+ }
115
+
80
116
@ Test
81
117
void sjekkerAtRetryMekanismenFungere () {
82
118
mockWebServer .enqueue (new MockResponse ()
@@ -87,8 +123,15 @@ void sjekkerAtRetryMekanismenFungere() {
87
123
.setResponseCode (BAD_GATEWAY .code ()));
88
124
mockWebServer .enqueue (new MockResponse ()
89
125
.setBody ("""
90
- {"spraak": "NB"}
91
- """ )
126
+ {
127
+ "personer": {
128
+ "12345678901": {
129
+ "personident": "12345678901",
130
+ "spraak": "NB"
131
+ }
132
+ }
133
+ }
134
+ """ )
92
135
.addHeader ("Content-Type" , "application/json" ));
93
136
94
137
0 commit comments