From 990ef4144e797cdb14538fc90d5c3394aad22ef4 Mon Sep 17 00:00:00 2001 From: Thomas Heartman Date: Wed, 20 Mar 2024 14:44:03 +0100 Subject: [PATCH] fix: render values that are N/A (#6633) This change makes the tooltip still render values and headers that are `N/A` (instead of not rendering them at all). This makes the tooltip more consistent and predictable. At least to me, it was confusing that some of the values were just hidden sometimes. I've also added a test to make sure that the tooltip renders the N/A values. This is what it looks like now: ![image](https://github.com/Unleash/unleash/assets/17786332/46cb9250-6ce2-4567-a02d-b186f86c1de5) --- .../MetricsChartTooltip-InfoSummary.test.tsx | 18 ++++++++++ .../MetricsChartTooltip.tsx | 34 +++++++++---------- 2 files changed, 34 insertions(+), 18 deletions(-) create mode 100644 frontend/src/component/executiveDashboard/componentsChart/MetricsSummaryChart/MetricsChartTooltip/MetricsChartTooltip-InfoSummary.test.tsx diff --git a/frontend/src/component/executiveDashboard/componentsChart/MetricsSummaryChart/MetricsChartTooltip/MetricsChartTooltip-InfoSummary.test.tsx b/frontend/src/component/executiveDashboard/componentsChart/MetricsSummaryChart/MetricsChartTooltip/MetricsChartTooltip-InfoSummary.test.tsx new file mode 100644 index 0000000000..dc60887b68 --- /dev/null +++ b/frontend/src/component/executiveDashboard/componentsChart/MetricsSummaryChart/MetricsChartTooltip/MetricsChartTooltip-InfoSummary.test.tsx @@ -0,0 +1,18 @@ +import { render, screen } from '@testing-library/react'; +import { InfoSummary } from './MetricsChartTooltip'; + +test('Renders apps, flags, and environments, even when their data is `N/A`', () => { + render( + , + ); + + screen.getByText('Environments'); + screen.getByText('Apps'); + screen.getByText('Flags'); +}); diff --git a/frontend/src/component/executiveDashboard/componentsChart/MetricsSummaryChart/MetricsChartTooltip/MetricsChartTooltip.tsx b/frontend/src/component/executiveDashboard/componentsChart/MetricsSummaryChart/MetricsChartTooltip/MetricsChartTooltip.tsx index 4d0ace90cb..73c223dc81 100644 --- a/frontend/src/component/executiveDashboard/componentsChart/MetricsSummaryChart/MetricsChartTooltip/MetricsChartTooltip.tsx +++ b/frontend/src/component/executiveDashboard/componentsChart/MetricsSummaryChart/MetricsChartTooltip/MetricsChartTooltip.tsx @@ -35,28 +35,26 @@ const InfoLine = ({ ); -const InfoSummary = ({ +export const InfoSummary = ({ data, }: { data: { key: string; value: string | number }[] }) => ( - {data - .filter(({ value }) => value !== 'N/A') - .map(({ key, value }) => ( -
-
- - {key} - -
-
{value}
+ {data.map(({ key, value }) => ( +
+
+ + {key} +
- ))} +
{value}
+
+ ))} );