mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 01:54:15 +00:00
Merge pull request #1076 from atmire/1067-blank-qualifier
UI sends wrong request when creating new metadata field without qualifier
This commit is contained in:
@@ -326,6 +326,25 @@ describe('RegistryService', () => {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
describe('when createMetadataField is called with a blank qualifier', () => {
|
||||||
|
let result: Observable<MetadataField>;
|
||||||
|
let metadataField: MetadataField;
|
||||||
|
|
||||||
|
beforeEach(() => {
|
||||||
|
metadataField = mockFieldsList[0];
|
||||||
|
metadataField.qualifier = '';
|
||||||
|
result = registryService.createMetadataField(metadataField, mockSchemasList[0]);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should return the created metadata field with a null qualifier', (done) => {
|
||||||
|
metadataField.qualifier = null;
|
||||||
|
result.subscribe((field: MetadataField) => {
|
||||||
|
expect(field).toEqual(metadataField);
|
||||||
|
done();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
describe('when updateMetadataField is called', () => {
|
describe('when updateMetadataField is called', () => {
|
||||||
let result: Observable<MetadataField>;
|
let result: Observable<MetadataField>;
|
||||||
|
|
||||||
@@ -341,6 +360,25 @@ describe('RegistryService', () => {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
describe('when updateMetadataField is called with a blank qualifier', () => {
|
||||||
|
let result: Observable<MetadataField>;
|
||||||
|
let metadataField: MetadataField;
|
||||||
|
|
||||||
|
beforeEach(() => {
|
||||||
|
metadataField = mockFieldsList[0];
|
||||||
|
metadataField.qualifier = '';
|
||||||
|
result = registryService.updateMetadataField(metadataField);
|
||||||
|
});
|
||||||
|
|
||||||
|
it('should return the updated metadata field with a null qualifier', (done) => {
|
||||||
|
metadataField.qualifier = null;
|
||||||
|
result.subscribe((field: MetadataField) => {
|
||||||
|
expect(field).toEqual(metadataField);
|
||||||
|
done();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
describe('when deleteMetadataSchema is called', () => {
|
describe('when deleteMetadataSchema is called', () => {
|
||||||
let result: Observable<RemoteData<NoContent>>;
|
let result: Observable<RemoteData<NoContent>>;
|
||||||
|
|
||||||
|
@@ -245,6 +245,9 @@ export class RegistryService {
|
|||||||
* @param schema The MetadataSchema to create the field in
|
* @param schema The MetadataSchema to create the field in
|
||||||
*/
|
*/
|
||||||
public createMetadataField(field: MetadataField, schema: MetadataSchema): Observable<MetadataField> {
|
public createMetadataField(field: MetadataField, schema: MetadataSchema): Observable<MetadataField> {
|
||||||
|
if (!field.qualifier) {
|
||||||
|
field.qualifier = null;
|
||||||
|
}
|
||||||
return this.metadataFieldService.create(field, new RequestParam('schemaId', schema.id)).pipe(
|
return this.metadataFieldService.create(field, new RequestParam('schemaId', schema.id)).pipe(
|
||||||
getFirstSucceededRemoteDataPayload(),
|
getFirstSucceededRemoteDataPayload(),
|
||||||
hasValueOperator(),
|
hasValueOperator(),
|
||||||
@@ -260,6 +263,9 @@ export class RegistryService {
|
|||||||
* @param field The MetadataField to update
|
* @param field The MetadataField to update
|
||||||
*/
|
*/
|
||||||
public updateMetadataField(field: MetadataField): Observable<MetadataField> {
|
public updateMetadataField(field: MetadataField): Observable<MetadataField> {
|
||||||
|
if (!field.qualifier) {
|
||||||
|
field.qualifier = null;
|
||||||
|
}
|
||||||
return this.metadataFieldService.put(field).pipe(
|
return this.metadataFieldService.put(field).pipe(
|
||||||
getFirstSucceededRemoteDataPayload(),
|
getFirstSucceededRemoteDataPayload(),
|
||||||
hasValueOperator(),
|
hasValueOperator(),
|
||||||
|
Reference in New Issue
Block a user