From: Stephan Müller Date: Mon, 2 Mar 2020 11:16:32 +0000 (+0100) Subject: mgr/dashboard: Explicit returns in pool form X-Git-Tag: v15.1.1~39^2~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=d75e0b7a18d50d5cb4a190c0dca806332ab3efe1;p=ceph.git mgr/dashboard: Explicit returns in pool form Fixes: https://tracker.ceph.com/issues/44371 Signed-off-by: Stephan Müller --- diff --git a/src/pybind/mgr/dashboard/frontend/src/app/ceph/pool/pool-form/pool-form.component.spec.ts b/src/pybind/mgr/dashboard/frontend/src/app/ceph/pool/pool-form/pool-form.component.spec.ts index 30dbcb7db0692..5ff1418c94cbe 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/ceph/pool/pool-form/pool-form.component.spec.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/ceph/pool/pool-form/pool-form.component.spec.ts @@ -534,16 +534,16 @@ describe('PoolFormComponent', () => { }); }; - it('returns nothing if osd count is 0', () => { + it('returns 0 if osd count is 0', () => { component.info.osd_count = 0; - expect(component.getMinSize()).toBe(undefined); - expect(component.getMaxSize()).toBe(undefined); + expect(component.getMinSize()).toBe(0); + expect(component.getMaxSize()).toBe(0); }); - it('returns nothing if info is not there', () => { + it('returns 0 if info is not there', () => { delete component.info; - expect(component.getMinSize()).toBe(undefined); - expect(component.getMaxSize()).toBe(undefined); + expect(component.getMinSize()).toBe(0); + expect(component.getMaxSize()).toBe(0); }); it('returns minimum and maximum of rule', () => { diff --git a/src/pybind/mgr/dashboard/frontend/src/app/ceph/pool/pool-form/pool-form.component.ts b/src/pybind/mgr/dashboard/frontend/src/app/ceph/pool/pool-form/pool-form.component.ts index cfc81ba829f0c..f67adba02b8fe 100644 --- a/src/pybind/mgr/dashboard/frontend/src/app/ceph/pool/pool-form/pool-form.component.ts +++ b/src/pybind/mgr/dashboard/frontend/src/app/ceph/pool/pool-form/pool-form.component.ts @@ -382,7 +382,7 @@ export class PoolFormComponent implements OnInit { getMinSize(): number { if (!this.info || this.info.osd_count < 1) { - return undefined; + return 0; } const rule = this.form.getValue('crushRule'); if (rule) { @@ -393,7 +393,7 @@ export class PoolFormComponent implements OnInit { getMaxSize(): number { if (!this.info || this.info.osd_count < 1) { - return undefined; + return 0; } const osds: number = this.info.osd_count; if (this.form.getValue('crushRule')) { @@ -426,21 +426,13 @@ export class PoolFormComponent implements OnInit { private replicatedPgCalc(pgs: number): number { const sizeControl = this.form.get('size'); const size = sizeControl.value; - if (sizeControl.valid && size > 0) { - return pgs / size; - } - - return undefined; + return sizeControl.valid && size > 0 ? pgs / size : 0; } private erasurePgCalc(pgs: number): number { const ecpControl = this.form.get('erasureProfile'); const ecp = ecpControl.value; - if ((ecpControl.valid || ecpControl.disabled) && ecp) { - return pgs / (ecp.k + ecp.m); - } - - return undefined; + return (ecpControl.valid || ecpControl.disabled) && ecp ? pgs / (ecp.k + ecp.m) : 0; } private alignPgs(pgs = this.form.getValue('pgNum')) {