diff --git a/src/app/item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.spec.ts b/src/app/item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.spec.ts index 0a4df1bda5..3b71ba3a6a 100644 --- a/src/app/item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.spec.ts +++ b/src/app/item-page/edit-item-page/item-metadata/edit-in-place-field/edit-in-place-field.component.spec.ts @@ -463,4 +463,40 @@ describe('EditInPlaceFieldComponent', () => { }); }); + + describe('canEditMetadataField', () => { + describe('when the fieldUpdate\'s changeType is currently ADD', () => { + beforeEach(() => { + objectUpdatesService.isEditable.and.returnValue(observableOf(true)); + comp.fieldUpdate.changeType = FieldChangeType.ADD; + fixture.detectChanges(); + }); + it('can edit metadata field', () => { + const disabledMetadataField = fixture.debugElement.query(By.css('ds-validation-suggestions')).componentInstance.disable + expect(disabledMetadataField).toBe(false); + }); + }); + describe('when the fieldUpdate\'s changeType is currently REMOVE', () => { + beforeEach(() => { + objectUpdatesService.isEditable.and.returnValue(observableOf(true)); + comp.fieldUpdate.changeType = FieldChangeType.REMOVE; + fixture.detectChanges(); + }); + it('can edit metadata field', () => { + const disabledMetadataField = fixture.debugElement.query(By.css('ds-validation-suggestions')).componentInstance.disable + expect(disabledMetadataField).toBe(true); + }); + }); + describe('when the fieldUpdate\'s changeType is currently UPDATE', () => { + beforeEach(() => { + objectUpdatesService.isEditable.and.returnValue(observableOf(true)); + comp.fieldUpdate.changeType = FieldChangeType.UPDATE; + fixture.detectChanges(); + }); + it('can edit metadata field', () => { + const disabledMetadataField = fixture.debugElement.query(By.css('ds-validation-suggestions')).componentInstance.disable + expect(disabledMetadataField).toBe(true); + }); + }); + }); }); diff --git a/src/app/shared/input-suggestions/validation-suggestions/validation-suggestions.component.spec.ts b/src/app/shared/input-suggestions/validation-suggestions/validation-suggestions.component.spec.ts index 388ed40cfe..98d9b0ac6d 100644 --- a/src/app/shared/input-suggestions/validation-suggestions/validation-suggestions.component.spec.ts +++ b/src/app/shared/input-suggestions/validation-suggestions/validation-suggestions.component.spec.ts @@ -60,4 +60,30 @@ describe('ValidationSuggestionsComponent', () => { expect(comp.onClickSuggestion).toHaveBeenCalledWith(suggestions[clickedIndex].value); }); }); + describe('can edit input', () => { + describe('test input field readonly property when input disable is true', () => { + beforeEach(() => { + comp.disable = true; + fixture.detectChanges(); + }); + it('it should be true', () => { + fixture.detectChanges(); + let input = fixture.debugElement.query(By.css('input')); + let el = input.nativeElement; + expect(el.readOnly).toBe(true) + }); + }) + describe('test input field readonly property when input disable is false', () => { + beforeEach(() => { + comp.disable = false; + fixture.detectChanges(); + }); + it('it should be true', () => { + fixture.detectChanges(); + let input = fixture.debugElement.query(By.css('input')); + let el = input.nativeElement; + expect(el.readOnly).toBe(false) + }); + }) + }) });