@@ -198,28 +198,32 @@ describe("Translator", () => {
198
198
} ) ;
199
199
} ) ;
200
200
201
- it ( "should not load translations, if module fallback exists" , ( ) => {
202
- return new Promise ( ( done ) => {
203
- const dom = new JSDOM ( `<script>var Log = {log: () => {}};</script><script src="file://${ path . join ( __dirname , ".." , ".." , ".." , "js" , "translator.js" ) } ">` , { runScripts : "dangerously" , resources : "usable" } ) ;
204
- dom . window . onload = async ( ) => {
205
- const { Translator, XMLHttpRequest } = dom . window ;
206
- const file = "translation_test.json" ;
201
+ it ( "should not load translations, if module fallback exists" , async ( ) => {
202
+ const dom = new JSDOM ( `<script>var Log = {log: () => {}};</script><script src="file://${ path . join ( __dirname , ".." , ".." , ".." , "js" , "translator.js" ) } ">` , { runScripts : "dangerously" , resources : "usable" } ) ;
203
+ await new Promise ( ( resolve ) => dom . window . onload = resolve ) ;
207
204
208
- XMLHttpRequest . prototype . send = ( ) => {
209
- throw new Error ( "Shouldn't load files" ) ;
210
- } ;
205
+ const { Translator } = dom . window ;
206
+ const file = "translation_test.json" ;
211
207
212
- Translator . translationsFallback [ mmm . name ] = {
213
- Hello : "Hallo"
214
- } ;
208
+ // Mock fetch to ensure no actual requests are made
209
+ const originalFetch = dom . window . fetch ;
210
+ dom . window . fetch = jest . fn ( ( ) => {
211
+ throw new Error ( "Shouldn't load files" ) ;
212
+ } ) ;
215
213
216
- await Translator . load ( mmm , file , false ) ;
217
- expect ( Translator . translations [ mmm . name ] ) . toBeUndefined ( ) ;
218
- expect ( Translator . translationsFallback [ mmm . name ] ) . toEqual ( {
219
- Hello : "Hallo"
220
- } ) ;
221
- done ( ) ;
222
- } ;
214
+ // Restore the original fetch after the test
215
+ afterAll ( ( ) => {
216
+ dom . window . fetch = originalFetch ;
217
+ } ) ;
218
+
219
+ Translator . translationsFallback [ mmm . name ] = {
220
+ Hello : "Hallo"
221
+ } ;
222
+
223
+ await Translator . load ( mmm , file , false ) ;
224
+ expect ( Translator . translations [ mmm . name ] ) . toBeUndefined ( ) ;
225
+ expect ( Translator . translationsFallback [ mmm . name ] ) . toEqual ( {
226
+ Hello : "Hallo"
223
227
} ) ;
224
228
} ) ;
225
229
} ) ;
0 commit comments