Browse Source

SONAR-21455 Highlight software quality breakdown cards even when rating is A

tags/10.4.0.87286
7PH 3 months ago
parent
commit
41063b188e

+ 7
- 11
server/sonar-web/src/main/js/apps/overview/branches/SoftwareImpactMeasureCard.tsx View File

@@ -30,7 +30,7 @@ import {
import * as React from 'react';
import { useIntl } from 'react-intl';
import { DEFAULT_ISSUES_QUERY } from '../../../components/shared/utils';
import { formatMeasure, formatRating } from '../../../helpers/measures';
import { formatMeasure } from '../../../helpers/measures';
import { getComponentIssuesUrl } from '../../../helpers/urls';
import {
SoftwareImpactMeasureData,
@@ -62,22 +62,18 @@ export function SoftwareImpactMeasureCard(props: Readonly<SoftwareImpactBreakdow

// Find rating measure
const ratingMeasure = measures.find((m) => m.metric.key === ratingMetricKey);
const ratingLabel = ratingMeasure?.value ? formatRating(ratingMeasure.value) : undefined;

const totalLinkHref = getComponentIssuesUrl(component.key, {
...DEFAULT_ISSUES_QUERY,
impactSoftwareQualities: softwareQuality,
});

// We highlight the highest severity breakdown card with non-zero count if the rating is not A
let highlightedSeverity: SoftwareImpactSeverity | undefined;
if (measure && (!ratingLabel || ratingLabel !== 'A')) {
highlightedSeverity = [
SoftwareImpactSeverity.High,
SoftwareImpactSeverity.Medium,
SoftwareImpactSeverity.Low,
].find((severity) => measure[severity] > 0);
}
// We highlight the highest severity breakdown card with non-zero count
const highlightedSeverity =
measure &&
[SoftwareImpactSeverity.High, SoftwareImpactSeverity.Medium, SoftwareImpactSeverity.Low].find(
(severity) => measure[severity] > 0,
);

return (
<LightGreyCard

+ 2
- 2
server/sonar-web/src/main/js/apps/overview/branches/__tests__/BranchOverview-it.tsx View File

@@ -281,7 +281,7 @@ describe('project overview', () => {
[SoftwareImpactSeverity.Medium]: 2,
[SoftwareImpactSeverity.Low]: 1,
},
[false, false, false],
[false, true, false],
);
ui.expectSoftwareImpactMeasureCard(
SoftwareQuality.Maintainability,
@@ -327,7 +327,7 @@ describe('project overview', () => {
[SoftwareImpactSeverity.Medium]: 2,
[SoftwareImpactSeverity.Low]: 1,
},
[false, false, false],
[false, true, false],
);

// Maintainability is not computed

Loading…
Cancel
Save