Add tests of a pending and failed variant analysis
This commit is contained in:
@@ -17,7 +17,7 @@ import {
|
|||||||
RepositoriesFilterSortState,
|
RepositoriesFilterSortState,
|
||||||
} from "../../pure/variant-analysis-filter-sort";
|
} from "../../pure/variant-analysis-filter-sort";
|
||||||
|
|
||||||
type Props = {
|
export type VariantAnalysisProps = {
|
||||||
variantAnalysis?: VariantAnalysisDomainModel;
|
variantAnalysis?: VariantAnalysisDomainModel;
|
||||||
repoStates?: VariantAnalysisScannedRepositoryState[];
|
repoStates?: VariantAnalysisScannedRepositoryState[];
|
||||||
repoResults?: VariantAnalysisScannedRepositoryResult[];
|
repoResults?: VariantAnalysisScannedRepositoryResult[];
|
||||||
@@ -51,7 +51,7 @@ export function VariantAnalysis({
|
|||||||
variantAnalysis: initialVariantAnalysis,
|
variantAnalysis: initialVariantAnalysis,
|
||||||
repoStates: initialRepoStates = [],
|
repoStates: initialRepoStates = [],
|
||||||
repoResults: initialRepoResults = [],
|
repoResults: initialRepoResults = [],
|
||||||
}: Props): JSX.Element {
|
}: VariantAnalysisProps): JSX.Element {
|
||||||
const [variantAnalysis, setVariantAnalysis] = useState<
|
const [variantAnalysis, setVariantAnalysis] = useState<
|
||||||
VariantAnalysisDomainModel | undefined
|
VariantAnalysisDomainModel | undefined
|
||||||
>(initialVariantAnalysis);
|
>(initialVariantAnalysis);
|
||||||
|
|||||||
@@ -0,0 +1,49 @@
|
|||||||
|
import * as React from "react";
|
||||||
|
import { render as reactRender, screen } from "@testing-library/react";
|
||||||
|
import {
|
||||||
|
VariantAnalysisFailureReason,
|
||||||
|
VariantAnalysisStatus,
|
||||||
|
} from "../../../remote-queries/shared/variant-analysis";
|
||||||
|
import { VariantAnalysis, VariantAnalysisProps } from "../VariantAnalysis";
|
||||||
|
import { createMockVariantAnalysis } from "../../../vscode-tests/factories/remote-queries/shared/variant-analysis";
|
||||||
|
|
||||||
|
describe(VariantAnalysis.name, () => {
|
||||||
|
const render = (props: Partial<VariantAnalysisProps> = {}) =>
|
||||||
|
reactRender(
|
||||||
|
<VariantAnalysis
|
||||||
|
variantAnalysis={createMockVariantAnalysis({})}
|
||||||
|
{...props}
|
||||||
|
/>,
|
||||||
|
);
|
||||||
|
|
||||||
|
it("renders a pending analysis", () => {
|
||||||
|
const variantAnalysis = createMockVariantAnalysis({
|
||||||
|
status: VariantAnalysisStatus.InProgress,
|
||||||
|
});
|
||||||
|
variantAnalysis.actionsWorkflowRunId = undefined;
|
||||||
|
render({ variantAnalysis });
|
||||||
|
|
||||||
|
expect(
|
||||||
|
screen.getByText("We are getting everything ready"),
|
||||||
|
).toBeInTheDocument();
|
||||||
|
});
|
||||||
|
|
||||||
|
it("renders an analysis where there were no repos to analyse", () => {
|
||||||
|
const variantAnalysis = createMockVariantAnalysis({
|
||||||
|
status: VariantAnalysisStatus.Failed,
|
||||||
|
});
|
||||||
|
variantAnalysis.failureReason = VariantAnalysisFailureReason.NoReposQueried;
|
||||||
|
variantAnalysis.actionsWorkflowRunId = undefined;
|
||||||
|
render({ variantAnalysis });
|
||||||
|
|
||||||
|
expect(
|
||||||
|
screen.queryByText("We are getting everything ready"),
|
||||||
|
).not.toBeInTheDocument();
|
||||||
|
|
||||||
|
expect(
|
||||||
|
screen.getByText(
|
||||||
|
"No repositories available after processing. No repositories were analyzed.",
|
||||||
|
),
|
||||||
|
).toBeInTheDocument();
|
||||||
|
});
|
||||||
|
});
|
||||||
Reference in New Issue
Block a user