mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2026-09-09 18:03:21 +00:00
[AAE-12501] Fix core unit tests
This commit is contained in:
@@ -17,7 +17,6 @@
|
|||||||
|
|
||||||
import { fakeAsync, TestBed } from '@angular/core/testing';
|
import { fakeAsync, TestBed } from '@angular/core/testing';
|
||||||
import { setupTestBed } from '../../testing/setup-test-bed';
|
import { setupTestBed } from '../../testing/setup-test-bed';
|
||||||
import { AlfrescoApiService } from './../../services/alfresco-api.service';
|
|
||||||
import { IdentityGroupService } from './identity-group.service';
|
import { IdentityGroupService } from './identity-group.service';
|
||||||
import { HttpErrorResponse } from '@angular/common/http';
|
import { HttpErrorResponse } from '@angular/common/http';
|
||||||
import { throwError, of } from 'rxjs';
|
import { throwError, of } from 'rxjs';
|
||||||
@@ -25,23 +24,18 @@ import {
|
|||||||
mockIdentityRoles,
|
mockIdentityRoles,
|
||||||
clientRoles,
|
clientRoles,
|
||||||
mockIdentityGroup1,
|
mockIdentityGroup1,
|
||||||
mockIdentityGroupsCount
|
mockIdentityGroupsCount,
|
||||||
|
mockIdentityGroups,
|
||||||
|
roleMappingMock
|
||||||
} from '../mock/identity-group.mock';
|
} from '../mock/identity-group.mock';
|
||||||
import { CoreTestingModule } from '../../testing/core.testing.module';
|
import { CoreTestingModule } from '../../testing/core.testing.module';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
import {
|
import { AdfHttpClient } from '../../../../api/src';
|
||||||
applicationDetailsMockApi,
|
|
||||||
createGroupMappingApi,
|
|
||||||
deleteGroupMappingApi,
|
|
||||||
groupsMockApi,
|
|
||||||
noRoleMappingApi,
|
|
||||||
roleMappingApi,
|
|
||||||
updateGroupMappingApi
|
|
||||||
} from '../mock/oauth2.service.mock';
|
|
||||||
|
|
||||||
describe('IdentityGroupService', () => {
|
describe('IdentityGroupService', () => {
|
||||||
let service: IdentityGroupService;
|
let service: IdentityGroupService;
|
||||||
let apiService: AlfrescoApiService;
|
let adfHttpClient: AdfHttpClient;
|
||||||
|
let requestSpy: jasmine.Spy;
|
||||||
|
|
||||||
setupTestBed({
|
setupTestBed({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -52,11 +46,12 @@ describe('IdentityGroupService', () => {
|
|||||||
|
|
||||||
beforeEach(fakeAsync(() => {
|
beforeEach(fakeAsync(() => {
|
||||||
service = TestBed.inject(IdentityGroupService);
|
service = TestBed.inject(IdentityGroupService);
|
||||||
apiService = TestBed.inject(AlfrescoApiService);
|
adfHttpClient = TestBed.inject(AdfHttpClient);
|
||||||
|
requestSpy = spyOn(adfHttpClient, 'request');
|
||||||
}));
|
}));
|
||||||
|
|
||||||
it('should be able to fetch groups based on group name', (done) => {
|
it('should be able to fetch groups based on group name', (done) => {
|
||||||
spyOn(apiService, 'getInstance').and.returnValue(groupsMockApi);
|
requestSpy.and.returnValue(Promise.resolve(mockIdentityGroups));
|
||||||
service.findGroupsByName({name: 'mock'}).subscribe((res) => {
|
service.findGroupsByName({name: 'mock'}).subscribe((res) => {
|
||||||
expect(res).toBeDefined();
|
expect(res).toBeDefined();
|
||||||
expect(res).not.toBeNull();
|
expect(res).not.toBeNull();
|
||||||
@@ -72,7 +67,7 @@ describe('IdentityGroupService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should return true if group has client role mapping', (done) => {
|
it('should return true if group has client role mapping', (done) => {
|
||||||
spyOn(apiService, 'getInstance').and.returnValue(roleMappingApi);
|
requestSpy.and.returnValue(Promise.resolve(roleMappingMock));
|
||||||
service.checkGroupHasClientApp('mock-group-id', 'mock-app-id').subscribe((hasRole) => {
|
service.checkGroupHasClientApp('mock-group-id', 'mock-app-id').subscribe((hasRole) => {
|
||||||
expect(hasRole).toBeDefined();
|
expect(hasRole).toBeDefined();
|
||||||
expect(hasRole).toBe(true);
|
expect(hasRole).toBe(true);
|
||||||
@@ -81,7 +76,7 @@ describe('IdentityGroupService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should return false if group does not have client role mapping', (done) => {
|
it('should return false if group does not have client role mapping', (done) => {
|
||||||
spyOn(apiService, 'getInstance').and.returnValue(noRoleMappingApi);
|
requestSpy.and.returnValue(Promise.resolve([]));
|
||||||
service.checkGroupHasClientApp('mock-group-id', 'mock-app-id').subscribe((hasRole) => {
|
service.checkGroupHasClientApp('mock-group-id', 'mock-app-id').subscribe((hasRole) => {
|
||||||
expect(hasRole).toBeDefined();
|
expect(hasRole).toBeDefined();
|
||||||
expect(hasRole).toBe(false);
|
expect(hasRole).toBe(false);
|
||||||
@@ -226,7 +221,7 @@ describe('IdentityGroupService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to fetch the client id', (done) => {
|
it('should be able to fetch the client id', (done) => {
|
||||||
spyOn(apiService, 'getInstance').and.returnValue(applicationDetailsMockApi);
|
requestSpy.and.returnValue(Promise.resolve([{id: 'mock-app-id', name: 'mock-app-name'}]));
|
||||||
service.getClientIdByApplicationName('mock-app-name').subscribe((clientId) => {
|
service.getClientIdByApplicationName('mock-app-name').subscribe((clientId) => {
|
||||||
expect(clientId).toBeDefined();
|
expect(clientId).toBeDefined();
|
||||||
expect(clientId).not.toBeNull();
|
expect(clientId).not.toBeNull();
|
||||||
@@ -236,7 +231,7 @@ describe('IdentityGroupService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to all fetch groups', (done) => {
|
it('should be able to all fetch groups', (done) => {
|
||||||
spyOn(apiService, 'getInstance').and.returnValue(groupsMockApi);
|
requestSpy.and.returnValue(Promise.resolve(mockIdentityGroups));
|
||||||
service.getGroups().subscribe((res) => {
|
service.getGroups().subscribe((res) => {
|
||||||
expect(res.length).toBe(5);
|
expect(res.length).toBe(5);
|
||||||
expect(res[0].id).toBe('mock-group-id-1');
|
expect(res[0].id).toBe('mock-group-id-1');
|
||||||
@@ -273,7 +268,7 @@ describe('IdentityGroupService', () => {
|
|||||||
|
|
||||||
it('should be able to query groups based on first & max params', (done) => {
|
it('should be able to query groups based on first & max params', (done) => {
|
||||||
spyOn(service, 'getTotalGroupsCount').and.returnValue(of(mockIdentityGroupsCount));
|
spyOn(service, 'getTotalGroupsCount').and.returnValue(of(mockIdentityGroupsCount));
|
||||||
spyOn(apiService, 'getInstance').and.returnValue(groupsMockApi);
|
requestSpy.and.returnValue(Promise.resolve(mockIdentityGroups));
|
||||||
service.queryGroups({first: 0, max: 5}).subscribe((res) => {
|
service.queryGroups({first: 0, max: 5}).subscribe((res) => {
|
||||||
expect(res).toBeDefined();
|
expect(res).toBeDefined();
|
||||||
expect(res).not.toBeNull();
|
expect(res).not.toBeNull();
|
||||||
@@ -314,7 +309,7 @@ describe('IdentityGroupService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to create group', (done) => {
|
it('should be able to create group', (done) => {
|
||||||
const createCustomApiSpy = spyOn(apiService, 'getInstance').and.returnValue(createGroupMappingApi);
|
const createCustomApiSpy = requestSpy.and.returnValue(Promise.resolve());
|
||||||
service.createGroup(mockIdentityGroup1).subscribe(() => {
|
service.createGroup(mockIdentityGroup1).subscribe(() => {
|
||||||
expect(createCustomApiSpy).toHaveBeenCalled();
|
expect(createCustomApiSpy).toHaveBeenCalled();
|
||||||
done();
|
done();
|
||||||
@@ -344,7 +339,7 @@ describe('IdentityGroupService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to update group', (done) => {
|
it('should be able to update group', (done) => {
|
||||||
const updateCustomApiSpy = spyOn(apiService, 'getInstance').and.returnValue(updateGroupMappingApi);
|
const updateCustomApiSpy = requestSpy.and.returnValue(Promise.resolve());
|
||||||
service.updateGroup('mock-group-id', mockIdentityGroup1).subscribe(() => {
|
service.updateGroup('mock-group-id', mockIdentityGroup1).subscribe(() => {
|
||||||
expect(updateCustomApiSpy).toHaveBeenCalled();
|
expect(updateCustomApiSpy).toHaveBeenCalled();
|
||||||
done();
|
done();
|
||||||
@@ -374,7 +369,7 @@ describe('IdentityGroupService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to delete group', (done) => {
|
it('should be able to delete group', (done) => {
|
||||||
const deleteCustomApiSpy = spyOn(apiService, 'getInstance').and.returnValue(deleteGroupMappingApi);
|
const deleteCustomApiSpy = requestSpy.and.returnValue(Promise.resolve());
|
||||||
service.deleteGroup('mock-group-id').subscribe(() => {
|
service.deleteGroup('mock-group-id').subscribe(() => {
|
||||||
expect(deleteCustomApiSpy).toHaveBeenCalled();
|
expect(deleteCustomApiSpy).toHaveBeenCalled();
|
||||||
done();
|
done();
|
||||||
|
|||||||
@@ -22,31 +22,20 @@ import {
|
|||||||
mockIdentityUser1,
|
mockIdentityUser1,
|
||||||
mockIdentityUser2,
|
mockIdentityUser2,
|
||||||
mockIdentityRole,
|
mockIdentityRole,
|
||||||
mockIdentityUsers
|
mockIdentityUsers,
|
||||||
|
mockAssignedRoles,
|
||||||
|
mockAvailableRoles,
|
||||||
|
mockEffectiveRoles
|
||||||
} from '../mock/identity-user.mock';
|
} from '../mock/identity-user.mock';
|
||||||
import { mockJoinGroupRequest } from '../mock/identity-group.mock';
|
import { mockGroups, mockJoinGroupRequest } from '../mock/identity-group.mock';
|
||||||
import { IdentityUserService } from './identity-user.service';
|
import { IdentityUserService } from './identity-user.service';
|
||||||
import { JwtHelperService } from './jwt-helper.service';
|
import { JwtHelperService } from './jwt-helper.service';
|
||||||
import { setupTestBed } from '../../testing/setup-test-bed';
|
import { setupTestBed } from '../../testing/setup-test-bed';
|
||||||
import { AlfrescoApiService } from '../../services/alfresco-api.service';
|
|
||||||
import { mockToken } from '../mock/jwt-helper.service.spec';
|
import { mockToken } from '../mock/jwt-helper.service.spec';
|
||||||
import { IdentityRoleModel } from '../models/identity-role.model';
|
import { IdentityRoleModel } from '../models/identity-role.model';
|
||||||
import { CoreTestingModule } from '../../testing/core.testing.module';
|
import { CoreTestingModule } from '../../testing/core.testing.module';
|
||||||
import { TranslateModule } from '@ngx-translate/core';
|
import { TranslateModule } from '@ngx-translate/core';
|
||||||
import {
|
import { AdfHttpClient } from '../../../../api/src';
|
||||||
assignRolesMockApi,
|
|
||||||
createUserMockApi,
|
|
||||||
deleteUserMockApi,
|
|
||||||
getAssignedRolesMockApi,
|
|
||||||
getAvailableRolesMockApi,
|
|
||||||
getEffectiveRolesMockApi,
|
|
||||||
getInvolvedGroupsMockApi,
|
|
||||||
joinGroupMockApi,
|
|
||||||
leaveGroupMockApi,
|
|
||||||
queryUsersMockApi,
|
|
||||||
removeRolesMockApi,
|
|
||||||
updateUserMockApi
|
|
||||||
} from '../mock/oauth2.service.mock';
|
|
||||||
|
|
||||||
describe('IdentityUserService', () => {
|
describe('IdentityUserService', () => {
|
||||||
|
|
||||||
@@ -59,7 +48,8 @@ describe('IdentityUserService', () => {
|
|||||||
];
|
];
|
||||||
|
|
||||||
let service: IdentityUserService;
|
let service: IdentityUserService;
|
||||||
let alfrescoApiService: AlfrescoApiService;
|
let adfHttpClient: AdfHttpClient;
|
||||||
|
let requestSpy: jasmine.Spy;
|
||||||
|
|
||||||
setupTestBed({
|
setupTestBed({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -70,7 +60,8 @@ describe('IdentityUserService', () => {
|
|||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
service = TestBed.inject(IdentityUserService);
|
service = TestBed.inject(IdentityUserService);
|
||||||
alfrescoApiService = TestBed.inject(AlfrescoApiService);
|
adfHttpClient = TestBed.inject(AdfHttpClient);
|
||||||
|
requestSpy = spyOn(adfHttpClient, 'request');
|
||||||
});
|
});
|
||||||
|
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
@@ -297,7 +288,7 @@ describe('IdentityUserService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to query users based on query params (first & max params)', (done) => {
|
it('should be able to query users based on query params (first & max params)', (done) => {
|
||||||
spyOn(alfrescoApiService, 'getInstance').and.returnValue(queryUsersMockApi);
|
requestSpy.and.returnValue(Promise.resolve(mockIdentityUsers));
|
||||||
service.queryUsers({first: 0, max: 5}).subscribe((res) => {
|
service.queryUsers({first: 0, max: 5}).subscribe((res) => {
|
||||||
expect(res).toBeDefined();
|
expect(res).toBeDefined();
|
||||||
expect(res).not.toBeNull();
|
expect(res).not.toBeNull();
|
||||||
@@ -335,7 +326,7 @@ describe('IdentityUserService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to create user', (done) => {
|
it('should be able to create user', (done) => {
|
||||||
const createCustomApiSpy = spyOn(alfrescoApiService, 'getInstance').and.returnValue(createUserMockApi);
|
const createCustomApiSpy = requestSpy.and.returnValue(Promise.resolve());
|
||||||
service.createUser(mockIdentityUser1).subscribe(() => {
|
service.createUser(mockIdentityUser1).subscribe(() => {
|
||||||
expect(createCustomApiSpy).toHaveBeenCalled();
|
expect(createCustomApiSpy).toHaveBeenCalled();
|
||||||
done();
|
done();
|
||||||
@@ -365,7 +356,7 @@ describe('IdentityUserService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to update user', (done) => {
|
it('should be able to update user', (done) => {
|
||||||
const updateCustomApiSpy = spyOn(alfrescoApiService, 'getInstance').and.returnValue(updateUserMockApi);
|
const updateCustomApiSpy = requestSpy.and.returnValue(Promise.resolve());
|
||||||
service.updateUser('mock-id-2', mockIdentityUser2).subscribe(() => {
|
service.updateUser('mock-id-2', mockIdentityUser2).subscribe(() => {
|
||||||
expect(updateCustomApiSpy).toHaveBeenCalled();
|
expect(updateCustomApiSpy).toHaveBeenCalled();
|
||||||
done();
|
done();
|
||||||
@@ -395,7 +386,7 @@ describe('IdentityUserService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to delete group', (done) => {
|
it('should be able to delete group', (done) => {
|
||||||
const deleteCustomApiSpy = spyOn(alfrescoApiService, 'getInstance').and.returnValue(deleteUserMockApi);
|
const deleteCustomApiSpy = requestSpy.and.returnValue(Promise.resolve());
|
||||||
service.deleteUser('mock-user-id').subscribe(() => {
|
service.deleteUser('mock-user-id').subscribe(() => {
|
||||||
expect(deleteCustomApiSpy).toHaveBeenCalled();
|
expect(deleteCustomApiSpy).toHaveBeenCalled();
|
||||||
done();
|
done();
|
||||||
@@ -425,7 +416,7 @@ describe('IdentityUserService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to fetch involved groups based on user id', (done) => {
|
it('should be able to fetch involved groups based on user id', (done) => {
|
||||||
spyOn(alfrescoApiService, 'getInstance').and.returnValue(getInvolvedGroupsMockApi);
|
requestSpy.and.returnValue(Promise.resolve(mockGroups));
|
||||||
service.getInvolvedGroups('mock-user-id').subscribe((res) => {
|
service.getInvolvedGroups('mock-user-id').subscribe((res) => {
|
||||||
expect(res).toBeDefined();
|
expect(res).toBeDefined();
|
||||||
expect(res).not.toBeNull();
|
expect(res).not.toBeNull();
|
||||||
@@ -461,7 +452,7 @@ describe('IdentityUserService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to join the group', (done) => {
|
it('should be able to join the group', (done) => {
|
||||||
const joinGroupCustomApiSpy = spyOn(alfrescoApiService, 'getInstance').and.returnValue(joinGroupMockApi);
|
const joinGroupCustomApiSpy = requestSpy.and.returnValue(Promise.resolve());
|
||||||
service.joinGroup(mockJoinGroupRequest).subscribe(() => {
|
service.joinGroup(mockJoinGroupRequest).subscribe(() => {
|
||||||
expect(joinGroupCustomApiSpy).toHaveBeenCalled();
|
expect(joinGroupCustomApiSpy).toHaveBeenCalled();
|
||||||
done();
|
done();
|
||||||
@@ -491,7 +482,7 @@ describe('IdentityUserService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to leave the group', (done) => {
|
it('should be able to leave the group', (done) => {
|
||||||
const leaveGroupCustomApiSpy = spyOn(alfrescoApiService, 'getInstance').and.returnValue(leaveGroupMockApi);
|
const leaveGroupCustomApiSpy = requestSpy.and.returnValue(Promise.resolve());
|
||||||
service.leaveGroup('mock-user-id', 'mock-group-id').subscribe(() => {
|
service.leaveGroup('mock-user-id', 'mock-group-id').subscribe(() => {
|
||||||
expect(leaveGroupCustomApiSpy).toHaveBeenCalled();
|
expect(leaveGroupCustomApiSpy).toHaveBeenCalled();
|
||||||
done();
|
done();
|
||||||
@@ -521,7 +512,7 @@ describe('IdentityUserService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to fetch available roles based on user id', (done) => {
|
it('should be able to fetch available roles based on user id', (done) => {
|
||||||
spyOn(alfrescoApiService, 'getInstance').and.returnValue(getAvailableRolesMockApi);
|
requestSpy.and.returnValue(Promise.resolve(mockAvailableRoles));
|
||||||
service.getAvailableRoles('mock-user-id').subscribe((res) => {
|
service.getAvailableRoles('mock-user-id').subscribe((res) => {
|
||||||
expect(res).toBeDefined();
|
expect(res).toBeDefined();
|
||||||
expect(res).not.toBeNull();
|
expect(res).not.toBeNull();
|
||||||
@@ -559,7 +550,7 @@ describe('IdentityUserService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to fetch assigned roles based on user id', (done) => {
|
it('should be able to fetch assigned roles based on user id', (done) => {
|
||||||
spyOn(alfrescoApiService, 'getInstance').and.returnValue(getAssignedRolesMockApi);
|
requestSpy.and.returnValue(Promise.resolve(mockAssignedRoles));
|
||||||
service.getAssignedRoles('mock-user-id').subscribe((res) => {
|
service.getAssignedRoles('mock-user-id').subscribe((res) => {
|
||||||
expect(res).toBeDefined();
|
expect(res).toBeDefined();
|
||||||
expect(res).not.toBeNull();
|
expect(res).not.toBeNull();
|
||||||
@@ -597,7 +588,7 @@ describe('IdentityUserService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to fetch effective roles based on user id', (done) => {
|
it('should be able to fetch effective roles based on user id', (done) => {
|
||||||
spyOn(alfrescoApiService, 'getInstance').and.returnValue(getEffectiveRolesMockApi);
|
requestSpy.and.returnValue(Promise.resolve(mockEffectiveRoles));
|
||||||
service.getEffectiveRoles('mock-user-id').subscribe((res) => {
|
service.getEffectiveRoles('mock-user-id').subscribe((res) => {
|
||||||
expect(res).toBeDefined();
|
expect(res).toBeDefined();
|
||||||
expect(res).not.toBeNull();
|
expect(res).not.toBeNull();
|
||||||
@@ -635,7 +626,7 @@ describe('IdentityUserService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to assign roles to the user', (done) => {
|
it('should be able to assign roles to the user', (done) => {
|
||||||
const assignRolesCustomApiSpy = spyOn(alfrescoApiService, 'getInstance').and.returnValue(assignRolesMockApi);
|
const assignRolesCustomApiSpy = requestSpy.and.returnValue(Promise.resolve());
|
||||||
service.assignRoles('mock-user-id', [mockIdentityRole]).subscribe(() => {
|
service.assignRoles('mock-user-id', [mockIdentityRole]).subscribe(() => {
|
||||||
expect(assignRolesCustomApiSpy).toHaveBeenCalled();
|
expect(assignRolesCustomApiSpy).toHaveBeenCalled();
|
||||||
done();
|
done();
|
||||||
@@ -665,7 +656,7 @@ describe('IdentityUserService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should be able to remove roles', (done) => {
|
it('should be able to remove roles', (done) => {
|
||||||
const removeRolesCustomApiSpy = spyOn(alfrescoApiService, 'getInstance').and.returnValue(removeRolesMockApi);
|
const removeRolesCustomApiSpy = requestSpy.and.returnValue(Promise.resolve());
|
||||||
service.removeRoles('mock-user-id', [mockIdentityRole]).subscribe(() => {
|
service.removeRoles('mock-user-id', [mockIdentityRole]).subscribe(() => {
|
||||||
expect(removeRolesCustomApiSpy).toHaveBeenCalled();
|
expect(removeRolesCustomApiSpy).toHaveBeenCalled();
|
||||||
done();
|
done();
|
||||||
|
|||||||
Reference in New Issue
Block a user