@@ -8,8 +8,8 @@ chai.use(chaiAsPromised);
88const expect = chai . expect ;
99
1010import { AppConfigurationClient } from "@azure/app-configuration" ;
11- import { loadFromAzureFrontDoor } from "../src/index.js" ;
12- import { createMockedKeyValue , createMockedFeatureFlag , HttpRequestHeadersPolicy , getCachedIterator , sinon , restoreMocks , createMockedAzureFrontDoorEndpoint , sleepInMs } from "./utils/testHelper.js" ;
11+ import { load , loadFromAzureFrontDoor } from "../src/index.js" ;
12+ import { createMockedKeyValue , createMockedFeatureFlag , HttpRequestHeadersPolicy , getCachedIterator , sinon , restoreMocks , createMockedConnectionString , createMockedAzureFrontDoorEndpoint , sleepInMs } from "./utils/testHelper.js" ;
1313import { TIMESTAMP_HEADER } from "../src/cdn/constants.js" ;
1414import { isBrowser } from "../src/requestTracing/utils.js" ;
1515
@@ -26,22 +26,39 @@ describe("loadFromAzureFrontDoor", function() {
2626 restoreMocks ( ) ;
2727 } ) ;
2828
29- it ( "should not include authorization headers " , async ( ) => {
29+ it ( "should not include authorization and sync-token header when loading from Azure Front Door " , async ( ) => {
3030 const headerPolicy = new HttpRequestHeadersPolicy ( ) ;
3131 const position : "perCall" | "perRetry" = "perCall" ;
3232 const clientOptions = {
3333 retryOptions : {
34- maxRetries : 0 // save time
34+ maxRetries : 0
3535 } ,
3636 additionalPolicies : [ {
3737 policy : headerPolicy ,
3838 position
39- } ]
39+ } ] ,
40+ syncTokens : {
41+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
42+ addSyncTokenFromHeaderValue : ( syncTokenHeaderValue ) => { } ,
43+ getSyncTokenHeaderValue : ( ) => { return "mockedSyncToken" ; }
44+ }
4045 } ;
4146
42- const endpoint = createMockedAzureFrontDoorEndpoint ( ) ;
4347 try {
44- await loadFromAzureFrontDoor ( endpoint , {
48+ await load ( createMockedConnectionString ( ) , {
49+ clientOptions,
50+ startupOptions : {
51+ timeoutInMs : 1
52+ }
53+ } ) ;
54+ } catch { /* empty */ }
55+
56+ expect ( headerPolicy . headers ) . not . undefined ;
57+ expect ( headerPolicy . headers . get ( "Authorization" ) ) . not . undefined ;
58+ expect ( headerPolicy . headers . get ( "Sync-Token" ) ) . to . equal ( "mockedSyncToken" ) ;
59+
60+ try {
61+ await loadFromAzureFrontDoor ( createMockedAzureFrontDoorEndpoint ( ) , {
4562 clientOptions,
4663 startupOptions : {
4764 timeoutInMs : 1
@@ -59,8 +76,8 @@ describe("loadFromAzureFrontDoor", function() {
5976 }
6077
6178 expect ( userAgent ) . satisfy ( ( ua : string ) => ua . startsWith ( "javascript-appconfiguration-provider" ) ) ;
62- expect ( headerPolicy . headers . get ( "authorization" ) ) . to . be . undefined ;
6379 expect ( headerPolicy . headers . get ( "Authorization" ) ) . to . be . undefined ;
80+ expect ( headerPolicy . headers . get ( "Sync-Token" ) ) . to . be . undefined ;
6481 } ) ;
6582
6683 it ( "should load key-values and feature flags" , async ( ) => {
@@ -77,8 +94,7 @@ describe("loadFromAzureFrontDoor", function() {
7794 { items : [ ff ] , response : { status : 200 , headers : createTimestampHeaders ( "2025-09-07T00:00:00Z" ) } }
7895 ] ) ) ;
7996
80- const endpoint = createMockedAzureFrontDoorEndpoint ( ) ;
81- const appConfig = await loadFromAzureFrontDoor ( endpoint , {
97+ const appConfig = await loadFromAzureFrontDoor ( createMockedAzureFrontDoorEndpoint ( ) , {
8298 selectors : [ { keyFilter : "app.*" } ] ,
8399 featureFlagOptions : {
84100 enabled : true
@@ -123,8 +139,7 @@ describe("loadFromAzureFrontDoor", function() {
123139 { items : [ kv1 , kv3 ] , response : { status : 200 , headers : createTimestampHeaders ( "2025-09-07T00:00:05Z" ) } }
124140 ] ) ) ;
125141
126- const endpoint = createMockedAzureFrontDoorEndpoint ( ) ;
127- const appConfig = await loadFromAzureFrontDoor ( endpoint , {
142+ const appConfig = await loadFromAzureFrontDoor ( createMockedAzureFrontDoorEndpoint ( ) , {
128143 selectors : [ { keyFilter : "app.*" } ] ,
129144 refreshOptions : {
130145 enabled : true ,
@@ -171,8 +186,7 @@ describe("loadFromAzureFrontDoor", function() {
171186 { items : [ ff_updated ] , response : { status : 200 , headers : createTimestampHeaders ( "2025-09-07T00:00:00Z" ) } }
172187 ] ) ) ;
173188
174- const endpoint = createMockedAzureFrontDoorEndpoint ( ) ;
175- const appConfig = await loadFromAzureFrontDoor ( endpoint , {
189+ const appConfig = await loadFromAzureFrontDoor ( createMockedAzureFrontDoorEndpoint ( ) , {
176190 featureFlagOptions : {
177191 enabled : true ,
178192 refresh : {
@@ -221,8 +235,7 @@ describe("loadFromAzureFrontDoor", function() {
221235 { items : [ kv1 , kv2_updated ] , response : { status : 200 , headers : createTimestampHeaders ( "2025-09-07T00:00:02Z" ) } } // cache has expired
222236 ] ) ) ;
223237
224- const endpoint = createMockedAzureFrontDoorEndpoint ( ) ;
225- const appConfig = await loadFromAzureFrontDoor ( endpoint , {
238+ const appConfig = await loadFromAzureFrontDoor ( createMockedAzureFrontDoorEndpoint ( ) , {
226239 selectors : [ { keyFilter : "app.*" } ] ,
227240 refreshOptions : {
228241 enabled : true ,
0 commit comments