Skip to content

Commit 5f2a8fa

Browse files
Convert the codeQL.autoDownloadVariantAnalysisResult command
1 parent b55910d commit 5f2a8fa

File tree

5 files changed

+11
-68
lines changed

5 files changed

+11
-68
lines changed

extensions/ql-vscode/src/common/commands.ts

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,10 @@ import type { Uri } from "vscode";
33
import type { DbTreeViewItem } from "../databases/ui/db-tree-view-item";
44
import type { QueryHistoryInfo } from "../query-history/query-history-info";
55
import { RepositoriesFilterSortStateWithIds } from "../pure/variant-analysis-filter-sort";
6-
import { VariantAnalysis } from "../variant-analysis/shared/variant-analysis";
6+
import {
7+
VariantAnalysis,
8+
VariantAnalysisScannedRepository,
9+
} from "../variant-analysis/shared/variant-analysis";
710

811
// A command function matching the signature that VS Code calls when
912
// a command on a selection is invoked.
@@ -64,6 +67,10 @@ export type QueryHistoryCommands = {
6467

6568
// Commands tied to variant analysis
6669
export type VariantAnalysisCommands = {
70+
"codeQL.autoDownloadVariantAnalysisResult": (
71+
scannedRepo: VariantAnalysisScannedRepository,
72+
variantAnalysisSummary: VariantAnalysis,
73+
) => Promise<void>;
6774
"codeQL.copyVariantAnalysisRepoList": (
6875
variantAnalysisId: number,
6976
filterSort?: RepositoriesFilterSortStateWithIds,

extensions/ql-vscode/src/extension.ts

Lines changed: 0 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -120,10 +120,6 @@ import { NewQueryRunner } from "./query-server/query-runner";
120120
import { QueryRunner } from "./queryRunner";
121121
import { VariantAnalysisView } from "./variant-analysis/variant-analysis-view";
122122
import { VariantAnalysisViewSerializer } from "./variant-analysis/variant-analysis-view-serializer";
123-
import {
124-
VariantAnalysis,
125-
VariantAnalysisScannedRepository,
126-
} from "./variant-analysis/shared/variant-analysis";
127123
import { VariantAnalysisManager } from "./variant-analysis/variant-analysis-manager";
128124
import { createVariantAnalysisContentProvider } from "./variant-analysis/variant-analysis-content-provider";
129125
import { VSCodeMockGitHubApiServer } from "./mocks/vscode-mock-gh-api-server";
@@ -1100,23 +1096,6 @@ async function activateWithInstalledDistribution(
11001096
app.commands.register(commandName as keyof AllCommands, command);
11011097
}
11021098

1103-
ctx.subscriptions.push(
1104-
commandRunner(
1105-
"codeQL.autoDownloadVariantAnalysisResult",
1106-
async (
1107-
scannedRepo: VariantAnalysisScannedRepository,
1108-
variantAnalysisSummary: VariantAnalysis,
1109-
token: CancellationToken,
1110-
) => {
1111-
await variantAnalysisManager.enqueueDownload(
1112-
scannedRepo,
1113-
variantAnalysisSummary,
1114-
token,
1115-
);
1116-
},
1117-
),
1118-
);
1119-
11201099
ctx.subscriptions.push(
11211100
commandRunner("codeQL.exportSelectedVariantAnalysisResults", async () => {
11221101
await exportSelectedVariantAnalysisResults(variantAnalysisManager, qhm);

extensions/ql-vscode/src/variant-analysis/variant-analysis-manager.ts

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,8 @@ export class VariantAnalysisManager
131131

132132
getCommands(): VariantAnalysisCommands {
133133
return {
134+
"codeQL.autoDownloadVariantAnalysisResult":
135+
this.enqueueDownload.bind(this),
134136
"codeQL.copyVariantAnalysisRepoList":
135137
this.copyRepoListToClipboard.bind(this),
136138
"codeQL.monitorVariantAnalysis": this.monitorVariantAnalysis.bind(this),
@@ -507,7 +509,6 @@ export class VariantAnalysisManager
507509
public async autoDownloadVariantAnalysisResult(
508510
scannedRepo: VariantAnalysisScannedRepository,
509511
variantAnalysis: VariantAnalysis,
510-
cancellationToken: CancellationToken,
511512
): Promise<void> {
512513
if (
513514
this.repoStates.get(variantAnalysis.id)?.[scannedRepo.repository.id]
@@ -524,13 +525,6 @@ export class VariantAnalysisManager
524525

525526
await this.onRepoStateUpdated(variantAnalysis.id, repoState);
526527

527-
if (cancellationToken && cancellationToken.isCancellationRequested) {
528-
repoState.downloadStatus =
529-
VariantAnalysisScannedRepositoryDownloadStatus.Failed;
530-
await this.onRepoStateUpdated(variantAnalysis.id, repoState);
531-
return;
532-
}
533-
534528
let repoTask: VariantAnalysisRepositoryTask;
535529
try {
536530
const repoTaskResponse = await getVariantAnalysisRepo(
@@ -605,14 +599,9 @@ export class VariantAnalysisManager
605599
public async enqueueDownload(
606600
scannedRepo: VariantAnalysisScannedRepository,
607601
variantAnalysis: VariantAnalysis,
608-
token: CancellationToken,
609602
): Promise<void> {
610603
await this.queue.add(() =>
611-
this.autoDownloadVariantAnalysisResult(
612-
scannedRepo,
613-
variantAnalysis,
614-
token,
615-
),
604+
this.autoDownloadVariantAnalysisResult(scannedRepo, variantAnalysis),
616605
);
617606
}
618607

extensions/ql-vscode/test/vscode-tests/activated-extension/variant-analysis/variant-analysis-manager.test.ts

Lines changed: 0 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import {
2-
CancellationTokenSource,
32
commands,
43
env,
54
extensions,
@@ -54,7 +53,6 @@ jest.setTimeout(3 * 60 * 1000);
5453

5554
describe("Variant Analysis Manager", () => {
5655
let app: App;
57-
let cancellationTokenSource: CancellationTokenSource;
5856
let variantAnalysisManager: VariantAnalysisManager;
5957
let variantAnalysisResultsManager: VariantAnalysisResultsManager;
6058
let variantAnalysis: VariantAnalysis;
@@ -63,8 +61,6 @@ describe("Variant Analysis Manager", () => {
6361
beforeEach(async () => {
6462
jest.spyOn(extLogger, "log").mockResolvedValue(undefined);
6563

66-
cancellationTokenSource = new CancellationTokenSource();
67-
6864
scannedRepos = createMockScannedRepos();
6965
variantAnalysis = createMockVariantAnalysis({
7066
status: VariantAnalysisStatus.InProgress,
@@ -203,7 +199,6 @@ describe("Variant Analysis Manager", () => {
203199
await variantAnalysisManager.autoDownloadVariantAnalysisResult(
204200
scannedRepos[0],
205201
variantAnalysis,
206-
cancellationTokenSource.token,
207202
);
208203

209204
expect(getVariantAnalysisRepoResultStub).not.toHaveBeenCalled();
@@ -228,23 +223,10 @@ describe("Variant Analysis Manager", () => {
228223
getVariantAnalysisRepoResultStub.mockResolvedValue(response);
229224
});
230225

231-
it("should return early if variant analysis is cancelled", async () => {
232-
cancellationTokenSource.cancel();
233-
234-
await variantAnalysisManager.autoDownloadVariantAnalysisResult(
235-
scannedRepos[0],
236-
variantAnalysis,
237-
cancellationTokenSource.token,
238-
);
239-
240-
expect(getVariantAnalysisRepoStub).not.toHaveBeenCalled();
241-
});
242-
243226
it("should fetch a repo task", async () => {
244227
await variantAnalysisManager.autoDownloadVariantAnalysisResult(
245228
scannedRepos[0],
246229
variantAnalysis,
247-
cancellationTokenSource.token,
248230
);
249231

250232
expect(getVariantAnalysisRepoStub).toHaveBeenCalled();
@@ -254,7 +236,6 @@ describe("Variant Analysis Manager", () => {
254236
await variantAnalysisManager.autoDownloadVariantAnalysisResult(
255237
scannedRepos[0],
256238
variantAnalysis,
257-
cancellationTokenSource.token,
258239
);
259240

260241
expect(getVariantAnalysisRepoResultStub).toHaveBeenCalled();
@@ -265,15 +246,13 @@ describe("Variant Analysis Manager", () => {
265246
await variantAnalysisManager.autoDownloadVariantAnalysisResult(
266247
scannedRepos[0],
267248
variantAnalysis,
268-
cancellationTokenSource.token,
269249
);
270250

271251
getVariantAnalysisRepoStub.mockClear();
272252

273253
await variantAnalysisManager.autoDownloadVariantAnalysisResult(
274254
scannedRepos[0],
275255
variantAnalysis,
276-
cancellationTokenSource.token,
277256
);
278257

279258
expect(getVariantAnalysisRepoStub).not.toHaveBeenCalled();
@@ -283,7 +262,6 @@ describe("Variant Analysis Manager", () => {
283262
await variantAnalysisManager.autoDownloadVariantAnalysisResult(
284263
scannedRepos[0],
285264
variantAnalysis,
286-
cancellationTokenSource.token,
287265
);
288266

289267
await expect(fs.readJson(repoStatesPath)).resolves.toEqual({
@@ -304,7 +282,6 @@ describe("Variant Analysis Manager", () => {
304282
variantAnalysisManager.autoDownloadVariantAnalysisResult(
305283
scannedRepos[0],
306284
variantAnalysis,
307-
cancellationTokenSource.token,
308285
),
309286
).rejects.toThrow();
310287

@@ -320,7 +297,6 @@ describe("Variant Analysis Manager", () => {
320297
variantAnalysisManager.autoDownloadVariantAnalysisResult(
321298
scannedRepos[0],
322299
variantAnalysis,
323-
cancellationTokenSource.token,
324300
),
325301
).rejects.toThrow();
326302

@@ -329,7 +305,6 @@ describe("Variant Analysis Manager", () => {
329305
await variantAnalysisManager.autoDownloadVariantAnalysisResult(
330306
scannedRepos[1],
331307
variantAnalysis,
332-
cancellationTokenSource.token,
333308
);
334309

335310
await expect(fs.readJson(repoStatesPath)).resolves.toEqual({
@@ -355,7 +330,6 @@ describe("Variant Analysis Manager", () => {
355330
variantAnalysisManager.autoDownloadVariantAnalysisResult(
356331
scannedRepos[0],
357332
variantAnalysis,
358-
cancellationTokenSource.token,
359333
),
360334
).rejects.toThrow();
361335

@@ -364,7 +338,6 @@ describe("Variant Analysis Manager", () => {
364338
await variantAnalysisManager.autoDownloadVariantAnalysisResult(
365339
scannedRepos[1],
366340
variantAnalysis,
367-
cancellationTokenSource.token,
368341
);
369342

370343
await expect(fs.readJson(repoStatesPath)).resolves.toEqual({
@@ -400,7 +373,6 @@ describe("Variant Analysis Manager", () => {
400373
await variantAnalysisManager.autoDownloadVariantAnalysisResult(
401374
scannedRepos[0],
402375
variantAnalysis,
403-
cancellationTokenSource.token,
404376
);
405377

406378
await expect(fs.readJson(repoStatesPath)).resolves.toEqual({
@@ -439,17 +411,14 @@ describe("Variant Analysis Manager", () => {
439411
await variantAnalysisManager.enqueueDownload(
440412
scannedRepos[0],
441413
variantAnalysis,
442-
cancellationTokenSource.token,
443414
);
444415
await variantAnalysisManager.enqueueDownload(
445416
scannedRepos[1],
446417
variantAnalysis,
447-
cancellationTokenSource.token,
448418
);
449419
await variantAnalysisManager.enqueueDownload(
450420
scannedRepos[2],
451421
variantAnalysis,
452-
cancellationTokenSource.token,
453422
);
454423

455424
expect(variantAnalysisManager.downloadsQueueSize()).toBe(0);

extensions/ql-vscode/test/vscode-tests/activated-extension/variant-analysis/variant-analysis-monitor.test.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -167,7 +167,6 @@ describe("Variant Analysis Monitor", () => {
167167
index + 1,
168168
processScannedRepository(succeededRepo),
169169
processUpdatedVariantAnalysis(variantAnalysis, mockApiResponse),
170-
undefined,
171170
);
172171
});
173172
});

0 commit comments

Comments
 (0)