1 import { HttpClientTestingModule } from '@angular/common/http/testing';
2 import { ComponentFixture, TestBed } from '@angular/core/testing';
3 import { RouterTestingModule } from '@angular/router/testing';
5 import { TabsModule } from 'ngx-bootstrap/tabs';
6 import { ToastrModule } from 'ngx-toastr';
12 } from '../../../../../testing/unit-test-helper';
13 import { TableActionsComponent } from '../../../../shared/datatable/table-actions/table-actions.component';
14 import { SharedModule } from '../../../../shared/shared.module';
15 import { PrometheusTabsComponent } from '../prometheus-tabs/prometheus-tabs.component';
16 import { AlertListComponent } from './alert-list.component';
18 describe('AlertListComponent', () => {
19 let component: AlertListComponent;
20 let fixture: ComponentFixture<AlertListComponent>;
24 HttpClientTestingModule,
27 ToastrModule.forRoot(),
30 declarations: [AlertListComponent, PrometheusTabsComponent],
31 providers: [i18nProviders]
35 fixture = TestBed.createComponent(AlertListComponent);
36 component = fixture.componentInstance;
39 it('should create', () => {
40 fixture.detectChanges();
41 expect(component).toBeTruthy();
44 it('should test all TableActions combinations', () => {
46 const permissionHelper: PermissionHelper = new PermissionHelper(component.permission);
47 const tableActions: TableActionsComponent = permissionHelper.setPermissionsAndGetActions(
48 component.tableActions
51 expect(tableActions).toEqual({
52 'create,update,delete': {
53 actions: ['Create silence'],
55 multiple: 'Create silence',
56 executing: 'Create silence',
57 single: 'Create silence',
62 actions: ['Create silence'],
64 multiple: 'Create silence',
65 executing: 'Create silence',
66 single: 'Create silence',
71 actions: ['Create silence'],
73 multiple: 'Create silence',
74 executing: 'Create silence',
75 single: 'Create silence',
80 actions: ['Create silence'],
82 multiple: 'Create silence',
83 executing: 'Create silence',
84 single: 'Create silence',
90 primary: { multiple: '', executing: '', single: '', no: '' }
92 update: { actions: [], primary: { multiple: '', executing: '', single: '', no: '' } },
93 delete: { actions: [], primary: { multiple: '', executing: '', single: '', no: '' } },
96 primary: { multiple: '', executing: '', single: '', no: '' }