From 121816e5a4e52b3c9655f88543707ca2697c2e41 Mon Sep 17 00:00:00 2001 From: kurilova Date: Wed, 29 May 2024 10:29:49 +0000 Subject: [PATCH] Remove certificate if BE error happens --- .../certificates/certificates.store.spec.ts | 18 ++++++++++++++++++ .../pages/certificates/certificates.store.ts | 1 + 2 files changed, 19 insertions(+) diff --git a/modules/ui/src/app/pages/certificates/certificates.store.spec.ts b/modules/ui/src/app/pages/certificates/certificates.store.spec.ts index 081c56961..0582bb3e4 100644 --- a/modules/ui/src/app/pages/certificates/certificates.store.spec.ts +++ b/modules/ui/src/app/pages/certificates/certificates.store.spec.ts @@ -161,6 +161,24 @@ describe('CertificatesStore', () => { ); }); }); + + it('should not upload certificates if error happens', done => { + mockService.uploadCertificate.and.returnValue(of(false)); + mockService.fetchCertificates.and.returnValue(of([])); + + const uploadingCertificate = certificate_uploading; + + certificateStore.viewModel$.pipe(skip(1), take(1)).subscribe(store => { + expect(store.certificates).toContain(uploadingCertificate); + }); + + certificateStore.viewModel$.pipe(skip(2), take(1)).subscribe(store => { + expect(store.certificates).not.toContain(certificate); + done(); + }); + + certificateStore.uploadCertificate(FILE); + }); }); describe('deleteCertificate', () => { diff --git a/modules/ui/src/app/pages/certificates/certificates.store.ts b/modules/ui/src/app/pages/certificates/certificates.store.ts index 60d63e357..dde05f0fd 100644 --- a/modules/ui/src/app/pages/certificates/certificates.store.ts +++ b/modules/ui/src/app/pages/certificates/certificates.store.ts @@ -102,6 +102,7 @@ export class CertificatesStore extends ComponentStore { ); }), catchError(() => { + this.removeCertificate(file.name, certificates); return EMPTY; }) );