diff --git a/src/app/features/genes/components/gene-comparison-tool/components/gene-comparison-tool-details-panel/gene-comparison-tool-details-panel.component.html b/src/app/features/genes/components/gene-comparison-tool/components/gene-comparison-tool-details-panel/gene-comparison-tool-details-panel.component.html index ce33000e..c81ac286 100644 --- a/src/app/features/genes/components/gene-comparison-tool/components/gene-comparison-tool-details-panel/gene-comparison-tool-details-panel.component.html +++ b/src/app/features/genes/components/gene-comparison-tool/components/gene-comparison-tool-details-panel/gene-comparison-tool-details-panel.component.html @@ -18,7 +18,9 @@
P-Value
-
{{ getSignificantFigures(data.value, 3) }}
+
+ {{ getSignificantFigures(data.value, 3) }} +
{{ getSignificantFigures(data.pValue, 3) }}
@@ -36,17 +38,23 @@ [style]="getIntervalPositions(data)" >
-
{{ getSignificantFigures(data.intervalMin, 3) }}
+
+ {{ getSignificantFigures(data.intervalMin, 3) }} +
-
{{ getSignificantFigures(data.intervalMax, 3) }}
+
+ {{ getSignificantFigures(data.intervalMax, 3) }} +
-
{{ getSignificantFigures(data.value, 3) }}
+
+ {{ getSignificantFigures(data.value, 3) }} +
diff --git a/src/app/features/genes/components/gene-comparison-tool/components/gene-comparison-tool-details-panel/gene-comparison-tool-details-panel.component.ts b/src/app/features/genes/components/gene-comparison-tool/components/gene-comparison-tool-details-panel/gene-comparison-tool-details-panel.component.ts index c3eb7e98..daec3512 100644 --- a/src/app/features/genes/components/gene-comparison-tool/components/gene-comparison-tool-details-panel/gene-comparison-tool-details-panel.component.ts +++ b/src/app/features/genes/components/gene-comparison-tool/components/gene-comparison-tool-details-panel/gene-comparison-tool-details-panel.component.ts @@ -96,7 +96,7 @@ export class GeneComparisonToolDetailsPanelComponent { } getSignificantFigures(n: any, b: any) { - const emdash = '—'; // Shift+Option+Hyphen + const emdash = '\u2014'; // Shift+Option+Hyphen if (n === null || n === undefined) return emdash; return this.helperService.getSignificantFigures(n, b); diff --git a/src/app/features/genes/components/gene-comparison-tool/gene-comparison-tool.component.spec.ts b/src/app/features/genes/components/gene-comparison-tool/gene-comparison-tool.component.spec.ts index ace93c52..bc3b7f8f 100644 --- a/src/app/features/genes/components/gene-comparison-tool/gene-comparison-tool.component.spec.ts +++ b/src/app/features/genes/components/gene-comparison-tool/gene-comparison-tool.component.spec.ts @@ -27,6 +27,7 @@ import { ApiService, HelperService } from '../../../../core/services'; import { GeneService } from '../../../../features/genes/services'; import { routes } from '../../../../app.routing'; import { comparisonGeneEmptyHGNCMock, comparisonGeneMock1, comparisonGeneMock2 } from '../../../../testing'; +import { GCTGeneTissue } from '../../../../models'; const DEFAULT_SIGNIFICANCE_THRESHOLD = 0.05; @@ -518,5 +519,32 @@ describe('Component: GeneComparisonToolComponent', () => { const expected2 = 'ENSG00000147065'; expect(label2).toBe(expected2); }); + + it('should set circle size to zero for undefined pValues', () => { + let tissue: GCTGeneTissue | undefined; + // undefined values should result in a circle size of zero + expect(tissue).toBeUndefined(); + const result = component.getCircleSize(tissue?.adj_p_val); + expect(result).toBe(0); + }); + + it('should set circle size to zero for null pValues', () => { + // null values should result in a circle size of zero pixels + const pValue = null; + const result = component.getCircleSize(pValue); + expect(result).toBe(0); + }); + + it('should set circle size for pValues within acceptable ranges', () => { + let expectedSizeInPixels = 0; + let pValue = 0.5; + let result = component.getCircleSize(pValue); + expect(result).toBe(expectedSizeInPixels); + + expectedSizeInPixels = 33; + pValue = 0.04; + result = component.getCircleSize(pValue); + expect(result).toBe(expectedSizeInPixels); + }); }); }); diff --git a/src/app/features/genes/components/gene-comparison-tool/gene-comparison-tool.component.ts b/src/app/features/genes/components/gene-comparison-tool/gene-comparison-tool.component.ts index 47e3fd2f..00856bcd 100644 --- a/src/app/features/genes/components/gene-comparison-tool/gene-comparison-tool.component.ts +++ b/src/app/features/genes/components/gene-comparison-tool/gene-comparison-tool.component.ts @@ -901,13 +901,14 @@ export class GeneComparisonToolComponent implements OnInit, AVI, OnDestroy { } } - getCircleSize(pval: number | undefined) { + getCircleSize(pval: number | null | undefined) { // define min and max size of possible circles in pixels const MIN_SIZE = 6; const MAX_SIZE = 50; - // shouldn't be undefined but if it is, don't show a circle - if (pval === undefined) + // pval shouldn't be undefined but if it is, don't show a circle + // null means there is no data in which case, also don't show a circle + if (pval === null || pval === undefined) return 0; // if significance cutoff radio button selected and