Skip to content

Commit 435af7b

Browse files
committed
refactor: updating tests
1 parent 21db661 commit 435af7b

File tree

2 files changed

+11
-51
lines changed

2 files changed

+11
-51
lines changed

projects/components/src/table/table.component.test.ts

Lines changed: 1 addition & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ describe('Table component', () => {
6060
queryParamMap: EMPTY
6161
}),
6262
mockProvider(DomElementMeasurerService, {
63-
measureHtmlElement: (): ClientRect => ({
63+
measureHtmlElement: (): Partial<ClientRect> => ({
6464
top: 0,
6565
left: 0,
6666
bottom: 20,
@@ -397,37 +397,6 @@ describe('Table component', () => {
397397
});
398398
}));
399399

400-
test('should trigger toggle row selection for multi row select config', () => {
401-
const columns = buildColumns();
402-
const spectator = createHost(
403-
`<ht-table [columnConfigs]="columnConfigs" [data]="data" [selectionMode]="selectionMode"
404-
[mode]="mode" (selectionsChange)="selectionsChange($event)"></ht-table>`,
405-
{
406-
hostProps: {
407-
columnConfigs: columns,
408-
data: buildData(),
409-
selectionMode: TableSelectionMode.Multiple,
410-
mode: TableMode.Flat
411-
}
412-
}
413-
);
414-
415-
const row: StatefulTableRow = {
416-
$$state: {
417-
parent: undefined,
418-
expanded: false,
419-
selected: false,
420-
root: false,
421-
leaf: true,
422-
depth: 1
423-
}
424-
};
425-
426-
const spyToggleRowSelection = spyOn(spectator.component, 'toggleRowSelected');
427-
spectator.component.onDataCellClick(row);
428-
expect(spyToggleRowSelection).toHaveBeenCalledWith(row);
429-
});
430-
431400
test('should emit selections on toggle select', () => {
432401
const mockSelectionsChange = jest.fn();
433402
const columns = buildColumns();

projects/observability/src/shared/dashboard/widgets/table/table-widget-renderer.component.ts

Lines changed: 10 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,4 @@
1-
import {
2-
ChangeDetectionStrategy,
3-
ChangeDetectorRef,
4-
Component,
5-
Inject,
6-
OnInit,
7-
TemplateRef,
8-
ViewChild
9-
} from '@angular/core';
1+
import { ChangeDetectionStrategy, ChangeDetectorRef, Component, Inject, OnInit } from '@angular/core';
102
import {
113
assertUnreachable,
124
Dictionary,
@@ -70,7 +62,7 @@ import { TableWidgetModel } from './table-widget.model';
7062
[selectControls]="this.selectControls$ | async"
7163
[checkboxControls]="this.checkboxControls$ | async"
7264
[selectedRows]="this.selectedRows"
73-
[customControlContent]="this.isCustomControlPresent() ? customControlDetail : undefined"
65+
[customControlContent]="(this.isCustomControlPresent | htMemoize) ? customControlDetail : undefined"
7466
[viewItems]="this.viewItems"
7567
(searchChange)="this.onSearchChange($event)"
7668
(selectChange)="this.onSelectChange($event)"
@@ -124,9 +116,6 @@ export class TableWidgetRendererComponent
124116

125117
public selectedRows?: StatefulTableRow[] = [];
126118

127-
@ViewChild('customControlDetail')
128-
public readonly customControlDetailTemplate!: TemplateRef<unknown>;
129-
130119
private readonly toggleFilterSubject: Subject<TableFilter[]> = new BehaviorSubject<TableFilter[]>([]);
131120
private readonly searchFilterSubject: Subject<TableFilter[]> = new BehaviorSubject<TableFilter[]>([]);
132121
private readonly selectFilterSubject: BehaviorSubject<TableFilter[]> = new BehaviorSubject<TableFilter[]>([]);
@@ -397,22 +386,24 @@ export class TableWidgetRendererComponent
397386

398387
public onRowSelection(selections: StatefulTableRow[]): void {
399388
this.selectedRows = selections;
400-
// Todo: Revisit this
389+
/**
390+
* Todo: Stich this with selection handlers
391+
*/
401392
}
402393

403394
private getRowClickInteractionHandler(selectedRow: StatefulTableRow): InteractionHandler | undefined {
404395
return this.getInteractionHandler(selectedRow, this.api.model.getRowClickHandlers());
405396
}
406397

407398
private getInteractionHandler(
408-
selectedRow: StatefulTableRow,
409-
rowInteractionHandlers: TableWidgetRowInteractionModel[] = []
399+
row: StatefulTableRow,
400+
rowHandlers: TableWidgetRowInteractionModel[] = []
410401
): InteractionHandler | undefined {
411-
const matchedSelectionHandlers = rowInteractionHandlers
412-
.filter(selectionModel => selectionModel.appliesToCurrentRowDepth(selectedRow.$$state.depth))
402+
const matchedHandlers = rowHandlers
403+
.filter(interactionModel => interactionModel.appliesToCurrentRowDepth(row.$$state.depth))
413404
.sort((model1, model2) => model2.rowDepth - model1.rowDepth);
414405

415-
return !isEmpty(matchedSelectionHandlers) ? matchedSelectionHandlers[0].handler : undefined;
406+
return !isEmpty(matchedHandlers) ? matchedHandlers[0].handler : undefined;
416407
}
417408

418409
private pickPersistColumnProperties(column: TableColumnConfig): Pick<TableColumnConfig, 'id' | 'visible'> {

0 commit comments

Comments
 (0)