mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 10:04:11 +00:00
[TLC-254] ITs, mocking type bind relation service
This commit is contained in:
@@ -48,12 +48,21 @@ import { DynamicConcatModel } from './ds-dynamic-form-ui/models/ds-dynamic-conca
|
|||||||
import { DynamicLookupNameModel } from './ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model';
|
import { DynamicLookupNameModel } from './ds-dynamic-form-ui/models/lookup/dynamic-lookup-name.model';
|
||||||
import { DynamicRowArrayModel } from './ds-dynamic-form-ui/models/ds-dynamic-row-array-model';
|
import { DynamicRowArrayModel } from './ds-dynamic-form-ui/models/ds-dynamic-row-array-model';
|
||||||
import { FormRowModel } from '../../../core/config/models/config-submission-form.model';
|
import { FormRowModel } from '../../../core/config/models/config-submission-form.model';
|
||||||
|
import {DsDynamicTypeBindRelationService} from "./ds-dynamic-form-ui/ds-dynamic-type-bind-relation.service";
|
||||||
|
|
||||||
describe('FormBuilderService test suite', () => {
|
describe('FormBuilderService test suite', () => {
|
||||||
|
|
||||||
let testModel: DynamicFormControlModel[];
|
let testModel: DynamicFormControlModel[];
|
||||||
let testFormConfiguration: SubmissionFormsModel;
|
let testFormConfiguration: SubmissionFormsModel;
|
||||||
let service: FormBuilderService;
|
let service: FormBuilderService;
|
||||||
|
let typeBindRelationService: DsDynamicTypeBindRelationService;
|
||||||
|
|
||||||
|
function getMockDsDynamicTypeBindRelationService(): DsDynamicTypeBindRelationService {
|
||||||
|
return jasmine.createSpyObj('DsDynamicTypeBindRelationService', {
|
||||||
|
getRelatedFormModel: jasmine.createSpy('getRelatedFormModel'),
|
||||||
|
isFormControlToBeHidden: jasmine.createSpy('isFormControlToBeHidden')
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
const submissionId = '1234';
|
const submissionId = '1234';
|
||||||
|
|
||||||
@@ -71,6 +80,7 @@ describe('FormBuilderService test suite', () => {
|
|||||||
imports: [ReactiveFormsModule],
|
imports: [ReactiveFormsModule],
|
||||||
providers: [
|
providers: [
|
||||||
{ provide: FormBuilderService, useClass: FormBuilderService },
|
{ provide: FormBuilderService, useClass: FormBuilderService },
|
||||||
|
{ provide: DsDynamicTypeBindRelationService, useValue: getMockDsDynamicTypeBindRelationService() },
|
||||||
{ provide: DynamicFormValidationService, useValue: {} },
|
{ provide: DynamicFormValidationService, useValue: {} },
|
||||||
{ provide: NG_VALIDATORS, useValue: testValidator, multi: true },
|
{ provide: NG_VALIDATORS, useValue: testValidator, multi: true },
|
||||||
{ provide: NG_ASYNC_VALIDATORS, useValue: testAsyncValidator, multi: true }
|
{ provide: NG_ASYNC_VALIDATORS, useValue: testAsyncValidator, multi: true }
|
||||||
@@ -427,7 +437,10 @@ describe('FormBuilderService test suite', () => {
|
|||||||
} as any;
|
} as any;
|
||||||
});
|
});
|
||||||
|
|
||||||
beforeEach(inject([FormBuilderService], (formService: FormBuilderService) => service = formService));
|
beforeEach(inject([FormBuilderService, DsDynamicTypeBindRelationService], (formService: FormBuilderService, relationService: DsDynamicTypeBindRelationService) => {
|
||||||
|
service = formService;
|
||||||
|
typeBindRelationService = relationService;
|
||||||
|
}));
|
||||||
|
|
||||||
it('should find a dynamic form control model by id', () => {
|
it('should find a dynamic form control model by id', () => {
|
||||||
|
|
||||||
@@ -878,4 +891,11 @@ describe('FormBuilderService test suite', () => {
|
|||||||
|
|
||||||
expect(formArray.length === 0).toBe(true);
|
expect(formArray.length === 0).toBe(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('should hide on type bind', () => {
|
||||||
|
const model = service.findById('testFormArray', testModel) as DynamicFormArrayModel;
|
||||||
|
typeBindRelationService.getRelatedFormModel(model);
|
||||||
|
service.getTypeBindModel();
|
||||||
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
@@ -89,7 +89,8 @@ const rowArrayQualdropConfig = {
|
|||||||
submissionId: '1234',
|
submissionId: '1234',
|
||||||
metadataKey: 'dc.some.key',
|
metadataKey: 'dc.some.key',
|
||||||
metadataFields: ['dc.some.key'],
|
metadataFields: ['dc.some.key'],
|
||||||
hasSelectableMetadata: false
|
hasSelectableMetadata: false,
|
||||||
|
showButtons: true
|
||||||
} as DynamicRowArrayModelConfig;
|
} as DynamicRowArrayModelConfig;
|
||||||
|
|
||||||
export const MockRowArrayQualdropModel: DynamicRowArrayModel = new DynamicRowArrayModel(rowArrayQualdropConfig);
|
export const MockRowArrayQualdropModel: DynamicRowArrayModel = new DynamicRowArrayModel(rowArrayQualdropConfig);
|
||||||
|
Reference in New Issue
Block a user