@@ -657,6 +657,26 @@ describe('fetchBaseQuery', () => {
657
657
expect ( request . headers [ 'delete2' ] ) . toBeUndefined ( )
658
658
} )
659
659
660
+ test ( 'prepareHeaders can return undefined' , async ( ) => {
661
+ let request : any
662
+
663
+ const token = 'accessToken'
664
+
665
+ const _baseQuery = fetchBaseQuery ( {
666
+ baseUrl,
667
+ prepareHeaders : ( headers ) => {
668
+ headers . set ( 'authorization' , `Bearer ${ token } ` )
669
+ } ,
670
+ } )
671
+
672
+ const doRequest = async ( ) =>
673
+ _baseQuery ( { url : '/echo' } , commonBaseQueryApi , { } )
674
+
675
+ ; ( { data : request } = await doRequest ( ) )
676
+
677
+ expect ( request . headers [ 'authorization' ] ) . toBe ( `Bearer ${ token } ` )
678
+ } )
679
+
660
680
test ( 'prepareHeaders is able to be an async function' , async ( ) => {
661
681
let request : any
662
682
@@ -679,6 +699,27 @@ describe('fetchBaseQuery', () => {
679
699
expect ( request . headers [ 'authorization' ] ) . toBe ( `Bearer ${ token } ` )
680
700
} )
681
701
702
+ test ( 'prepareHeaders is able to be an async function returning undefined' , async ( ) => {
703
+ let request : any
704
+
705
+ const token = 'accessToken'
706
+ const getAccessTokenAsync = async ( ) => token
707
+
708
+ const _baseQuery = fetchBaseQuery ( {
709
+ baseUrl,
710
+ prepareHeaders : async ( headers ) => {
711
+ headers . set ( 'authorization' , `Bearer ${ await getAccessTokenAsync ( ) } ` )
712
+ } ,
713
+ } )
714
+
715
+ const doRequest = async ( ) =>
716
+ _baseQuery ( { url : '/echo' } , commonBaseQueryApi , { } )
717
+
718
+ ; ( { data : request } = await doRequest ( ) )
719
+
720
+ expect ( request . headers [ 'authorization' ] ) . toBe ( `Bearer ${ token } ` )
721
+ } )
722
+
682
723
test ( 'prepareHeaders is able to select from a state' , async ( ) => {
683
724
let request : any
684
725
0 commit comments