mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-07 18:14:17 +00:00
Merge branch 'master' into w2p-62589_Item-mapper-update
Conflicts: resources/i18n/en.json src/app/+collection-page/collection-page-routing.module.ts src/app/+collection-page/collection-page.module.ts src/app/+community-page/community-page.component.ts src/app/+item-page/edit-item-page/edit-item-page.component.ts src/app/+item-page/edit-item-page/edit-item-page.module.ts src/app/+item-page/edit-item-page/edit-item-page.routing.module.ts src/app/+item-page/edit-item-page/item-delete/item-delete.component.spec.ts src/app/+item-page/edit-item-page/item-delete/item-delete.component.ts src/app/+item-page/edit-item-page/item-private/item-private.component.spec.ts src/app/+item-page/edit-item-page/item-private/item-private.component.ts src/app/+item-page/edit-item-page/item-public/item-public.component.spec.ts src/app/+item-page/edit-item-page/item-public/item-public.component.ts src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.spec.ts src/app/+item-page/edit-item-page/item-reinstate/item-reinstate.component.ts src/app/+item-page/edit-item-page/item-status/item-status.component.ts src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.spec.ts src/app/+item-page/edit-item-page/item-withdraw/item-withdraw.component.ts src/app/+item-page/edit-item-page/simple-item-action/abstract-simple-item-action.component.spec.ts src/app/+item-page/item-page-routing.module.ts src/app/+search-page/search-filters/search-filter/search-facet-filter/search-facet-filter.component.ts src/app/+search-page/search-filters/search-filter/search-filter.component.ts src/app/+search-page/search-service/search.service.ts src/app/app.reducer.ts src/app/core/auth/auth-response-parsing.service.ts src/app/core/auth/auth.service.ts src/app/core/auth/server-auth.service.ts src/app/core/cache/builders/remote-data-build.service.ts src/app/core/cache/object-cache.service.ts src/app/core/core.module.ts src/app/core/data/collection-data.service.ts src/app/core/data/data.service.ts src/app/core/data/item-data.service.spec.ts src/app/core/data/item-data.service.ts src/app/core/data/request.models.ts src/app/core/data/request.reducer.ts src/app/core/data/request.service.spec.ts src/app/core/data/request.service.ts src/app/core/index/index.effects.ts src/app/core/index/index.reducer.ts src/app/core/metadata/metadata.service.spec.ts src/app/core/shared/operators.spec.ts src/app/core/shared/operators.ts src/app/header/header.component.spec.ts src/app/shared/shared.module.ts
This commit is contained in:
@@ -6,11 +6,18 @@ import { RequestEntry } from '../data/request.reducer';
|
||||
import { RequestService } from '../data/request.service';
|
||||
import {
|
||||
configureRequest,
|
||||
filterSuccessfulResponses, getAllSucceededRemoteData,
|
||||
getRemoteDataPayload, getRequestFromRequestHref, getRequestFromRequestUUID,
|
||||
getResourceLinksFromResponse, getResponseFromEntry, getSucceededRemoteData,
|
||||
filterSuccessfulResponses,
|
||||
getAllSucceededRemoteData,
|
||||
getRemoteDataPayload,
|
||||
getRequestFromRequestHref,
|
||||
getRequestFromRequestUUID,
|
||||
getResourceLinksFromResponse,
|
||||
getResponseFromEntry,
|
||||
getSucceededRemoteData, redirectToPageNotFoundOn404
|
||||
} from './operators';
|
||||
import { RemoteData } from '../data/remote-data';
|
||||
import { RemoteDataError } from '../data/remote-data-error';
|
||||
import { of as observableOf } from 'rxjs';
|
||||
|
||||
describe('Core Module - RxJS Operators', () => {
|
||||
let scheduler: TestScheduler;
|
||||
@@ -137,7 +144,7 @@ describe('Core Module - RxJS Operators', () => {
|
||||
scheduler.schedule(() => source.pipe(configureRequest(requestService)).subscribe());
|
||||
scheduler.flush();
|
||||
|
||||
expect(requestService.configure).toHaveBeenCalledWith(testRequest);
|
||||
expect(requestService.configure).toHaveBeenCalledWith(testRequest, undefined);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -186,8 +193,52 @@ describe('Core Module - RxJS Operators', () => {
|
||||
.toEqual(new RemoteData(false, false, true, null, 'd')));
|
||||
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
describe('redirectToPageNotFoundOn404', () => {
|
||||
let router;
|
||||
beforeEach(() => {
|
||||
router = jasmine.createSpyObj('router', ['navigateByUrl']);
|
||||
});
|
||||
|
||||
it('should call navigateByUrl to a 404 page, when the remote data contains a 404 error', () => {
|
||||
const testRD = new RemoteData(false, false, false, new RemoteDataError(404, 'Not Found', 'Object was not found'), undefined);
|
||||
|
||||
observableOf(testRD).pipe(redirectToPageNotFoundOn404(router)).subscribe();
|
||||
expect(router.navigateByUrl).toHaveBeenCalledWith('/404', { skipLocationChange: true });
|
||||
});
|
||||
|
||||
it('should not call navigateByUrl to a 404 page, when the remote data contains another error than a 404', () => {
|
||||
const testRD = new RemoteData(false, false, false, new RemoteDataError(500, 'Server Error', 'Something went wrong'), undefined);
|
||||
|
||||
observableOf(testRD).pipe(redirectToPageNotFoundOn404(router)).subscribe();
|
||||
expect(router.navigateByUrl).not.toHaveBeenCalled();
|
||||
});
|
||||
|
||||
it('should not call navigateByUrl to a 404 page, when the remote data contains no error', () => {
|
||||
const testRD = new RemoteData(false, false, true, null, undefined);
|
||||
|
||||
observableOf(testRD).pipe(redirectToPageNotFoundOn404(router)).subscribe();
|
||||
expect(router.navigateByUrl).not.toHaveBeenCalled();
|
||||
});
|
||||
});
|
||||
|
||||
describe('getResponseFromEntry', () => {
|
||||
it('should return the response for all not empty request entries, when they have a value', () => {
|
||||
const source = hot('abcdefg', testRCEs);
|
||||
const result = source.pipe(getResponseFromEntry());
|
||||
const expected = cold('abcde--', {
|
||||
a: testRCEs.a.response,
|
||||
b: testRCEs.b.response,
|
||||
c: testRCEs.c.response,
|
||||
d: testRCEs.d.response,
|
||||
e: testRCEs.e.response
|
||||
});
|
||||
|
||||
expect(result).toBeObservable(expected)
|
||||
});
|
||||
});
|
||||
|
||||
describe('getAllSucceededRemoteData', () => {
|
||||
it('should return all hasSucceeded RemoteData Observables', () => {
|
||||
const testRD = {
|
||||
|
Reference in New Issue
Block a user