@@ -118,38 +118,6 @@ describe('ConfigLoader', () => {
118
118
expect ( spy . firstCall . args [ 0 ] ) . to . deep . include ( newConfig ) ;
119
119
} ) ;
120
120
121
- it ( 'should emit a single event when config changes' , async ( ) => {
122
- const initialConfig = {
123
- configurationSources : {
124
- enabled : true ,
125
- sources : [
126
- {
127
- type : 'file' ,
128
- enabled : true ,
129
- path : tempConfigFile ,
130
- } ,
131
- ] ,
132
- reloadIntervalSeconds : 0 ,
133
- } ,
134
- } ;
135
-
136
- const newConfig = {
137
- proxyUrl : 'https://new-test.com' ,
138
- } ;
139
-
140
- fs . writeFileSync ( tempConfigFile , JSON . stringify ( newConfig ) ) ;
141
-
142
- configLoader = new ConfigLoader ( initialConfig ) ;
143
- const spy = sinon . spy ( ) ;
144
- configLoader . on ( 'configurationChanged' , spy ) ;
145
-
146
- await configLoader . reloadConfiguration ( ) ;
147
- await configLoader . reloadConfiguration ( ) ;
148
-
149
- expect ( spy . calledOnce ) . to . be . true ;
150
- expect ( spy . firstCall . args [ 0 ] ) . to . deep . include ( newConfig ) ;
151
- } ) ;
152
-
153
121
it ( 'should not emit event if config has not changed' , async ( ) => {
154
122
const testConfig = {
155
123
proxyUrl : 'https://test.com' ,
@@ -212,9 +180,29 @@ describe('ConfigLoader', () => {
212
180
// Check if directory exists
213
181
expect ( fs . existsSync ( configLoader . cacheDir ) ) . to . be . true ;
214
182
} ) ;
215
- } ) ;
216
183
217
- describe ( 'loadRemoteConfig' , ( ) => {
184
+ it ( 'should perform initial load on start if configurationSources is enabled' , async ( ) => {
185
+ const mockConfig = {
186
+ configurationSources : {
187
+ enabled : true ,
188
+ sources : [
189
+ {
190
+ type : 'file' ,
191
+ enabled : true ,
192
+ path : tempConfigFile ,
193
+ } ,
194
+ ] ,
195
+ reloadIntervalSeconds : 30 ,
196
+ } ,
197
+ } ;
198
+
199
+ const configLoader = new ConfigLoader ( mockConfig ) ;
200
+ const spy = sinon . spy ( configLoader , 'reloadConfiguration' ) ;
201
+ await configLoader . start ( ) ;
202
+
203
+ expect ( spy . calledOnce ) . to . be . true ;
204
+ } ) ;
205
+ } ) ;
218
206
let configLoader ;
219
207
beforeEach ( async ( ) => {
220
208
const configFilePath = path . join ( __dirname , '..' , 'proxy.config.json' ) ;
0 commit comments