]>
Commit | Line | Data |
---|---|---|
11fdf7f2 TL |
1 | import { HttpClientTestingModule } from '@angular/common/http/testing'; |
2 | import { ComponentFixture, TestBed } from '@angular/core/testing'; | |
e306af50 | 3 | import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; |
11fdf7f2 TL |
4 | import { RouterTestingModule } from '@angular/router/testing'; |
5 | ||
11fdf7f2 | 6 | import { TabsModule } from 'ngx-bootstrap/tabs'; |
494da23a | 7 | import { ToastrModule } from 'ngx-toastr'; |
11fdf7f2 TL |
8 | |
9 | import { | |
10 | configureTestBed, | |
11 | i18nProviders, | |
12 | PermissionHelper | |
13 | } from '../../../../testing/unit-test-helper'; | |
11fdf7f2 TL |
14 | import { TableActionsComponent } from '../../../shared/datatable/table-actions/table-actions.component'; |
15 | import { SharedModule } from '../../../shared/shared.module'; | |
16 | import { RoleDetailsComponent } from '../role-details/role-details.component'; | |
17 | import { UserTabsComponent } from '../user-tabs/user-tabs.component'; | |
18 | import { RoleListComponent } from './role-list.component'; | |
19 | ||
20 | describe('RoleListComponent', () => { | |
21 | let component: RoleListComponent; | |
22 | let fixture: ComponentFixture<RoleListComponent>; | |
23 | ||
24 | configureTestBed({ | |
25 | declarations: [RoleListComponent, RoleDetailsComponent, UserTabsComponent], | |
26 | imports: [ | |
e306af50 | 27 | BrowserAnimationsModule, |
11fdf7f2 | 28 | SharedModule, |
494da23a | 29 | ToastrModule.forRoot(), |
11fdf7f2 TL |
30 | TabsModule.forRoot(), |
31 | RouterTestingModule, | |
32 | HttpClientTestingModule | |
33 | ], | |
34 | providers: i18nProviders | |
35 | }); | |
36 | ||
37 | beforeEach(() => { | |
38 | fixture = TestBed.createComponent(RoleListComponent); | |
39 | component = fixture.componentInstance; | |
40 | }); | |
41 | ||
42 | it('should create', () => { | |
43 | fixture.detectChanges(); | |
44 | expect(component).toBeTruthy(); | |
45 | }); | |
46 | ||
9f95a23c TL |
47 | it('should test all TableActions combinations', () => { |
48 | const permissionHelper: PermissionHelper = new PermissionHelper(component.permission); | |
49 | const tableActions: TableActionsComponent = permissionHelper.setPermissionsAndGetActions( | |
50 | component.tableActions | |
51 | ); | |
52 | ||
53 | expect(tableActions).toEqual({ | |
54 | 'create,update,delete': { | |
55 | actions: ['Create', 'Clone', 'Edit', 'Delete'], | |
56 | primary: { multiple: 'Create', executing: 'Edit', single: 'Edit', no: 'Create' } | |
57 | }, | |
58 | 'create,update': { | |
59 | actions: ['Create', 'Clone', 'Edit'], | |
60 | primary: { multiple: 'Create', executing: 'Edit', single: 'Edit', no: 'Create' } | |
61 | }, | |
62 | 'create,delete': { | |
63 | actions: ['Create', 'Clone', 'Delete'], | |
64 | primary: { multiple: 'Create', executing: 'Delete', single: 'Delete', no: 'Create' } | |
65 | }, | |
66 | create: { | |
67 | actions: ['Create', 'Clone'], | |
68 | primary: { multiple: 'Create', executing: 'Create', single: 'Create', no: 'Create' } | |
69 | }, | |
70 | 'update,delete': { | |
71 | actions: ['Edit', 'Delete'], | |
72 | primary: { multiple: 'Edit', executing: 'Edit', single: 'Edit', no: 'Edit' } | |
73 | }, | |
74 | update: { | |
75 | actions: ['Edit'], | |
76 | primary: { multiple: 'Edit', executing: 'Edit', single: 'Edit', no: 'Edit' } | |
77 | }, | |
78 | delete: { | |
79 | actions: ['Delete'], | |
80 | primary: { multiple: 'Delete', executing: 'Delete', single: 'Delete', no: 'Delete' } | |
81 | }, | |
82 | 'no-permissions': { | |
83 | actions: [], | |
84 | primary: { multiple: '', executing: '', single: '', no: '' } | |
85 | } | |
11fdf7f2 TL |
86 | }); |
87 | }); | |
88 | }); |