mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-10 03:23:07 +00:00
Cache redesign part 1, and add support for alternative links
This commit is contained in:
@@ -32,8 +32,6 @@ import { CommonModule } from '@angular/common';
|
||||
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
|
||||
import { FormComponent } from '../../../shared/form/form.component';
|
||||
import { FormFieldModel } from '../../../shared/form/builder/models/form-field.model';
|
||||
import { ConfigData } from '../../../core/config/config-data';
|
||||
import { PageInfo } from '../../../core/shared/page-info.model';
|
||||
import { FormFieldMetadataValueObject } from '../../../shared/form/builder/models/form-field-metadata-value.model';
|
||||
import { DynamicRowGroupModel } from '../../../shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-row-group-model';
|
||||
import { DsDynamicInputModel } from '../../../shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-input.model';
|
||||
@@ -41,18 +39,19 @@ import { SubmissionSectionError } from '../../objects/submission-objects.reducer
|
||||
import { DynamicFormControlEvent, DynamicFormControlEventType } from '@ng-dynamic-forms/core';
|
||||
import { JsonPatchOperationPathCombiner } from '../../../core/json-patch/builder/json-patch-operation-path-combiner';
|
||||
import { FormRowModel } from '../../../core/config/models/config-submission-form.model';
|
||||
import { RemoteData } from '../../../core/data/remote-data';
|
||||
import { WorkspaceItem } from '../../../core/submission/models/workspaceitem.model';
|
||||
import { SubmissionObjectDataService } from '../../../core/submission/submission-object-data.service';
|
||||
import { ObjectCacheService } from '../../../core/cache/object-cache.service';
|
||||
import { RequestService } from '../../../core/data/request.service';
|
||||
import { createSuccessfulRemoteDataObject$ } from '../../../shared/remote-data.utils';
|
||||
|
||||
function getMockSubmissionFormsConfigService(): SubmissionFormsConfigService {
|
||||
return jasmine.createSpyObj('FormOperationsService', {
|
||||
getConfigAll: jasmine.createSpy('getConfigAll'),
|
||||
getConfigByHref: jasmine.createSpy('getConfigByHref'),
|
||||
getConfigByName: jasmine.createSpy('getConfigByName'),
|
||||
getConfigBySearch: jasmine.createSpy('getConfigBySearch')
|
||||
getConfigBySearch: jasmine.createSpy('getConfigBySearch'),
|
||||
findByHref: jasmine.createSpy('findByHref'),
|
||||
});
|
||||
}
|
||||
|
||||
@@ -153,7 +152,6 @@ describe('SubmissionSectionformComponent test suite', () => {
|
||||
const submissionId = mockSubmissionId;
|
||||
const collectionId = mockSubmissionCollectionId;
|
||||
const parsedSectionErrors: any = mockUploadResponse1ParsedErrors.traditionalpageone;
|
||||
const formConfigData = new ConfigData(new PageInfo(), testFormConfiguration);
|
||||
|
||||
beforeEach(async(() => {
|
||||
TestBed.configureTestingModule({
|
||||
@@ -178,12 +176,12 @@ describe('SubmissionSectionformComponent test suite', () => {
|
||||
{ provide: SectionsService, useClass: SectionsServiceStub },
|
||||
{ provide: SubmissionService, useClass: SubmissionServiceStub },
|
||||
{ provide: TranslateService, useValue: getMockTranslateService() },
|
||||
{ provide: ObjectCacheService, useValue: { remove: () => {/*do nothing*/}, hasBySelfLinkObservable: () => observableOf(false) } },
|
||||
{ provide: RequestService, useValue: { removeByHrefSubstring: () => {/*do nothing*/}, hasByHrefObservable: () => observableOf(false) } },
|
||||
{ provide: ObjectCacheService, useValue: { remove: () => {/*do nothing*/}, hasBySelfLinkObservable: () => observableOf(false), hasByHref$: () => observableOf(false) } },
|
||||
{ provide: RequestService, useValue: { removeByHrefSubstring: () => {/*do nothing*/}, hasByHref$: () => observableOf(false) } },
|
||||
{ provide: 'collectionIdProvider', useValue: collectionId },
|
||||
{ provide: 'sectionDataProvider', useValue: sectionObject },
|
||||
{ provide: 'submissionIdProvider', useValue: submissionId },
|
||||
{ provide: SubmissionObjectDataService, useValue: { getHrefByID: () => observableOf('testUrl'), findById: () => observableOf(new RemoteData(false, false, true, null, new WorkspaceItem())) } },
|
||||
{ provide: SubmissionObjectDataService, useValue: { getHrefByID: () => observableOf('testUrl'), findById: () => createSuccessfulRemoteDataObject$(new WorkspaceItem()) } },
|
||||
ChangeDetectorRef,
|
||||
SubmissionSectionformComponent
|
||||
],
|
||||
@@ -242,7 +240,7 @@ describe('SubmissionSectionformComponent test suite', () => {
|
||||
it('should init section properly', () => {
|
||||
const sectionData = {};
|
||||
formService.isValid.and.returnValue(observableOf(true));
|
||||
formConfigService.getConfigByHref.and.returnValue(observableOf(formConfigData));
|
||||
formConfigService.findByHref.and.returnValue(createSuccessfulRemoteDataObject$(testFormConfiguration));
|
||||
sectionsServiceStub.getSectionData.and.returnValue(observableOf(sectionData));
|
||||
spyOn(comp, 'initForm');
|
||||
spyOn(comp, 'subscriptions');
|
||||
@@ -250,7 +248,7 @@ describe('SubmissionSectionformComponent test suite', () => {
|
||||
comp.onSectionInit();
|
||||
fixture.detectChanges();
|
||||
|
||||
expect(compAsAny.formConfig).toEqual(formConfigData.payload);
|
||||
expect(compAsAny.formConfig).toEqual(testFormConfiguration);
|
||||
expect(comp.sectionData.errors).toEqual([]);
|
||||
expect(comp.sectionData.data).toEqual(sectionData);
|
||||
expect(comp.isLoading).toBeFalsy();
|
||||
|
Reference in New Issue
Block a user