@@ -5,7 +5,7 @@ import { JSDOM } from "jsdom"
5
5
import {
6
6
getNlsConfiguration ,
7
7
nlsConfigElementId ,
8
- registerRequireOnSelf ,
8
+ getLoader ,
9
9
setBodyBackgroundToThemeBackgroundColor ,
10
10
} from "../../../../src/browser/pages/vscode"
11
11
@@ -176,31 +176,7 @@ describe("vscode", () => {
176
176
localStorage . removeItem ( "colorThemeData" )
177
177
} )
178
178
} )
179
- describe ( "registerRequireOnSelf" , ( ) => {
180
- it ( "should throw an error if self is undefined" , ( ) => {
181
- const options = {
182
- base : "/" ,
183
- csStaticBase : "/hello" ,
184
- logLevel : 1 ,
185
- }
186
- const nlsConfig = {
187
- first : "Jane" ,
188
- last : "Doe" ,
189
- locale : "en" ,
190
- availableLanguages : { } ,
191
- }
192
- const errorMsgPrefix = "[vscode]"
193
- const errorMessage = `${ errorMsgPrefix } Could not register require on self. self is undefined.`
194
- expect ( ( ) => {
195
- registerRequireOnSelf ( {
196
- // @ts -expect-error We are checking what happens if self is undefined.
197
- self : undefined ,
198
- window : global . window ,
199
- nlsConfig : nlsConfig ,
200
- options,
201
- } )
202
- } ) . toThrowError ( errorMessage )
203
- } )
179
+ describe ( "getLoader" , ( ) => {
204
180
it ( "should throw an error if window is undefined" , ( ) => {
205
181
const options = {
206
182
base : "/" ,
@@ -214,11 +190,9 @@ describe("vscode", () => {
214
190
availableLanguages : { } ,
215
191
}
216
192
const errorMsgPrefix = "[vscode]"
217
- const errorMessage = `${ errorMsgPrefix } Could not register require on self. origin is undefined or missing.`
218
- const mockSelf = { } as Window & typeof globalThis
193
+ const errorMessage = `${ errorMsgPrefix } Could not get loader. origin is undefined or missing.`
219
194
expect ( ( ) => {
220
- registerRequireOnSelf ( {
221
- self : mockSelf ,
195
+ getLoader ( {
222
196
// @ts -expect-error We need to test if window is undefined
223
197
origin : undefined ,
224
198
nlsConfig : nlsConfig ,
@@ -239,19 +213,16 @@ describe("vscode", () => {
239
213
availableLanguages : { } ,
240
214
}
241
215
const errorMsgPrefix = "[vscode]"
242
- const errorMessage = `${ errorMsgPrefix } Could not register require on self. options or options.csStaticBase is undefined or missing.`
243
- const mockSelf = { } as Window & typeof globalThis
216
+ const errorMessage = `${ errorMsgPrefix } Could not get loader. options or options.csStaticBase is undefined or missing.`
244
217
expect ( ( ) => {
245
- registerRequireOnSelf ( {
246
- self : mockSelf ,
218
+ getLoader ( {
247
219
origin : "localhost" ,
248
220
nlsConfig : nlsConfig ,
249
221
options,
250
222
} )
251
223
} ) . toThrowError ( errorMessage )
252
224
expect ( ( ) => {
253
- registerRequireOnSelf ( {
254
- self : mockSelf ,
225
+ getLoader ( {
255
226
origin : "localhost" ,
256
227
nlsConfig : nlsConfig ,
257
228
// @ts -expect-error We need to check what happens when options is undefined
@@ -266,19 +237,17 @@ describe("vscode", () => {
266
237
logLevel : 1 ,
267
238
}
268
239
const errorMsgPrefix = "[vscode]"
269
- const errorMessage = `${ errorMsgPrefix } Could not register require on self. nlsConfig is undefined.`
270
- const mockSelf = { } as Window & typeof globalThis
240
+ const errorMessage = `${ errorMsgPrefix } Could not get loader. nlsConfig is undefined.`
271
241
expect ( ( ) => {
272
- registerRequireOnSelf ( {
273
- self : mockSelf ,
242
+ getLoader ( {
274
243
origin : "localthost" ,
275
244
// @ts -expect-error We need to check that it works when this is undefined
276
245
nlsConfig : undefined ,
277
246
options,
278
247
} )
279
248
} ) . toThrowError ( errorMessage )
280
249
} )
281
- it ( "should declare require on self " , ( ) => {
250
+ it ( "should return a loader object " , ( ) => {
282
251
const options = {
283
252
base : "/" ,
284
253
csStaticBase : "/" ,
@@ -290,16 +259,33 @@ describe("vscode", () => {
290
259
locale : "en" ,
291
260
availableLanguages : { } ,
292
261
}
293
- const mockSelf = { } as Window & typeof globalThis
294
- registerRequireOnSelf ( {
295
- self : mockSelf ,
296
- origin : "localthost" ,
262
+ const loader = getLoader ( {
263
+ origin : "localhost" ,
297
264
nlsConfig : nlsConfig ,
298
265
options,
299
266
} )
300
267
301
- const hasRequireProperty = Object . prototype . hasOwnProperty . call ( mockSelf , "require" )
302
- expect ( hasRequireProperty ) . toBeTruthy ( )
268
+ expect ( loader ) . toStrictEqual ( {
269
+ baseUrl : "localhost//lib/vscode/out" ,
270
+ paths : {
271
+ "iconv-lite-umd" : "../node_modules/iconv-lite-umd/lib/iconv-lite-umd.js" ,
272
+ jschardet : "../node_modules/jschardet/dist/jschardet.min.js" ,
273
+ "tas-client-umd" : "../node_modules/tas-client-umd/lib/tas-client-umd.js" ,
274
+ "vscode-oniguruma" : "../node_modules/vscode-oniguruma/release/main" ,
275
+ "vscode-textmate" : "../node_modules/vscode-textmate/release/main" ,
276
+ xterm : "../node_modules/xterm/lib/xterm.js" ,
277
+ "xterm-addon-search" : "../node_modules/xterm-addon-search/lib/xterm-addon-search.js" ,
278
+ "xterm-addon-unicode11" : "../node_modules/xterm-addon-unicode11/lib/xterm-addon-unicode11.js" ,
279
+ "xterm-addon-webgl" : "../node_modules/xterm-addon-webgl/lib/xterm-addon-webgl.js" ,
280
+ } ,
281
+ recordStats : true ,
282
+ "vs/nls" : {
283
+ availableLanguages : { } ,
284
+ first : "Jane" ,
285
+ last : "Doe" ,
286
+ locale : "en" ,
287
+ } ,
288
+ } )
303
289
} )
304
290
} )
305
291
} )
0 commit comments