@@ -29,7 +29,17 @@ import {
2929const {
3030 setUser,
3131 getUsers,
32- } = await esmock ( '../../src/utils/auth.js' , { jose, import : { fetch } } ) ;
32+ } = await esmock ( '../../src/utils/auth.js' , { jose } ) ;
33+
34+ async function withMockedFetch ( act ) {
35+ const savedFetch = globalThis . fetch ;
36+ globalThis . fetch = fetch ;
37+ try {
38+ await act ( ) ;
39+ } finally {
40+ globalThis . fetch = savedFetch ;
41+ }
42+ }
3343
3444describe ( 'DA auth' , ( ) => {
3545 describe ( 'get user' , async ( ) => {
@@ -49,14 +59,18 @@ describe('DA auth', () => {
4959 } ) ;
5060
5161 it ( 'authorized if email matches' , async ( ) => {
52- const users = await getUsers ( reqs . site , env ) ;
53- assert . strictEqual ( users [ 0 ] . email , 'aparker@geometrixx.info' ) ;
62+ await withMockedFetch ( async ( ) => {
63+ const users = await getUsers ( reqs . site , env ) ;
64+ assert . strictEqual ( users [ 0 ] . email , 'aparker@geometrixx.info' ) ;
65+ } ) ;
5466 } ) ;
5567
5668 it ( 'authorized with user if email matches and anonymous if present' , async ( ) => {
57- const users = await getUsers ( reqs . siteMulti , env ) ;
58- assert . strictEqual ( users [ 0 ] . email , 'anonymous' )
59- assert . strictEqual ( users [ 1 ] . email , 'aparker@geometrixx.info' ) ;
69+ await withMockedFetch ( async ( ) => {
70+ const users = await getUsers ( reqs . siteMulti , env ) ;
71+ assert . strictEqual ( users [ 0 ] . email , 'anonymous' )
72+ assert . strictEqual ( users [ 1 ] . email , 'aparker@geometrixx.info' ) ;
73+ } ) ;
6074 } ) ;
6175
6276 it ( 'anonymous if ims fails' , async ( ) => {
@@ -71,8 +85,12 @@ describe('DA auth', () => {
7185 'Authorization' : `Bearer aparker@geometrixx.info` ,
7286 } ) ;
7387
74- const userValStr = await setUser ( 'aparker@geometrixx.info' , 100 , headers , env ) ;
75- const userValue = JSON . parse ( userValStr ) ;
88+ let userValue ;
89+
90+ await withMockedFetch ( async ( ) => {
91+ const userValStr = await setUser ( 'aparker@geometrixx.info' , 100 , headers , env ) ;
92+ userValue = JSON . parse ( userValStr ) ;
93+ } ) ;
7694
7795 assert . strictEqual ( 'aparker@geometrixx.info' , userValue . email ) ;
7896 assert . strictEqual ( '123' , userValue . ident ) ;
0 commit comments