@@ -1424,6 +1424,56 @@ describe('Angular-Slickgrid Custom Component instantiated via Constructor', () =
1424
1424
expect ( setColSpy ) . toHaveBeenCalledWith ( mockCols ) ;
1425
1425
} ) ;
1426
1426
1427
+ it ( 'should reflect columns with an extra row detail column in the grid when "enableRowDetailView" is set' , ( ) => {
1428
+ const mockColsPresets = [ { columnId : 'firstName' , width : 100 } ] ;
1429
+ const mockCol = { id : 'firstName' , field : 'firstName' } ;
1430
+ const mockCols = [ { id : '_detail_selector' , field : '_detail_selector' , editor : undefined , internalColumnEditor : { } } , mockCol ] ;
1431
+ const getAssocColSpy = jest . spyOn ( gridStateServiceStub , 'getAssociatedGridColumns' ) . mockReturnValue ( [ mockCol ] ) ;
1432
+ const setColSpy = jest . spyOn ( mockGrid , 'setColumns' ) ;
1433
+
1434
+ component . columnDefinitions = mockCols ;
1435
+ component . gridOptions = { ...gridOptions , enableRowDetailView : true , presets : { columns : mockColsPresets } } as unknown as GridOption ;
1436
+ component . initialization ( slickEventHandler ) ;
1437
+
1438
+ expect ( getAssocColSpy ) . toHaveBeenCalledWith ( mockGrid , mockColsPresets ) ;
1439
+ expect ( setColSpy ) . toHaveBeenCalledWith ( mockCols ) ;
1440
+ } ) ;
1441
+
1442
+ it ( 'should reflect columns with an extra row move column in the grid when "enableRowMoveManager" is set' , ( ) => {
1443
+ const mockColsPresets = [ { columnId : 'firstName' , width : 100 } ] ;
1444
+ const mockCol = { id : 'firstName' , field : 'firstName' } ;
1445
+ const mockCols = [ { id : '_move' , field : '_move' , editor : undefined , internalColumnEditor : { } } , mockCol ] ;
1446
+ const getAssocColSpy = jest . spyOn ( gridStateServiceStub , 'getAssociatedGridColumns' ) . mockReturnValue ( [ mockCol ] ) ;
1447
+ const setColSpy = jest . spyOn ( mockGrid , 'setColumns' ) ;
1448
+
1449
+ component . columnDefinitions = mockCols ;
1450
+ component . gridOptions = { ...gridOptions , enableRowMoveManager : true , presets : { columns : mockColsPresets } } as unknown as GridOption ;
1451
+ component . initialization ( slickEventHandler ) ;
1452
+
1453
+ expect ( getAssocColSpy ) . toHaveBeenCalledWith ( mockGrid , mockColsPresets ) ;
1454
+ expect ( setColSpy ) . toHaveBeenCalledWith ( mockCols ) ;
1455
+ } ) ;
1456
+
1457
+ it ( 'should reflect 3 dynamic columns (1-RowMove, 2-RowSelection, 3-RowDetail) when all associated extension flags are enabled' , ( ) => {
1458
+ const mockColsPresets = [ { columnId : 'firstName' , width : 100 } ] ;
1459
+ const mockCol = { id : 'firstName' , field : 'firstName' } ;
1460
+ const mockCols = [
1461
+ { id : '_move' , field : '_move' , editor : undefined , internalColumnEditor : { } } ,
1462
+ { id : '_checkbox_selector' , field : '_checkbox_selector' , editor : undefined , internalColumnEditor : { } } ,
1463
+ { id : '_detail_selector' , field : '_detail_selector' , editor : undefined , internalColumnEditor : { } } ,
1464
+ mockCol
1465
+ ] ;
1466
+ const getAssocColSpy = jest . spyOn ( gridStateServiceStub , 'getAssociatedGridColumns' ) . mockReturnValue ( [ mockCol ] ) ;
1467
+ const setColSpy = jest . spyOn ( mockGrid , 'setColumns' ) ;
1468
+
1469
+ component . columnDefinitions = mockCols ;
1470
+ component . gridOptions = { ...gridOptions , enableCheckboxSelector : true , enableRowDetailView : true , enableRowMoveManager : true , presets : { columns : mockColsPresets } } as unknown as GridOption ;
1471
+ component . initialization ( slickEventHandler ) ;
1472
+
1473
+ expect ( getAssocColSpy ) . toHaveBeenCalledWith ( mockGrid , mockColsPresets ) ;
1474
+ expect ( setColSpy ) . toHaveBeenCalledWith ( mockCols ) ;
1475
+ } ) ;
1476
+
1427
1477
it ( 'should execute backend service "init" method when set' , ( ) => {
1428
1478
const mockPagination = { pageNumber : 1 , pageSizes : [ 10 , 25 , 50 ] , pageSize : 10 , totalItems : 100 } ;
1429
1479
const mockGraphqlOptions = { datasetName : 'users' , extraQueryArguments : [ { field : 'userId' , value : 123 } ] } as GraphqlServiceOption ;
0 commit comments