mirror of
https://github.com/DSpace/dspace-angular.git
synced 2025-10-18 07:23:03 +00:00
Fix cache invalidation for versioning
This commit is contained in:
@@ -66,6 +66,8 @@ describe('SubmissionObjectEffects test suite', () => {
|
||||
let submissionServiceStub;
|
||||
let submissionJsonPatchOperationsServiceStub;
|
||||
let submissionObjectDataServiceStub;
|
||||
let workspaceItemDataService;
|
||||
|
||||
const collectionId: string = mockSubmissionCollectionId;
|
||||
const submissionId: string = mockSubmissionId;
|
||||
const submissionDefinitionResponse: any = mockSubmissionDefinitionResponse;
|
||||
@@ -82,6 +84,10 @@ describe('SubmissionObjectEffects test suite', () => {
|
||||
|
||||
submissionServiceStub.hasUnsavedModification.and.returnValue(observableOf(true));
|
||||
|
||||
workspaceItemDataService = jasmine.createSpyObj('WorkspaceItemDataService', {
|
||||
invalidateById: observableOf(true),
|
||||
});
|
||||
|
||||
TestBed.configureTestingModule({
|
||||
imports: [
|
||||
StoreModule.forRoot({}, storeModuleConfig),
|
||||
@@ -106,6 +112,7 @@ describe('SubmissionObjectEffects test suite', () => {
|
||||
{ provide: WorkflowItemDataService, useValue: {} },
|
||||
{ provide: HALEndpointService, useValue: {} },
|
||||
{ provide: SubmissionObjectDataService, useValue: submissionObjectDataServiceStub },
|
||||
{ provide: WorkspaceitemDataService, useValue: workspaceItemDataService },
|
||||
],
|
||||
});
|
||||
|
||||
|
@@ -55,6 +55,7 @@ import parseSectionErrorPaths, { SectionErrorPath } from '../utils/parseSectionE
|
||||
import { FormState } from '../../shared/form/form.reducer';
|
||||
import { SubmissionSectionObject } from './submission-section-object.model';
|
||||
import { SubmissionSectionError } from './submission-section-error.model';
|
||||
import { WorkspaceitemDataService } from '../../core/submission/workspaceitem-data.service';
|
||||
|
||||
@Injectable()
|
||||
export class SubmissionObjectEffects {
|
||||
@@ -258,6 +259,7 @@ export class SubmissionObjectEffects {
|
||||
depositSubmissionSuccess$ = createEffect(() => this.actions$.pipe(
|
||||
ofType(SubmissionObjectActionTypes.DEPOSIT_SUBMISSION_SUCCESS),
|
||||
tap(() => this.notificationsService.success(null, this.translate.get('submission.sections.general.deposit_success_notice'))),
|
||||
tap((action: DepositSubmissionSuccessAction) => this.workspaceItemDataService.invalidateById(action.payload.submissionId)),
|
||||
tap(() => this.submissionService.redirectToMyDSpace())), { dispatch: false });
|
||||
|
||||
/**
|
||||
@@ -326,14 +328,17 @@ export class SubmissionObjectEffects {
|
||||
ofType(SubmissionObjectActionTypes.DISCARD_SUBMISSION_ERROR),
|
||||
tap(() => this.notificationsService.error(null, this.translate.get('submission.sections.general.discard_error_notice')))), { dispatch: false });
|
||||
|
||||
constructor(private actions$: Actions,
|
||||
constructor(
|
||||
private actions$: Actions,
|
||||
private notificationsService: NotificationsService,
|
||||
private operationsService: SubmissionJsonPatchOperationsService,
|
||||
private sectionService: SectionsService,
|
||||
private store$: Store<any>,
|
||||
private submissionService: SubmissionService,
|
||||
private submissionObjectService: SubmissionObjectDataService,
|
||||
private translate: TranslateService) {
|
||||
private translate: TranslateService,
|
||||
private workspaceItemDataService: WorkspaceitemDataService,
|
||||
) {
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user