diff --git a/src/app/core/data/request.service.spec.ts b/src/app/core/data/request.service.spec.ts index e2bc04040f..5ceca8b4bd 100644 --- a/src/app/core/data/request.service.spec.ts +++ b/src/app/core/data/request.service.spec.ts @@ -11,6 +11,7 @@ import { UUIDService } from '../shared/uuid.service'; import { RequestConfigureAction, RequestExecuteAction } from './request.actions'; import { DeleteRequest, + FindByIDRequest, GetRequest, HeadRequest, OptionsRequest, @@ -21,6 +22,7 @@ import { } from './request.models'; import { RequestService } from './request.service'; import { TestScheduler } from 'rxjs/testing'; +import { IdentifierType } from '../index/index.reducer'; describe('RequestService', () => { let scheduler: TestScheduler; @@ -38,6 +40,7 @@ describe('RequestService', () => { const testDeleteRequest = new DeleteRequest(testUUID, testHref); const testOptionsRequest = new OptionsRequest(testUUID, testHref); const testHeadRequest = new HeadRequest(testUUID, testHref); + const testFindByIdRequest = new FindByIDRequest(testUUID, testHref, testUUID, IdentifierType.UUID); const testPatchRequest = new PatchRequest(testUUID, testHref); let selectSpy; @@ -298,13 +301,22 @@ describe('RequestService', () => { describe('in the ObjectCache', () => { beforeEach(() => { (objectCache.hasBySelfLink as any).and.returnValue(true); + (objectCache.hasById as any).and.returnValue(true); spyOn(serviceAsAny, 'hasByHref').and.returnValue(false); }); - it('should return true', () => { + it('should return true for GetRequest', () => { const result = serviceAsAny.isCachedOrPending(testGetRequest); const expected = true; + expect(result).toEqual(expected); + }); + it('should return true for instance of FindByIdRequest', () => { + (objectCache.hasBySelfLink as any).and.returnValue(false); + const result = serviceAsAny.isCachedOrPending(testFindByIdRequest); + expect(objectCache.hasById).toHaveBeenCalledWith(testUUID, IdentifierType.UUID); + const expected = true; + expect(result).toEqual(expected); }); }); diff --git a/src/app/shared/mocks/mock-object-cache.service.ts b/src/app/shared/mocks/mock-object-cache.service.ts index 9e35a519ff..d096cfdf5f 100644 --- a/src/app/shared/mocks/mock-object-cache.service.ts +++ b/src/app/shared/mocks/mock-object-cache.service.ts @@ -4,12 +4,12 @@ export function getMockObjectCacheService(): ObjectCacheService { return jasmine.createSpyObj('objectCacheService', [ 'add', 'remove', - 'getByUUID', + 'getByID', 'getBySelfLink', 'getRequestHrefBySelfLink', 'getRequestHrefByUUID', 'getList', - 'hasByUUID', + 'hasById', 'hasBySelfLink' ]);