@@ -298,6 +298,65 @@ describe('FilterBar.cy.tsx', () => {
298
298
} ) ;
299
299
} ) ;
300
300
301
+ it ( 'select-all without required' , ( ) => {
302
+ const TestComp = ( props ) => {
303
+ const [ selectedFilters , setSelectedFilters ] = useState ( '' ) ;
304
+ const [ savedVisibleFilters , setSavedVisibleFilters ] = useState ( '' ) ;
305
+
306
+ const handleSelectionChange : FilterBarPropTypes [ 'onFiltersDialogSelectionChange' ] = ( e ) => {
307
+ setSelectedFilters ( Array . from ( e . selectedFilterKeys ) . join ( ' ' ) ) ;
308
+ } ;
309
+ const handleSave : FilterBarPropTypes [ 'onFiltersDialogSave' ] = ( e ) => {
310
+ setSavedVisibleFilters ( e . detail . selectedFilterKeys . join ( ' ' ) ) ;
311
+ } ;
312
+ return (
313
+ < >
314
+ < FilterBar { ...props } onFiltersDialogSelectionChange = { handleSelectionChange } onFiltersDialogSave = { handleSave } >
315
+ < FilterGroupItem label = "INPUT" filterKey = "0" >
316
+ < Input placeholder = "Placeholder" value = "123123" data-testid = "INPUT" />
317
+ </ FilterGroupItem >
318
+ < FilterGroupItem label = "SWITCH" filterKey = "1" >
319
+ < Switch checked = { true } data-testid = "SWITCH" />
320
+ </ FilterGroupItem >
321
+ < FilterGroupItem label = "SELECT" filterKey = "2" >
322
+ < Select data-testid = "SELECT" >
323
+ < Option selected = { true } > Option 1</ Option >
324
+ < Option > Option 2</ Option >
325
+ < Option > Option 3</ Option >
326
+ < Option > Option 4</ Option >
327
+ </ Select >
328
+ </ FilterGroupItem >
329
+ </ FilterBar >
330
+ < hr />
331
+ < span > Selected: </ span >
332
+ < span data-testid = "selected" > { selectedFilters } </ span >
333
+ < br />
334
+ < span > Saved: </ span >
335
+ < span data-testid = "saved" > { savedVisibleFilters } </ span >
336
+ </ >
337
+ ) ;
338
+ } ;
339
+
340
+ cy . mount ( < TestComp /> ) ;
341
+
342
+ cy . findByTestId ( 'selected' , '0 1 2' ) ;
343
+ cy . get ( '[text="Filters"]' ) . click ( { force : true } ) ;
344
+ cy . get ( '[ui5-checkbox]' ) . first ( ) . click ( ) ;
345
+ cy . findByTestId ( 'selected' , '' ) ;
346
+ cy . get ( '[ui5-checkbox]' ) . eq ( 1 ) . click ( ) ;
347
+ cy . findByTestId ( 'selected' , '0' ) ;
348
+ cy . get ( '[ui5-checkbox]' ) . first ( ) . click ( ) ;
349
+ cy . get ( '[ui5-checkbox]' ) . first ( ) . click ( ) ;
350
+
351
+ cy . findByText ( 'OK' ) . click ( ) ;
352
+ cy . findByTestId ( 'saved' , '' ) ;
353
+
354
+ cy . get ( '[text="Filters"]' ) . click ( { force : true } ) ;
355
+ cy . get ( '[ui5-checkbox]' ) . first ( ) . click ( ) ;
356
+ cy . findByText ( 'OK' ) . click ( ) ;
357
+ cy . findByTestId ( 'saved' , '0 1 2' ) ;
358
+ } ) ;
359
+
301
360
// todo selection, group + list view
302
361
it ( 'Dialog search' , ( ) => {
303
362
cy . mount (
0 commit comments