diff --git a/lib/content-services/src/lib/document-list/services/document-list.service.spec.ts b/lib/content-services/src/lib/document-list/services/document-list.service.spec.ts index 977152330e..5a3df617bc 100644 --- a/lib/content-services/src/lib/document-list/services/document-list.service.spec.ts +++ b/lib/content-services/src/lib/document-list/services/document-list.service.spec.ts @@ -18,6 +18,7 @@ import { DocumentListService } from './document-list.service'; import { fakeAsync, TestBed } from '@angular/core/testing'; import { ContentTestingModule } from '../../testing/content.testing.module'; +import { AdfHttpClient } from '@alfresco/adf-core/api'; declare let jasmine: any; @@ -68,7 +69,11 @@ describe('DocumentListService', () => { beforeEach(() => { TestBed.configureTestingModule({ - imports: [ContentTestingModule] + imports: [ContentTestingModule], + providers: [ + // TODO: remove this as soon as unit test not using jasmine.Ajax + { provide: AdfHttpClient, useValue: null } + ] }); service = TestBed.inject(DocumentListService); jasmine.Ajax.install(); diff --git a/lib/content-services/src/lib/services/alfresco-api.service.ts b/lib/content-services/src/lib/services/alfresco-api.service.ts index 97eb3c253d..977518ca43 100644 --- a/lib/content-services/src/lib/services/alfresco-api.service.ts +++ b/lib/content-services/src/lib/services/alfresco-api.service.ts @@ -31,7 +31,7 @@ export class AlfrescoApiService { protected appConfig = inject(AppConfigService); protected storageService = inject(StorageService); protected alfrescoApiFactory = inject(ALFRESCO_API_FACTORY, { optional: true }); - protected adfHttpClient = inject(AdfHttpClient); + protected adfHttpClient = inject(AdfHttpClient, { optional: true }); alfrescoApiInitialized: ReplaySubject = new ReplaySubject(1); diff --git a/lib/core/api/src/lib/adf-http-client.service.ts b/lib/core/api/src/lib/adf-http-client.service.ts index 35c7b95eaf..91c2ad4059 100644 --- a/lib/core/api/src/lib/adf-http-client.service.ts +++ b/lib/core/api/src/lib/adf-http-client.service.ts @@ -71,12 +71,23 @@ export class AdfHttpClient implements ee.Emitter, JsApiHttpClient { ee(this); } - /** @deprecated not used anywhere */ + /** + * Update the default security options + * + * @param options security options + * @deprecated not used anywhere + */ setDefaultSecurityOption(options: any) { this.defaultSecurityOptions = this.merge(this.defaultSecurityOptions, options); } - /** @deprecated not used anywhere */ + /** + * Merge objects + * + * @param objects objects to merge + * @deprecated not used anywhere + * @returns merged object + */ merge(...objects): any { const result = {}; @@ -228,6 +239,7 @@ export class AdfHttpClient implements ee.Emitter, JsApiHttpClient { ) .toPromise(); + /* eslint-disable @typescript-eslint/space-before-function-paren */ (promise as any).abort = function () { eventEmitter.emit('abort'); abort$.next(); diff --git a/lib/core/src/lib/app-config/app-config.service.ts b/lib/core/src/lib/app-config/app-config.service.ts index c42b87d114..868cdcfadf 100644 --- a/lib/core/src/lib/app-config/app-config.service.ts +++ b/lib/core/src/lib/app-config/app-config.service.ts @@ -16,7 +16,7 @@ */ import { HttpClient } from '@angular/common/http'; -import { inject, Injectable } from '@angular/core'; +import { Injectable } from '@angular/core'; import { ObjectUtils } from '../common/utils/object-utils'; import { Observable, ReplaySubject } from 'rxjs'; import { map, distinctUntilChanged, take } from 'rxjs/operators'; @@ -77,17 +77,14 @@ export class AppConfigService { }; status: Status = Status.INIT; - protected onLoadSubject: ReplaySubject; - onLoad: Observable; + protected readonly onLoadSubject = new ReplaySubject(); + onLoad = this.onLoadSubject.asObservable(); get isLoaded() { return this.status === Status.LOADED; } constructor() { - this.onLoadSubject = new ReplaySubject(); - this.onLoad = this.onLoadSubject.asObservable(); - this.extensionService.setup$.subscribe((config) => { this.onExtensionsLoaded(config); }); diff --git a/lib/core/src/lib/app-config/debug-app-config.service.ts b/lib/core/src/lib/app-config/debug-app-config.service.ts index c82c423401..38e22abf35 100644 --- a/lib/core/src/lib/app-config/debug-app-config.service.ts +++ b/lib/core/src/lib/app-config/debug-app-config.service.ts @@ -15,15 +15,13 @@ * limitations under the License. */ -import { Injectable } from '@angular/core'; +import { inject, Injectable } from '@angular/core'; import { StorageService } from '../common/services/storage.service'; import { AppConfigService, AppConfigValues } from './app-config.service'; @Injectable() export class DebugAppConfigService extends AppConfigService { - constructor(private storage: StorageService) { - super(); - } + private storage = inject(StorageService); get(key: string, defaultValue?: T): T { if (key === AppConfigValues.OAUTHCONFIG) { diff --git a/lib/process-services/src/lib/attachment/create-process-attachment/create-process-attachment.component.spec.ts b/lib/process-services/src/lib/attachment/create-process-attachment/create-process-attachment.component.spec.ts index eaa8a5d1b1..96c9316b70 100644 --- a/lib/process-services/src/lib/attachment/create-process-attachment/create-process-attachment.component.spec.ts +++ b/lib/process-services/src/lib/attachment/create-process-attachment/create-process-attachment.component.spec.ts @@ -19,6 +19,7 @@ import { SimpleChange } from '@angular/core'; import { ComponentFixture, TestBed } from '@angular/core/testing'; import { CreateProcessAttachmentComponent } from './create-process-attachment.component'; import { AlfrescoApiService, AlfrescoApiServiceMock } from '@alfresco/adf-content-services'; +import { AdfHttpClient } from '@alfresco/adf-core/api'; declare let jasmine: any; @@ -48,7 +49,11 @@ describe('CreateProcessAttachmentComponent', () => { beforeEach(() => { TestBed.configureTestingModule({ imports: [CreateProcessAttachmentComponent], - providers: [{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock }] + providers: [ + { provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock }, + // TODO: remove this as soon as unit test not using jasmine.Ajax + { provide: AdfHttpClient, useValue: null } + ] }); fixture = TestBed.createComponent(CreateProcessAttachmentComponent); component = fixture.componentInstance; diff --git a/lib/process-services/src/lib/form/services/ecm-model.service.spec.ts b/lib/process-services/src/lib/form/services/ecm-model.service.spec.ts index 16b55cc91f..b66b5a2d1e 100644 --- a/lib/process-services/src/lib/form/services/ecm-model.service.spec.ts +++ b/lib/process-services/src/lib/form/services/ecm-model.service.spec.ts @@ -20,6 +20,7 @@ import { FormModel } from '@alfresco/adf-core'; import { EcmModelService } from './ecm-model.service'; import { TestBed } from '@angular/core/testing'; import { AlfrescoApiService, AlfrescoApiServiceMock } from '@alfresco/adf-content-services'; +import { AdfHttpClient } from '@alfresco/adf-core/api'; declare let jasmine: any; @@ -29,7 +30,11 @@ describe('EcmModelService', () => { beforeEach(() => { TestBed.configureTestingModule({ imports: [], - providers: [{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock }] + providers: [ + { provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock }, + // TODO: remove this as soon as unit test not using jasmine.Ajax + { provide: AdfHttpClient, useValue: null } + ] }); service = TestBed.inject(EcmModelService); jasmine.Ajax.install(); diff --git a/lib/process-services/src/lib/form/services/process-content.service.spec.ts b/lib/process-services/src/lib/form/services/process-content.service.spec.ts index 9bbfcbad44..98d5818ce1 100644 --- a/lib/process-services/src/lib/form/services/process-content.service.spec.ts +++ b/lib/process-services/src/lib/form/services/process-content.service.spec.ts @@ -18,6 +18,7 @@ import { TestBed } from '@angular/core/testing'; import { ProcessContentService } from './process-content.service'; import { AlfrescoApiService, AlfrescoApiServiceMock } from '@alfresco/adf-content-services'; +import { AdfHttpClient } from '@alfresco/adf-core/api'; declare let jasmine: any; @@ -66,7 +67,11 @@ describe('ProcessContentService', () => { beforeEach(() => { TestBed.configureTestingModule({ imports: [], - providers: [{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock }] + providers: [ + { provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock }, + // TODO: remove this as soon as unit test not using jasmine.Ajax + { provide: AdfHttpClient, useValue: null } + ] }); service = TestBed.inject(ProcessContentService); }); diff --git a/lib/process-services/src/lib/form/widgets/document/content.widget.spec.ts b/lib/process-services/src/lib/form/widgets/document/content.widget.spec.ts index b6eb9ef46a..93ca79ce4c 100644 --- a/lib/process-services/src/lib/form/widgets/document/content.widget.spec.ts +++ b/lib/process-services/src/lib/form/widgets/document/content.widget.spec.ts @@ -23,6 +23,7 @@ import { of } from 'rxjs'; import { ContentWidgetComponent } from './content.widget'; import { ProcessContentService } from '../../services/process-content.service'; import { AlfrescoApiService, AlfrescoApiServiceMock } from '@alfresco/adf-content-services'; +import { AdfHttpClient } from '@alfresco/adf-core/api'; declare let jasmine: any; @@ -61,7 +62,11 @@ describe('ContentWidgetComponent', () => { beforeEach(() => { TestBed.configureTestingModule({ imports: [ContentWidgetComponent], - providers: [{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock }] + providers: [ + { provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock }, + // TODO: remove this as soon as unit test not using jasmine.Ajax + { provide: AdfHttpClient, useValue: null } + ] }); downloadService = TestBed.inject(DownloadService); processContentService = TestBed.inject(ProcessContentService); diff --git a/lib/process-services/src/lib/people/components/people-search/people-search.component.spec.ts b/lib/process-services/src/lib/people/components/people-search/people-search.component.spec.ts index d2d276e650..1d3fd4131c 100644 --- a/lib/process-services/src/lib/people/components/people-search/people-search.component.spec.ts +++ b/lib/process-services/src/lib/people/components/people-search/people-search.component.spec.ts @@ -19,6 +19,7 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { of } from 'rxjs'; import { PeopleSearchComponent } from './people-search.component'; import { LightUserRepresentation } from '@alfresco/js-api'; +import { AdfHttpClient } from '@alfresco/adf-core/api'; const fakeUser: LightUserRepresentation = { id: 1, @@ -43,7 +44,11 @@ describe('PeopleSearchComponent', () => { beforeEach(() => { TestBed.configureTestingModule({ - imports: [PeopleSearchComponent] + imports: [PeopleSearchComponent], + providers: [ + // TODO: remove this as soon as unit test not using jasmine.Ajax + { provide: AdfHttpClient, useValue: null } + ] }); fixture = TestBed.createComponent(PeopleSearchComponent); peopleSearchComponent = fixture.componentInstance; diff --git a/lib/process-services/src/lib/people/components/people/people.component.spec.ts b/lib/process-services/src/lib/people/components/people/people.component.spec.ts index 5970cb2d75..a362f3d1f2 100644 --- a/lib/process-services/src/lib/people/components/people/people.component.spec.ts +++ b/lib/process-services/src/lib/people/components/people/people.component.spec.ts @@ -18,8 +18,9 @@ import { ComponentFixture, TestBed } from '@angular/core/testing'; import { PeopleComponent } from './people.component'; import { LightUserRepresentation } from '@alfresco/js-api'; +import { AdfHttpClient } from '@alfresco/adf-core/api'; import { of, throwError } from 'rxjs'; -import { PeopleProcessService } from '../../../services/people-process.service'; +import { PeopleProcessService } from '@alfresco/adf-process-services'; const fakeUser: LightUserRepresentation = { id: 0, @@ -44,7 +45,11 @@ describe('PeopleComponent', () => { beforeEach(() => { TestBed.configureTestingModule({ - imports: [PeopleComponent] + imports: [PeopleComponent], + providers: [ + // TODO: remove this as soon as unit test not using jasmine.Ajax + { provide: AdfHttpClient, useValue: null } + ] }); fixture = TestBed.createComponent(PeopleComponent); peopleProcessService = fixture.debugElement.injector.get(PeopleProcessService); diff --git a/lib/process-services/src/lib/process-list/services/process-filter.service.spec.ts b/lib/process-services/src/lib/process-list/services/process-filter.service.spec.ts index 383c6abb47..ac43b8b2a4 100644 --- a/lib/process-services/src/lib/process-list/services/process-filter.service.spec.ts +++ b/lib/process-services/src/lib/process-list/services/process-filter.service.spec.ts @@ -20,6 +20,7 @@ import { ProcessFilterService } from './process-filter.service'; import { ProcessInstanceFilterRepresentation, UserProcessInstanceFilterRepresentation } from '@alfresco/js-api'; import { of } from 'rxjs'; import { AlfrescoApiService, AlfrescoApiServiceMock } from '@alfresco/adf-content-services'; +import { AdfHttpClient } from '@alfresco/adf-core/api'; declare let jasmine: any; @@ -49,7 +50,12 @@ describe('Process filter', () => { beforeEach(() => { TestBed.configureTestingModule({ - providers: [{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock }] + imports: [], + providers: [ + { provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock }, + // TODO: remove this as soon as unit test not using jasmine.Ajax + { provide: AdfHttpClient, useValue: null } + ] }); service = TestBed.inject(ProcessFilterService); }); diff --git a/lib/process-services/src/lib/services/people-process.service.spec.ts b/lib/process-services/src/lib/services/people-process.service.spec.ts index f3527d7dc7..5bc43b010b 100644 --- a/lib/process-services/src/lib/services/people-process.service.spec.ts +++ b/lib/process-services/src/lib/services/people-process.service.spec.ts @@ -19,6 +19,7 @@ import { fakeAsync, TestBed } from '@angular/core/testing'; import { PeopleProcessService } from './people-process.service'; import { LightUserRepresentation } from '@alfresco/js-api'; import { AlfrescoApiService, AlfrescoApiServiceMock } from '@alfresco/adf-content-services'; +import { AdfHttpClient } from '@alfresco/adf-core/api'; declare let jasmine: any; @@ -45,7 +46,12 @@ describe('PeopleProcessService', () => { beforeEach(() => { TestBed.configureTestingModule({ - providers: [{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock }] + imports: [], + providers: [ + { provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock }, + // TODO: remove this as soon as unit test not using jasmine.Ajax + { provide: AdfHttpClient, useValue: null } + ] }); service = TestBed.inject(PeopleProcessService); }); diff --git a/lib/process-services/src/lib/task-list/components/task-list/task-list.component.spec.ts b/lib/process-services/src/lib/task-list/components/task-list/task-list.component.spec.ts index 8587b46bdb..506d3c229c 100644 --- a/lib/process-services/src/lib/task-list/components/task-list/task-list.component.spec.ts +++ b/lib/process-services/src/lib/task-list/components/task-list/task-list.component.spec.ts @@ -41,6 +41,7 @@ import { MatCheckboxHarness } from '@angular/material/checkbox/testing'; import { MatMenuItemHarness } from '@angular/material/menu/testing'; import { AlfrescoApiService, AlfrescoApiServiceMock } from '@alfresco/adf-content-services'; import { CommonModule } from '@angular/common'; +import { AdfHttpClient } from '@alfresco/adf-core/api'; declare let jasmine: any; @@ -109,7 +110,9 @@ describe('TaskListComponent', () => { providers: [ TaskListService, { provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock }, - { provide: AppConfigService, useClass: AppConfigServiceMock } + { provide: AppConfigService, useClass: AppConfigServiceMock }, + // TODO: remove this as soon as unit test not using jasmine.Ajax + { provide: AdfHttpClient, useValue: null } ] }); appConfig = TestBed.inject(AppConfigService);