]> git.apps.os.sepia.ceph.com Git - ceph.git/blob
4c11f6a8f973dc6a574012997e1af854af78687e
[ceph.git] /
1 import { ComponentFixture, TestBed } from '@angular/core/testing';
2 import { FormControl, ReactiveFormsModule } from '@angular/forms';
3
4 import { BsModalRef } from 'ngx-bootstrap/modal';
5
6 import { configureTestBed } from '../../../../testing/unit-test-helper';
7 import { SharedModule } from '../../../shared/shared.module';
8 import { RgwUserSubuserModalComponent } from './rgw-user-subuser-modal.component';
9
10 describe('RgwUserSubuserModalComponent', () => {
11   let component: RgwUserSubuserModalComponent;
12   let fixture: ComponentFixture<RgwUserSubuserModalComponent>;
13
14   configureTestBed({
15     declarations: [RgwUserSubuserModalComponent],
16     imports: [ReactiveFormsModule, SharedModule],
17     providers: [BsModalRef]
18   });
19
20   beforeEach(() => {
21     fixture = TestBed.createComponent(RgwUserSubuserModalComponent);
22     component = fixture.componentInstance;
23     fixture.detectChanges();
24   });
25
26   it('should create', () => {
27     expect(component).toBeTruthy();
28   });
29
30   describe('subuserValidator', () => {
31     beforeEach(() => {
32       component.editing = false;
33       component.subusers = [
34         { id: 'Edith', permissions: 'full-control' },
35         { id: 'Edith:images', permissions: 'read-write' }
36       ];
37     });
38
39     it('should validate subuser (1/5)', () => {
40       component.editing = true;
41       const validatorFn = component.subuserValidator();
42       const resp = validatorFn(new FormControl());
43       expect(resp).toBe(null);
44     });
45
46     it('should validate subuser (2/5)', () => {
47       const validatorFn = component.subuserValidator();
48       const resp = validatorFn(new FormControl(''));
49       expect(resp).toBe(null);
50     });
51
52     it('should validate subuser (3/5)', () => {
53       const validatorFn = component.subuserValidator();
54       const resp = validatorFn(new FormControl('Melissa'));
55       expect(resp).toBe(null);
56     });
57
58     it('should validate subuser (4/5)', () => {
59       const validatorFn = component.subuserValidator();
60       const resp = validatorFn(new FormControl('Edith'));
61       expect(resp.subuserIdExists).toBeTruthy();
62     });
63
64     it('should validate subuser (5/5)', () => {
65       const validatorFn = component.subuserValidator();
66       const resp = validatorFn(new FormControl('images'));
67       expect(resp.subuserIdExists).toBeTruthy();
68     });
69   });
70 });