Update messages for variant analysis warnings

This uses the correct title and message for all warnings currently
supported.
This commit is contained in:
Koen Vlaswinkel
2022-11-09 10:16:10 +01:00
parent 96d99a71a7
commit bac39630d6
2 changed files with 22 additions and 18 deletions

View File

@@ -48,6 +48,7 @@ export const VariantAnalysisOutcomePanels = ({
}: VariantAnalysisOutcomePanelProps) => {
const [filterSortState, setFilterSortState] = useState<RepositoriesFilterSortState>(defaultFilterSortState);
const scannedReposCount = variantAnalysis.scannedRepos?.length ?? 0;
const noCodeqlDbRepos = variantAnalysis.skippedRepos?.noCodeqlDbRepos;
const notFoundRepos = variantAnalysis.skippedRepos?.notFoundRepos;
const overLimitRepositoryCount = variantAnalysis.skippedRepos?.overLimitRepos?.repositoryCount ?? 0;
@@ -58,22 +59,22 @@ export const VariantAnalysisOutcomePanels = ({
{variantAnalysis.status === VariantAnalysisStatus.Canceled && (
<Alert
type="warning"
title="Query manually stopped"
message="This query was manually stopped before the analysis completed. Results may be partial."
title="Variant analysis canceled"
message="Variant analysis canceled before all queries were complete. Some repositories were not analyzed."
/>
)}
{overLimitRepositoryCount > 0 && (
<Alert
type="warning"
title="Repository limit exceeded"
message={`The number of requested repositories exceeds the maximum number of repositories supported by multi-repository variant analysis. ${overLimitRepositoryCount} ${overLimitRepositoryCount === 1 ? 'repository was' : 'repositories were'} skipped.`}
title="Repository list too large"
message={`Repository list contains more than ${formatDecimal(scannedReposCount)} entries. Only the first ${formatDecimal(scannedReposCount)} repositories were processed.`}
/>
)}
{accessMismatchRepositoryCount > 0 && (
<Alert
type="warning"
title="Access mismatch"
message={`${accessMismatchRepositoryCount} ${accessMismatchRepositoryCount === 1 ? 'repository is' : 'repositories are'} private, while the controller repository is public. ${accessMismatchRepositoryCount === 1 ? 'This repository was' : 'These repositories were'} skipped.`}
title="Problem with controller repository"
message={`Publicly visible controller repository can't be used to analyze private repositories. ${formatDecimal(accessMismatchRepositoryCount)} ${accessMismatchRepositoryCount === 1 ? 'private repository was' : 'private repositories were'} not analyzed.`}
/>
)}
</WarningsContainer>
@@ -126,8 +127,8 @@ export const VariantAnalysisOutcomePanels = ({
{notFoundRepos?.repositoryCount &&
<VSCodePanelView>
<VariantAnalysisSkippedRepositoriesTab
alertTitle='No access'
alertMessage='The following repositories could not be scanned because you do not have read access.'
alertTitle="No access"
alertMessage="The following repositories can't be analyzed because they dont exist or you dont have access."
skippedRepositoryGroup={notFoundRepos}
filterSortState={filterSortState}
/>
@@ -135,8 +136,8 @@ export const VariantAnalysisOutcomePanels = ({
{noCodeqlDbRepos?.repositoryCount &&
<VSCodePanelView>
<VariantAnalysisSkippedRepositoriesTab
alertTitle='No database'
alertMessage='The following repositories could not be scanned because they do not have an available CodeQL database.'
alertTitle="No CodeQL database"
alertMessage="The following repositories can't be analyzed because they don't currently have a CodeQL database available for the selected language."
skippedRepositoryGroup={noCodeqlDbRepos}
filterSortState={filterSortState}
/>

View File

@@ -8,7 +8,10 @@ import {
import { VariantAnalysisOutcomePanelProps, VariantAnalysisOutcomePanels } from '../VariantAnalysisOutcomePanels';
import { createMockVariantAnalysis } from '../../../vscode-tests/factories/remote-queries/shared/variant-analysis';
import { createMockRepositoryWithMetadata } from '../../../vscode-tests/factories/remote-queries/shared/repository';
import { createMockScannedRepo } from '../../../vscode-tests/factories/remote-queries/shared/scanned-repositories';
import {
createMockScannedRepo,
createMockScannedRepos
} from '../../../vscode-tests/factories/remote-queries/shared/scanned-repositories';
describe(VariantAnalysisOutcomePanels.name, () => {
const defaultVariantAnalysis = {
@@ -141,7 +144,7 @@ describe(VariantAnalysisOutcomePanels.name, () => {
status: VariantAnalysisStatus.Canceled,
});
expect(screen.getByText('Warning: Query manually stopped')).toBeInTheDocument();
expect(screen.getByText('Warning: Variant analysis canceled')).toBeInTheDocument();
});
it('renders warning with access mismatch repos', () => {
@@ -152,7 +155,7 @@ describe(VariantAnalysisOutcomePanels.name, () => {
},
});
expect(screen.getByText('Warning: Access mismatch')).toBeInTheDocument();
expect(screen.getByText('Warning: Problem with controller repository')).toBeInTheDocument();
});
it('renders warning with over limit repos', () => {
@@ -162,7 +165,7 @@ describe(VariantAnalysisOutcomePanels.name, () => {
},
});
expect(screen.getByText('Warning: Repository limit exceeded')).toBeInTheDocument();
expect(screen.getByText('Warning: Repository list too large')).toBeInTheDocument();
});
it('renders singulars in warnings', () => {
@@ -179,12 +182,12 @@ describe(VariantAnalysisOutcomePanels.name, () => {
},
});
expect(screen.getByText('The number of requested repositories exceeds the maximum number of repositories supported by multi-repository variant analysis. 1 repository was skipped.')).toBeInTheDocument();
expect(screen.getByText('1 repository is private, while the controller repository is public. This repository was skipped.')).toBeInTheDocument();
expect(screen.getByText('Publicly visible controller repository can\'t be used to analyze private repositories. 1 private repository was not analyzed.')).toBeInTheDocument();
});
it('renders plurals in warnings', () => {
render({
scannedRepos: createMockScannedRepos(),
skippedRepos: {
overLimitRepos: {
repositoryCount: 2,
@@ -197,7 +200,7 @@ describe(VariantAnalysisOutcomePanels.name, () => {
},
});
expect(screen.getByText('The number of requested repositories exceeds the maximum number of repositories supported by multi-repository variant analysis. 2 repositories were skipped.')).toBeInTheDocument();
expect(screen.getByText('2 repositories are private, while the controller repository is public. These repositories were skipped.')).toBeInTheDocument();
expect(screen.getByText('Repository list contains more than 3 entries. Only the first 3 repositories were processed.')).toBeInTheDocument();
expect(screen.getByText('Publicly visible controller repository can\'t be used to analyze private repositories. 2 private repositories were not analyzed.')).toBeInTheDocument();
});
});