129 lines
4.5 KiB
TypeScript
129 lines
4.5 KiB
TypeScript
/* tslint:disable max-line-length */
|
|
import { ComponentFixture, TestBed } from '@angular/core/testing';
|
|
import { Observable, of } from 'rxjs';
|
|
import { HttpHeaders, HttpResponse } from '@angular/common/http';
|
|
import { ActivatedRoute, Data } from '@angular/router';
|
|
|
|
import { HsadminNgTestModule } from '../../../test.module';
|
|
import { UserRoleAssignmentComponent } from 'app/entities/user-role-assignment/user-role-assignment.component';
|
|
import { UserRoleAssignmentService } from 'app/entities/user-role-assignment/user-role-assignment.service';
|
|
import { UserRoleAssignment } from 'app/shared/model/user-role-assignment.model';
|
|
|
|
describe('Component Tests', () => {
|
|
describe('UserRoleAssignment Management Component', () => {
|
|
let comp: UserRoleAssignmentComponent;
|
|
let fixture: ComponentFixture<UserRoleAssignmentComponent>;
|
|
let service: UserRoleAssignmentService;
|
|
|
|
beforeEach(() => {
|
|
TestBed.configureTestingModule({
|
|
imports: [HsadminNgTestModule],
|
|
declarations: [UserRoleAssignmentComponent],
|
|
providers: [
|
|
{
|
|
provide: ActivatedRoute,
|
|
useValue: {
|
|
data: {
|
|
subscribe: (fn: (value: Data) => void) =>
|
|
fn({
|
|
pagingParams: {
|
|
predicate: 'id',
|
|
reverse: false,
|
|
page: 0
|
|
}
|
|
})
|
|
}
|
|
}
|
|
}
|
|
]
|
|
})
|
|
.overrideTemplate(UserRoleAssignmentComponent, '')
|
|
.compileComponents();
|
|
|
|
fixture = TestBed.createComponent(UserRoleAssignmentComponent);
|
|
comp = fixture.componentInstance;
|
|
service = fixture.debugElement.injector.get(UserRoleAssignmentService);
|
|
});
|
|
|
|
it('Should call load all on init', () => {
|
|
// GIVEN
|
|
const headers = new HttpHeaders().append('link', 'link;link');
|
|
spyOn(service, 'query').and.returnValue(
|
|
of(
|
|
new HttpResponse({
|
|
body: [new UserRoleAssignment(123)],
|
|
headers
|
|
})
|
|
)
|
|
);
|
|
|
|
// WHEN
|
|
comp.ngOnInit();
|
|
|
|
// THEN
|
|
expect(service.query).toHaveBeenCalled();
|
|
expect(comp.userRoleAssignments[0]).toEqual(jasmine.objectContaining({ id: 123 }));
|
|
});
|
|
|
|
it('should load a page', () => {
|
|
// GIVEN
|
|
const headers = new HttpHeaders().append('link', 'link;link');
|
|
spyOn(service, 'query').and.returnValue(
|
|
of(
|
|
new HttpResponse({
|
|
body: [new UserRoleAssignment(123)],
|
|
headers
|
|
})
|
|
)
|
|
);
|
|
|
|
// WHEN
|
|
comp.loadPage(1);
|
|
|
|
// THEN
|
|
expect(service.query).toHaveBeenCalled();
|
|
expect(comp.userRoleAssignments[0]).toEqual(jasmine.objectContaining({ id: 123 }));
|
|
});
|
|
|
|
it('should re-initialize the page', () => {
|
|
// GIVEN
|
|
const headers = new HttpHeaders().append('link', 'link;link');
|
|
spyOn(service, 'query').and.returnValue(
|
|
of(
|
|
new HttpResponse({
|
|
body: [new UserRoleAssignment(123)],
|
|
headers
|
|
})
|
|
)
|
|
);
|
|
|
|
// WHEN
|
|
comp.loadPage(1);
|
|
comp.reset();
|
|
|
|
// THEN
|
|
expect(comp.page).toEqual(0);
|
|
expect(service.query).toHaveBeenCalledTimes(2);
|
|
expect(comp.userRoleAssignments[0]).toEqual(jasmine.objectContaining({ id: 123 }));
|
|
});
|
|
it('should calculate the sort attribute for an id', () => {
|
|
// WHEN
|
|
const result = comp.sort();
|
|
|
|
// THEN
|
|
expect(result).toEqual(['id,asc']);
|
|
});
|
|
|
|
it('should calculate the sort attribute for a non-id attribute', () => {
|
|
// GIVEN
|
|
comp.predicate = 'name';
|
|
|
|
// WHEN
|
|
const result = comp.sort();
|
|
|
|
// THEN
|
|
expect(result).toEqual(['name,asc', 'id']);
|
|
});
|
|
});
|
|
});
|