@@ -139,13 +183,20 @@ export const RepoRow = ({
{!status &&
}
{downloadStatus === VariantAnalysisScannedRepositoryDownloadStatus.InProgress &&
}
+ {downloadStatus === VariantAnalysisScannedRepositoryDownloadStatus.Failed &&
}
- {isExpanded && expandableContentLoaded &&
-
}
+ {isExpanded && expandableContentLoaded && (
+
+ )}
);
};
diff --git a/extensions/ql-vscode/src/view/variant-analysis/__tests__/AnalyzedRepoItemContent.spec.tsx b/extensions/ql-vscode/src/view/variant-analysis/__tests__/AnalyzedRepoItemContent.spec.tsx
index f007b9a9116..335dd4401a6 100644
--- a/extensions/ql-vscode/src/view/variant-analysis/__tests__/AnalyzedRepoItemContent.spec.tsx
+++ b/extensions/ql-vscode/src/view/variant-analysis/__tests__/AnalyzedRepoItemContent.spec.tsx
@@ -1,6 +1,9 @@
import * as React from 'react';
import { render as reactRender, screen } from '@testing-library/react';
-import { VariantAnalysisRepoStatus } from '../../../remote-queries/shared/variant-analysis';
+import {
+ VariantAnalysisRepoStatus,
+ VariantAnalysisScannedRepositoryDownloadStatus
+} from '../../../remote-queries/shared/variant-analysis';
import { AnalyzedRepoItemContent, AnalyzedRepoItemContentProps } from '../AnalyzedRepoItemContent';
describe(AnalyzedRepoItemContent.name, () => {
@@ -112,4 +115,13 @@ describe(AnalyzedRepoItemContent.name, () => {
expect(screen.getByText('Error: Canceled')).toBeInTheDocument();
});
+
+ it('renders the failed download state', () => {
+ render({
+ status: VariantAnalysisRepoStatus.Succeeded,
+ downloadStatus: VariantAnalysisScannedRepositoryDownloadStatus.Failed,
+ });
+
+ expect(screen.getByText('Error: Download failed')).toBeInTheDocument();
+ });
});
diff --git a/extensions/ql-vscode/src/view/variant-analysis/__tests__/RepoRow.spec.tsx b/extensions/ql-vscode/src/view/variant-analysis/__tests__/RepoRow.spec.tsx
index f4fb017c65d..5cdf1c0918d 100644
--- a/extensions/ql-vscode/src/view/variant-analysis/__tests__/RepoRow.spec.tsx
+++ b/extensions/ql-vscode/src/view/variant-analysis/__tests__/RepoRow.spec.tsx
@@ -104,6 +104,21 @@ describe(RepoRow.name, () => {
})).toBeEnabled();
});
+ it('renders the succeeded state with failed download status', () => {
+ render({
+ status: VariantAnalysisRepoStatus.Succeeded,
+ resultCount: 178,
+ downloadStatus: VariantAnalysisScannedRepositoryDownloadStatus.Failed,
+ });
+
+ expect(screen.getByRole