import { Injectable } from '@angular/core'; import { AdminUsersService } from '@core/services/admin-users.service'; import { AdaptedAdminUser, AdminUser, AdminUserPermissions, PlatformAdminRole } from '@core/typings/user.typing'; import { PaginationOptions } from '@yourcause/common'; import { MockAngularProvider } from '@yourcause/test-decorators/angular/helpers'; @Injectable({ providedIn: 'root' }) export class AdminUsersServiceMock extends AdminUsersService { get roles (): PlatformAdminRole[] { return [ { id: 1, name: 'GC-Admin', permissions: [ AdminUserPermissions.CreateOrEditClient, AdminUserPermissions.ViewApplicants, AdminUserPermissions.ViewGrantManagers, AdminUserPermissions.ViewEmailLogs, AdminUserPermissions.Import, AdminUserPermissions.CreatePasswordResetToken, AdminUserPermissions.ViewUsers, AdminUserPermissions.EditGrantManagers, AdminUserPermissions.EditApplicants, AdminUserPermissions.CanImpersonate, AdminUserPermissions.CanAccessAllClientZones, AdminUserPermissions.ViewClient, AdminUserPermissions.CanManageSpecialHandling ] }, { id: 2, name: 'GC-Account Manager', permissions: [ AdminUserPermissions.ViewApplicants, AdminUserPermissions.ViewGrantManagers, AdminUserPermissions.ViewEmailLogs, AdminUserPermissions.CanImpersonate, AdminUserPermissions.ViewClient ] }, { id: 3, name: 'GC-Data Manager', permissions: [ AdminUserPermissions.Import, AdminUserPermissions.ViewClient ] } ]; } get admins (): AdaptedAdminUser[] { return [ { userId: 1, firstName: 'Tyrone', lastName: 'Biggums', fullName: 'Tyrone Smoochie Wallace Biggums', email: 'bubrub@whistlesgowoo.woo', createdDate: '2019-09-09T16:52:47.4043791Z', isDeactivated: false, canAccessAllClientZones: true, clientZoneIds: [153, 154, 155, 156], roleIds: [1] }, { userId: 2, firstName: 'Sho', lastName: 'Nuff', fullName: 'Sho Nuff', email: 'shonuff@whosethemaster.org', createdDate: '2019-09-09T16:52:47.4043791Z', isDeactivated: false, canAccessAllClientZones: false, clientZoneIds: [153, 154, 155, 156], roleIds: [2] }, { userId: 3, firstName: 'Bruce', lastName: 'Banner', fullName: 'Bruce Banner', email: 'notthehulk@aol.com', createdDate: '2019-09-09T16:52:47.4043791Z', isDeactivated: true, canAccessAllClientZones: false, clientZoneIds: [153, 154, 155, 156], roleIds: [2, 3] } ]; } async downloadAdminReport (options: PaginationOptions) { } } export const ADMIN_USERS_SERVICE_MOCK = MockAngularProvider( AdminUsersServiceMock, AdminUsersService );