@@ -56,8 +56,8 @@ describe("CreateWorkspacePageExperimental", () => {
56
56
mockWebSocket . addEventListener ( "message" , ( event ) => {
57
57
callbacks . onMessage ( JSON . parse ( event . data ) ) ;
58
58
} ) ;
59
- mockWebSocket . addEventListener ( "error" , ( event ) => {
60
- callbacks . onError ( ( event as ErrorEvent ) . error ) ;
59
+ mockWebSocket . addEventListener ( "error" , ( ) => {
60
+ callbacks . onError ( new Error ( "Connection for dynamic parameters failed." ) ) ;
61
61
} ) ;
62
62
mockWebSocket . addEventListener ( "close" , ( ) => {
63
63
callbacks . onClose ( ) ;
@@ -111,8 +111,8 @@ describe("CreateWorkspacePageExperimental", () => {
111
111
mockWebSocket . addEventListener ( "message" , ( event ) => {
112
112
callbacks . onMessage ( JSON . parse ( event . data ) ) ;
113
113
} ) ;
114
- mockWebSocket . addEventListener ( "error" , ( event ) => {
115
- callbacks . onError ( ( event as ErrorEvent ) . error ) ;
114
+ mockWebSocket . addEventListener ( "error" , ( ) => {
115
+ callbacks . onError ( new Error ( "Connection for dynamic parameters failed." ) ) ;
116
116
} ) ;
117
117
mockWebSocket . addEventListener ( "close" , ( ) => {
118
118
callbacks . onClose ( ) ;
@@ -133,8 +133,6 @@ describe("CreateWorkspacePageExperimental", () => {
133
133
134
134
expect ( screen . getByText ( / i n s t a n c e t y p e / i) ) . toBeInTheDocument ( ) ;
135
135
136
- expect ( mockWebSocket . send ) . toBeDefined ( ) ;
137
-
138
136
const instanceTypeSelect = screen . getByRole ( "button" , {
139
137
name : / i n s t a n c e t y p e / i,
140
138
} ) ;
@@ -165,8 +163,8 @@ describe("CreateWorkspacePageExperimental", () => {
165
163
. mockImplementation ( ( _versionId , _ownerId , callbacks ) => {
166
164
const [ mockWebSocket , publisher ] = createMockWebSocket ( "ws://test" ) ;
167
165
168
- mockWebSocket . addEventListener ( "error" , ( event ) => {
169
- callbacks . onError ( ( event as ErrorEvent ) . error ) ;
166
+ mockWebSocket . addEventListener ( "error" , ( ) => {
167
+ callbacks . onError ( new Error ( "Connection failed" ) ) ;
170
168
} ) ;
171
169
172
170
setTimeout ( ( ) => {
@@ -271,94 +269,6 @@ describe("CreateWorkspacePageExperimental", () => {
271
269
} ) ;
272
270
273
271
describe ( "Dynamic Parameter Types" , ( ) => {
274
- it ( "renders dropdown parameter with options" , async ( ) => {
275
- renderCreateWorkspacePageExperimental ( ) ;
276
- await waitForLoaderToBeRemoved ( ) ;
277
-
278
- expect ( screen . getByText ( / i n s t a n c e t y p e / i) ) . toBeInTheDocument ( ) ;
279
-
280
- const select = screen . getByRole ( "button" , { name : / i n s t a n c e t y p e / i } ) ;
281
-
282
- await waitFor ( async ( ) => {
283
- await userEvent . click ( select ) ;
284
- } ) ;
285
-
286
- // Options appear only in the dropdown when no value is selected
287
- expect ( screen . getByText ( / t 3 \. m i c r o / i) ) . toBeInTheDocument ( ) ;
288
- expect ( screen . getByText ( / t 3 \. s m a l l / i) ) . toBeInTheDocument ( ) ;
289
- expect ( screen . getByText ( / t 3 \. m e d i u m / i) ) . toBeInTheDocument ( ) ;
290
- } ) ;
291
-
292
- it ( "renders number parameter with slider" , async ( ) => {
293
- renderCreateWorkspacePageExperimental ( ) ;
294
- await waitForLoaderToBeRemoved ( ) ;
295
-
296
- await waitFor ( ( ) => {
297
- expect ( screen . getByText ( "CPU Count" ) ) . toBeInTheDocument ( ) ;
298
- } ) ;
299
-
300
- await waitFor ( ( ) => {
301
- const numberInput = screen . getByDisplayValue ( "2" ) ;
302
- expect ( numberInput ) . toBeInTheDocument ( ) ;
303
- } ) ;
304
- } ) ;
305
-
306
- it ( "renders boolean parameter with switch" , async ( ) => {
307
- renderCreateWorkspacePageExperimental ( ) ;
308
- await waitForLoaderToBeRemoved ( ) ;
309
-
310
- await waitFor ( ( ) => {
311
- expect ( screen . getByText ( "Enable Monitoring" ) ) . toBeInTheDocument ( ) ;
312
- expect (
313
- screen . getByRole ( "switch" , { name : / e n a b l e m o n i t o r i n g / i } ) ,
314
- ) . toBeInTheDocument ( ) ;
315
- } ) ;
316
- } ) ;
317
-
318
- it ( "renders list parameter with tag input" , async ( ) => {
319
- renderCreateWorkspacePageExperimental ( ) ;
320
- await waitForLoaderToBeRemoved ( ) ;
321
-
322
- await waitFor ( ( ) => {
323
- expect ( screen . getByText ( "Tags" ) ) . toBeInTheDocument ( ) ;
324
- expect (
325
- screen . getByRole ( "textbox" , { name : / t a g s / i } ) ,
326
- ) . toBeInTheDocument ( ) ;
327
- } ) ;
328
- } ) ;
329
-
330
- it ( "renders multi-select parameter" , async ( ) => {
331
- renderCreateWorkspacePageExperimental ( ) ;
332
- await waitForLoaderToBeRemoved ( ) ;
333
-
334
- await waitFor ( ( ) => {
335
- expect ( screen . getByText ( "IDEs" ) ) . toBeInTheDocument ( ) ;
336
- } ) ;
337
-
338
- const multiSelect = screen . getByTestId ( "multiselect-ides" ) ;
339
- expect ( multiSelect ) . toBeInTheDocument ( ) ;
340
-
341
- const select = multiSelect . querySelector ( '[role="combobox"]' ) ;
342
- expect ( select ) . toBeInTheDocument ( ) ;
343
-
344
- await waitFor ( async ( ) => {
345
- await userEvent . click ( select ! ) ;
346
- } ) ;
347
-
348
- expect (
349
- screen . getByRole ( "option" , { name : / v s c o d e / i } ) ,
350
- ) . toBeInTheDocument ( ) ;
351
- expect (
352
- screen . getByRole ( "option" , { name : / c u r s o r / i } ) ,
353
- ) . toBeInTheDocument ( ) ;
354
- expect (
355
- screen . getByRole ( "option" , { name : / g o l a n d / i } ) ,
356
- ) . toBeInTheDocument ( ) ;
357
- expect (
358
- screen . getByRole ( "option" , { name : / w i n d s u r f / i } ) ,
359
- ) . toBeInTheDocument ( ) ;
360
- } ) ;
361
-
362
272
it ( "displays parameter validation errors" , async ( ) => {
363
273
jest
364
274
. spyOn ( API , "templateVersionDynamicParameters" )
0 commit comments