@@ -21,6 +21,11 @@ describe('AuthorizationCode', () => {
21
21
clientId : 'client-id' ,
22
22
} ;
23
23
24
+ beforeAll ( async ( ) => {
25
+ const { publicKey } = await mocks . getKeys ( ) ;
26
+ clientConfig . jwks = { keys : [ publicKey ] } ;
27
+ } ) ;
28
+
24
29
describe ( 'new AuthorizationCode' , ( ) => {
25
30
it ( 'can construct AuthorizationCode instance' , ( ) => {
26
31
expect (
@@ -164,8 +169,10 @@ describe('AuthorizationCode', () => {
164
169
} ) ;
165
170
166
171
it ( 'saves tokens to memory store after exchanging auth code for tokens' , async ( ) => {
167
- const mockAccessToken = mocks . getMockAccessToken ( clientConfig . authDomain ) ;
168
- const mockIdToken = mocks . getMockIdToken ( clientConfig . authDomain ) ;
172
+ const mockAccessToken = await mocks . getMockAccessToken (
173
+ clientConfig . authDomain
174
+ ) ;
175
+ const mockIdToken = await mocks . getMockIdToken ( clientConfig . authDomain ) ;
169
176
mocks . fetchClient . mockResolvedValue ( {
170
177
json : ( ) => ( {
171
178
access_token : mockAccessToken . token ,
@@ -200,7 +207,9 @@ describe('AuthorizationCode', () => {
200
207
} ) ;
201
208
202
209
it ( 'return an existing token if an unexpired token is available' , async ( ) => {
203
- const mockAccessToken = mocks . getMockAccessToken ( clientConfig . authDomain ) ;
210
+ const mockAccessToken = await mocks . getMockAccessToken (
211
+ clientConfig . authDomain
212
+ ) ;
204
213
await sessionManager . setSessionItem ( 'access_token' , mockAccessToken . token ) ;
205
214
const client = new AuthorizationCode ( clientConfig , clientSecret ) ;
206
215
const token = await client . getToken ( sessionManager ) ;
@@ -216,7 +225,7 @@ describe('AuthorizationCode', () => {
216
225
} ) ;
217
226
218
227
it ( 'throws an error if no refresh token is found in memory' , async ( ) => {
219
- const mockAccessToken = mocks . getMockAccessToken (
228
+ const mockAccessToken = await mocks . getMockAccessToken (
220
229
clientConfig . authDomain ,
221
230
true
222
231
) ;
@@ -236,7 +245,7 @@ describe('AuthorizationCode', () => {
236
245
} ) ,
237
246
} ) ;
238
247
239
- const expiredAccessToken = mocks . getMockAccessToken (
248
+ const expiredAccessToken = await mocks . getMockAccessToken (
240
249
clientConfig . authDomain ,
241
250
true
242
251
) ;
@@ -251,8 +260,8 @@ describe('AuthorizationCode', () => {
251
260
} ) ;
252
261
253
262
it ( 'fetches new tokens if access token is expired and refresh token is available' , async ( ) => {
254
- const newAccessToken = mocks . getMockAccessToken ( clientConfig . authDomain ) ;
255
- const newIdToken = mocks . getMockIdToken ( clientConfig . authDomain ) ;
263
+ const newAccessToken = await mocks . getMockAccessToken ( clientConfig . authDomain ) ;
264
+ const newIdToken = await mocks . getMockIdToken ( clientConfig . authDomain ) ;
256
265
mocks . fetchClient . mockResolvedValue ( {
257
266
json : ( ) => ( {
258
267
access_token : newAccessToken . token ,
@@ -261,7 +270,7 @@ describe('AuthorizationCode', () => {
261
270
} ) ,
262
271
} ) ;
263
272
264
- const expiredAccessToken = mocks . getMockAccessToken (
273
+ const expiredAccessToken = await mocks . getMockAccessToken (
265
274
clientConfig . authDomain ,
266
275
true
267
276
) ;
@@ -291,8 +300,8 @@ describe('AuthorizationCode', () => {
291
300
} ) ;
292
301
293
302
it ( 'overrides SDK version header if options are provided to client constructor' , async ( ) => {
294
- const newAccessToken = mocks . getMockAccessToken ( clientConfig . authDomain ) ;
295
- const newIdToken = mocks . getMockIdToken ( clientConfig . authDomain ) ;
303
+ const newAccessToken = await mocks . getMockAccessToken ( clientConfig . authDomain ) ;
304
+ const newIdToken = await mocks . getMockIdToken ( clientConfig . authDomain ) ;
296
305
mocks . fetchClient . mockResolvedValue ( {
297
306
json : ( ) => ( {
298
307
access_token : newAccessToken . token ,
@@ -301,7 +310,7 @@ describe('AuthorizationCode', () => {
301
310
} ) ,
302
311
} ) ;
303
312
304
- const expiredAccessToken = mocks . getMockAccessToken (
313
+ const expiredAccessToken = await mocks . getMockAccessToken (
305
314
clientConfig . authDomain ,
306
315
true
307
316
) ;
@@ -335,8 +344,8 @@ describe('AuthorizationCode', () => {
335
344
} ) ;
336
345
337
346
it ( 'commits new tokens to memory if new tokens are fetched' , async ( ) => {
338
- const newAccessToken = mocks . getMockAccessToken ( clientConfig . authDomain ) ;
339
- const newIdToken = mocks . getMockIdToken ( clientConfig . authDomain ) ;
347
+ const newAccessToken = await mocks . getMockAccessToken ( clientConfig . authDomain ) ;
348
+ const newIdToken = await mocks . getMockIdToken ( clientConfig . authDomain ) ;
340
349
const newRefreshToken = 'new_refresh_token' ;
341
350
342
351
mocks . fetchClient . mockResolvedValue ( {
@@ -347,7 +356,7 @@ describe('AuthorizationCode', () => {
347
356
} ) ,
348
357
} ) ;
349
358
350
- const expiredAccessToken = mocks . getMockAccessToken (
359
+ const expiredAccessToken = await mocks . getMockAccessToken (
351
360
clientConfig . authDomain ,
352
361
true
353
362
) ;
@@ -372,7 +381,9 @@ describe('AuthorizationCode', () => {
372
381
await sessionManager . setSessionItem ( 'refresh_token' , 'mines are here' ) ;
373
382
await sessionManager . setSessionItem (
374
383
'access_token' ,
375
- mocks . getMockAccessToken ( clientConfig . authDomain , true ) . token
384
+ (
385
+ await mocks . getMockAccessToken ( clientConfig . authDomain , true )
386
+ ) . token
376
387
) ;
377
388
378
389
const client = new AuthorizationCode ( clientConfig , clientSecret ) ;
@@ -392,7 +403,9 @@ describe('AuthorizationCode', () => {
392
403
} ) ;
393
404
394
405
it ( 'fetches user profile using the available access token' , async ( ) => {
395
- const mockAccessToken = mocks . getMockAccessToken ( clientConfig . authDomain ) ;
406
+ const mockAccessToken = await mocks . getMockAccessToken (
407
+ clientConfig . authDomain
408
+ ) ;
396
409
await sessionManager . setSessionItem ( 'access_token' , mockAccessToken . token ) ;
397
410
398
411
const headers = new Headers ( ) ;
@@ -416,26 +429,5 @@ describe('AuthorizationCode', () => {
416
429
{ method : 'GET' , headers }
417
430
) ;
418
431
} ) ;
419
-
420
- it ( 'commits fetched user details to memory store' , async ( ) => {
421
- const mockAccessToken = mocks . getMockAccessToken ( clientConfig . authDomain ) ;
422
- await sessionManager . setSessionItem ( 'access_token' , mockAccessToken . token ) ;
423
- const userDetails = {
424
- family_name : 'family_name' ,
425
- given_name : 'give_name' ,
426
- email : 'test@test.com' ,
427
- picture : null ,
428
- id : 'id' ,
429
- } ;
430
-
431
- mocks . fetchClient . mockResolvedValue ( {
432
- json : ( ) => userDetails ,
433
- } ) ;
434
-
435
- const client = new AuthorizationCode ( clientConfig , clientSecret ) ;
436
- await client . getUserProfile ( sessionManager ) ;
437
- expect ( mocks . fetchClient ) . toHaveBeenCalledTimes ( 1 ) ;
438
- expect ( await sessionManager . getSessionItem ( 'user' ) ) . toStrictEqual ( userDetails ) ;
439
- } ) ;
440
432
} ) ;
441
433
} ) ;
0 commit comments