@@ 158-216 (lines=59) @@ | ||
155 | $this->assertEquals('1453720507', $token->getToken()); |
|
156 | } |
|
157 | ||
158 | public function testGetTokenShouldGetNewTokenIfCachedTokenIsNotValid() |
|
159 | { |
|
160 | $mockHandler = new MockHandler( |
|
161 | [ |
|
162 | function (RequestInterface $request) { |
|
163 | ||
164 | $this->assertTrue($request->hasHeader('timeout')); |
|
165 | $this->assertEquals( |
|
166 | 3, |
|
167 | $request->getHeaderLine('timeout') |
|
168 | ); |
|
169 | ||
170 | return new Response( |
|
171 | 200, |
|
172 | ['Content-Type' => 'application/json'], |
|
173 | json_encode(['token' => '1453720507']) |
|
174 | ); |
|
175 | }, |
|
176 | function (RequestInterface $request) { |
|
177 | ||
178 | $this->assertTrue($request->hasHeader('timeout')); |
|
179 | $this->assertEquals( |
|
180 | 3, |
|
181 | $request->getHeaderLine('timeout') |
|
182 | ); |
|
183 | ||
184 | return new Response( |
|
185 | 200, |
|
186 | ['Content-Type' => 'application/json'], |
|
187 | json_encode(['token' => 'foo123']) |
|
188 | ); |
|
189 | }, |
|
190 | ] |
|
191 | ); |
|
192 | ||
193 | $handler = HandlerStack::create($mockHandler); |
|
194 | ||
195 | $authClient = new Client([ |
|
196 | 'handler' => $handler, |
|
197 | ]); |
|
198 | ||
199 | $authStrategy = new QueryAuthStrategy(['username' => 'admin', 'password' => 'admin']); |
|
200 | ||
201 | $jwtManager = new JwtManager( |
|
202 | $authClient, |
|
203 | $authStrategy, |
|
204 | null, |
|
205 | ['token_url' => '/api/token', 'timeout' => 3] |
|
206 | ); |
|
207 | $token = $jwtManager->getJwtToken(); |
|
208 | ||
209 | $this->assertInstanceOf(JwtToken::class, $token); |
|
210 | $this->assertEquals('1453720507', $token->getToken()); |
|
211 | ||
212 | $token = $jwtManager->getJwtToken(); |
|
213 | ||
214 | $this->assertInstanceOf(JwtToken::class, $token); |
|
215 | $this->assertEquals('foo123', $token->getToken()); |
|
216 | } |
|
217 | ||
218 | public function testGetTokenShouldUseTheCachedTokenIfItIsValid() |
|
219 | { |
|
@@ 218-276 (lines=59) @@ | ||
215 | $this->assertEquals('foo123', $token->getToken()); |
|
216 | } |
|
217 | ||
218 | public function testGetTokenShouldUseTheCachedTokenIfItIsValid() |
|
219 | { |
|
220 | $mockHandler = new MockHandler( |
|
221 | [ |
|
222 | function (RequestInterface $request) { |
|
223 | ||
224 | $this->assertTrue($request->hasHeader('timeout')); |
|
225 | $this->assertEquals( |
|
226 | 3, |
|
227 | $request->getHeaderLine('timeout') |
|
228 | ); |
|
229 | ||
230 | return new Response( |
|
231 | 200, |
|
232 | ['Content-Type' => 'application/json'], |
|
233 | json_encode(['token' => '1453720507', 'expires_in' => 3600]) |
|
234 | ); |
|
235 | }, |
|
236 | function (RequestInterface $request) { |
|
237 | ||
238 | $this->assertTrue($request->hasHeader('timeout')); |
|
239 | $this->assertEquals( |
|
240 | 3, |
|
241 | $request->getHeaderLine('timeout') |
|
242 | ); |
|
243 | ||
244 | return new Response( |
|
245 | 200, |
|
246 | ['Content-Type' => 'application/json'], |
|
247 | json_encode(['token' => 'foo123']) |
|
248 | ); |
|
249 | }, |
|
250 | ] |
|
251 | ); |
|
252 | ||
253 | $handler = HandlerStack::create($mockHandler); |
|
254 | ||
255 | $authClient = new Client([ |
|
256 | 'handler' => $handler, |
|
257 | ]); |
|
258 | ||
259 | $authStrategy = new QueryAuthStrategy(['username' => 'admin', 'password' => 'admin']); |
|
260 | ||
261 | $jwtManager = new JwtManager( |
|
262 | $authClient, |
|
263 | $authStrategy, |
|
264 | null, |
|
265 | ['token_url' => '/api/token', 'timeout' => 3] |
|
266 | ); |
|
267 | $token = $jwtManager->getJwtToken(); |
|
268 | ||
269 | $this->assertInstanceOf(JwtToken::class, $token); |
|
270 | $this->assertEquals('1453720507', $token->getToken()); |
|
271 | ||
272 | $token = $jwtManager->getJwtToken(); |
|
273 | ||
274 | $this->assertInstanceOf(JwtToken::class, $token); |
|
275 | $this->assertEquals('1453720507', $token->getToken()); |
|
276 | } |
|
277 | ||
278 | public function testGetTokenShouldUseTheCachedTokenIfItIsValidBasedOnExpField() |
|
279 | { |