mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-15 22:13:02 +00:00
fix AoT issues
This commit is contained in:
@@ -164,7 +164,7 @@ export const getLinkDefinition = <T extends HALResource>(source: GenericConstruc
|
|||||||
*
|
*
|
||||||
* @param parent the parent class to inherit @link annotations from
|
* @param parent the parent class to inherit @link annotations from
|
||||||
*/
|
*/
|
||||||
export const inheritLinkAnnotations = (parent: any): any => {
|
export function inheritLinkAnnotations(parent: any): any {
|
||||||
return (child: any) => {
|
return (child: any) => {
|
||||||
const parentMap: Map<string, LinkDefinition<any>> = linkMap.get(parent) || new Map();
|
const parentMap: Map<string, LinkDefinition<any>> = linkMap.get(parent) || new Map();
|
||||||
const childMap: Map<string, LinkDefinition<any>> = linkMap.get(child) || new Map();
|
const childMap: Map<string, LinkDefinition<any>> = linkMap.get(child) || new Map();
|
||||||
@@ -177,4 +177,4 @@ export const inheritLinkAnnotations = (parent: any): any => {
|
|||||||
|
|
||||||
linkMap.set(child, childMap);
|
linkMap.set(child, childMap);
|
||||||
}
|
}
|
||||||
};
|
}
|
||||||
|
10
src/app/core/cache/builders/link.service.spec.ts
vendored
10
src/app/core/cache/builders/link.service.spec.ts
vendored
@@ -123,7 +123,7 @@ describe('LinkService', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('should call getLinkDefinition with the correct model and link', () => {
|
it('should call getLinkDefinition with the correct model and link', () => {
|
||||||
expect(decorators.getLinkDefinition).toHaveBeenCalledWith(testModel.constructor, 'predecessor');
|
expect(decorators.getLinkDefinition).toHaveBeenCalledWith(testModel.constructor as any, 'predecessor');
|
||||||
});
|
});
|
||||||
|
|
||||||
it('should call getDataServiceFor with the correct resource type', () => {
|
it('should call getDataServiceFor with the correct resource type', () => {
|
||||||
@@ -186,8 +186,8 @@ describe('LinkService', () => {
|
|||||||
|
|
||||||
describe('removeResolvedLinks', () => {
|
describe('removeResolvedLinks', () => {
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
testModel.predecessor = 'predecessor value';
|
testModel.predecessor = 'predecessor value' as any;
|
||||||
testModel.successor = 'successor value';
|
testModel.successor = 'successor value' as any;
|
||||||
spyOnFunction(decorators, 'getLinkDefinitions').and.returnValue([
|
spyOnFunction(decorators, 'getLinkDefinitions').and.returnValue([
|
||||||
{
|
{
|
||||||
resourceType: TEST_MODEL,
|
resourceType: TEST_MODEL,
|
||||||
@@ -213,8 +213,8 @@ describe('LinkService', () => {
|
|||||||
|
|
||||||
it('should leave the original object untouched', () => {
|
it('should leave the original object untouched', () => {
|
||||||
service.removeResolvedLinks(testModel);
|
service.removeResolvedLinks(testModel);
|
||||||
expect(testModel.predecessor).toBe('predecessor value');
|
expect(testModel.predecessor as any).toBe('predecessor value');
|
||||||
expect(testModel.successor).toBe('successor value');
|
expect(testModel.successor as any).toBe('successor value');
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@@ -91,7 +91,7 @@ describe('ObjectCacheService', () => {
|
|||||||
|
|
||||||
// due to the implementation of spyOn above, this subscribe will be synchronous
|
// due to the implementation of spyOn above, this subscribe will be synchronous
|
||||||
service.getObjectBySelfLink(selfLink).pipe(first()).subscribe((o) => {
|
service.getObjectBySelfLink(selfLink).pipe(first()).subscribe((o) => {
|
||||||
expect(o.self).toBe(selfLink);
|
expect(o._links.self.href).toBe(selfLink);
|
||||||
// this only works if testObj is an instance of TestClass
|
// this only works if testObj is an instance of TestClass
|
||||||
expect(o instanceof Item).toBeTruthy();
|
expect(o instanceof Item).toBeTruthy();
|
||||||
}
|
}
|
||||||
|
@@ -33,30 +33,9 @@ describe('RelationshipService', () => {
|
|||||||
rightwardType: 'isPublicationOfAuthor'
|
rightwardType: 'isPublicationOfAuthor'
|
||||||
});
|
});
|
||||||
|
|
||||||
const item = Object.assign(new Item(), {
|
const ri1SelfLink = restEndpointURL + '/author1';
|
||||||
id: 'publication',
|
const ri2SelfLink = restEndpointURL + '/author2';
|
||||||
uuid: 'publication',
|
const itemSelfLink = restEndpointURL + '/publication';
|
||||||
relationships: observableOf(new RemoteData(false, false, true, undefined, new PaginatedList(new PageInfo(), relationships))),
|
|
||||||
_links: {
|
|
||||||
relationships: { href: restEndpointURL + '/publication/relationships' },
|
|
||||||
self: { href: restEndpointURL + '/publication' }
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
const relatedItem1 = Object.assign(new Item(), {
|
|
||||||
id: 'author1',
|
|
||||||
uuid: 'author1',
|
|
||||||
_links: {
|
|
||||||
self: { href: restEndpointURL + '/author1' }
|
|
||||||
}
|
|
||||||
});
|
|
||||||
const relatedItem2 = Object.assign(new Item(), {
|
|
||||||
id: 'author2',
|
|
||||||
uuid: 'author2',
|
|
||||||
_links: {
|
|
||||||
self: { href: restEndpointURL + '/author2' }
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
const relationship1 = Object.assign(new Relationship(), {
|
const relationship1 = Object.assign(new Relationship(), {
|
||||||
_links: {
|
_links: {
|
||||||
@@ -64,10 +43,10 @@ describe('RelationshipService', () => {
|
|||||||
href: relationshipsEndpointURL + '/2'
|
href: relationshipsEndpointURL + '/2'
|
||||||
},
|
},
|
||||||
leftItem: {
|
leftItem: {
|
||||||
href: relatedItem1._links.self.href
|
href: ri1SelfLink
|
||||||
},
|
},
|
||||||
rightItem: {
|
rightItem: {
|
||||||
href: item._links.self.href
|
href: itemSelfLink
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
id: '2',
|
id: '2',
|
||||||
@@ -80,18 +59,41 @@ describe('RelationshipService', () => {
|
|||||||
href: relationshipsEndpointURL + '/3'
|
href: relationshipsEndpointURL + '/3'
|
||||||
},
|
},
|
||||||
leftItem: {
|
leftItem: {
|
||||||
href: relatedItem2._links.self.href
|
href: ri2SelfLink
|
||||||
},
|
},
|
||||||
rightItem: {
|
rightItem: {
|
||||||
href: item._links.self.href
|
href: itemSelfLink
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
id: '3',
|
id: '3',
|
||||||
uuid: '3',
|
uuid: '3',
|
||||||
relationshipType: observableOf(new RemoteData(false, false, true, undefined, relationshipType))
|
relationshipType: observableOf(new RemoteData(false, false, true, undefined, relationshipType))
|
||||||
});
|
});
|
||||||
|
|
||||||
const relationships = [relationship1, relationship2];
|
const relationships = [relationship1, relationship2]; const item = Object.assign(new Item(), {
|
||||||
|
id: 'publication',
|
||||||
|
uuid: 'publication',
|
||||||
|
relationships: observableOf(new RemoteData(false, false, true, undefined, new PaginatedList(new PageInfo(), relationships))),
|
||||||
|
_links: {
|
||||||
|
relationships: { href: restEndpointURL + '/publication/relationships' },
|
||||||
|
self: { href: itemSelfLink }
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
const relatedItem1 = Object.assign(new Item(), {
|
||||||
|
id: 'author1',
|
||||||
|
uuid: 'author1',
|
||||||
|
_links: {
|
||||||
|
self: { href: ri1SelfLink }
|
||||||
|
}
|
||||||
|
});
|
||||||
|
const relatedItem2 = Object.assign(new Item(), {
|
||||||
|
id: 'author2',
|
||||||
|
uuid: 'author2',
|
||||||
|
_links: {
|
||||||
|
self: { href: ri2SelfLink }
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
relationship1.leftItem = getRemotedataObservable(relatedItem1);
|
relationship1.leftItem = getRemotedataObservable(relatedItem1);
|
||||||
relationship1.rightItem = getRemotedataObservable(item);
|
relationship1.rightItem = getRemotedataObservable(item);
|
||||||
|
@@ -38,7 +38,14 @@ describe('SearchFacetRangeOptionComponent', () => {
|
|||||||
label: value2,
|
label: value2,
|
||||||
value: value2,
|
value: value2,
|
||||||
count: 20,
|
count: 20,
|
||||||
search: ''
|
_links: {
|
||||||
|
self: {
|
||||||
|
href: ''
|
||||||
|
},
|
||||||
|
search: {
|
||||||
|
href: ''
|
||||||
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const searchLink = '/search';
|
const searchLink = '/search';
|
||||||
@@ -96,7 +103,14 @@ describe('SearchFacetRangeOptionComponent', () => {
|
|||||||
label: '50-60',
|
label: '50-60',
|
||||||
value: '50-60',
|
value: '50-60',
|
||||||
count: 20,
|
count: 20,
|
||||||
search: ''
|
_links: {
|
||||||
|
self: {
|
||||||
|
href: ''
|
||||||
|
},
|
||||||
|
search: {
|
||||||
|
href: ''
|
||||||
|
}
|
||||||
|
}
|
||||||
};
|
};
|
||||||
(comp as any).updateChangeParams();
|
(comp as any).updateChangeParams();
|
||||||
expect(comp.changeQueryParams).toEqual({
|
expect(comp.changeQueryParams).toEqual({
|
||||||
|
@@ -39,17 +39,38 @@ describe('SearchFacetFilterComponent', () => {
|
|||||||
label: value1,
|
label: value1,
|
||||||
value: value1,
|
value: value1,
|
||||||
count: 52,
|
count: 52,
|
||||||
search: ''
|
_links: {
|
||||||
|
self: {
|
||||||
|
href: ''
|
||||||
|
},
|
||||||
|
search: {
|
||||||
|
href: ''
|
||||||
|
}
|
||||||
|
}
|
||||||
}, {
|
}, {
|
||||||
label: value2,
|
label: value2,
|
||||||
value: value2,
|
value: value2,
|
||||||
count: 20,
|
count: 20,
|
||||||
search: ''
|
_links: {
|
||||||
|
self: {
|
||||||
|
href: ''
|
||||||
|
},
|
||||||
|
search: {
|
||||||
|
href: ''
|
||||||
|
}
|
||||||
|
}
|
||||||
}, {
|
}, {
|
||||||
label: value3,
|
label: value3,
|
||||||
value: value3,
|
value: value3,
|
||||||
count: 5,
|
count: 5,
|
||||||
search: ''
|
_links: {
|
||||||
|
self: {
|
||||||
|
href: ''
|
||||||
|
},
|
||||||
|
search: {
|
||||||
|
href: ''
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user