Convert the codeQL.monitorVariantAnalysis command

This commit is contained in:
Robert
2023-03-20 15:27:19 +00:00
parent 08849c1df4
commit b55910d2b9
5 changed files with 6 additions and 44 deletions

View File

@@ -68,6 +68,9 @@ export type VariantAnalysisCommands = {
variantAnalysisId: number,
filterSort?: RepositoriesFilterSortStateWithIds,
) => Promise<void>;
"codeQL.monitorVariantAnalysis": (
variantAnalysis: VariantAnalysis,
) => Promise<void>;
"codeQL.openVariantAnalysisLogs": (
variantAnalysisId: number,
) => Promise<void>;

View File

@@ -1100,18 +1100,6 @@ async function activateWithInstalledDistribution(
app.commands.register(commandName as keyof AllCommands, command);
}
ctx.subscriptions.push(
commandRunner(
"codeQL.monitorVariantAnalysis",
async (variantAnalysis: VariantAnalysis, token: CancellationToken) => {
await variantAnalysisManager.monitorVariantAnalysis(
variantAnalysis,
token,
);
},
),
);
ctx.subscriptions.push(
commandRunner(
"codeQL.autoDownloadVariantAnalysisResult",

View File

@@ -133,6 +133,7 @@ export class VariantAnalysisManager
return {
"codeQL.copyVariantAnalysisRepoList":
this.copyRepoListToClipboard.bind(this),
"codeQL.monitorVariantAnalysis": this.monitorVariantAnalysis.bind(this),
"codeQL.openVariantAnalysisLogs": this.openVariantAnalysisLogs.bind(this),
"codeQL.runVariantAnalysis":
this.runVariantAnalysisFromCommand.bind(this),
@@ -496,12 +497,10 @@ export class VariantAnalysisManager
public async monitorVariantAnalysis(
variantAnalysis: VariantAnalysis,
cancellationToken: CancellationToken,
): Promise<void> {
await this.variantAnalysisMonitor.monitorVariantAnalysis(
variantAnalysis,
this.app.credentials,
cancellationToken,
);
}

View File

@@ -1,4 +1,4 @@
import { CancellationToken, commands, EventEmitter } from "vscode";
import { commands, EventEmitter } from "vscode";
import { getVariantAnalysis } from "./gh-api/gh-api-client";
import {
@@ -37,7 +37,6 @@ export class VariantAnalysisMonitor extends DisposableObject {
public async monitorVariantAnalysis(
variantAnalysis: VariantAnalysis,
credentials: Credentials,
cancellationToken: CancellationToken,
): Promise<void> {
let attemptCount = 0;
const scannedReposDownloaded: number[] = [];
@@ -45,10 +44,6 @@ export class VariantAnalysisMonitor extends DisposableObject {
while (attemptCount <= VariantAnalysisMonitor.maxAttemptCount) {
await sleep(VariantAnalysisMonitor.sleepTime);
if (cancellationToken && cancellationToken.isCancellationRequested) {
return;
}
if (await this.shouldCancelMonitor(variantAnalysis.id)) {
return;
}

View File

@@ -1,4 +1,4 @@
import { CancellationTokenSource, commands, extensions } from "vscode";
import { commands, extensions } from "vscode";
import { CodeQLExtensionInterface } from "../../../../src/extension";
import * as ghApiClient from "../../../../src/variant-analysis/gh-api/gh-api-client";
@@ -33,7 +33,6 @@ describe("Variant Analysis Monitor", () => {
let mockGetVariantAnalysis: jest.SpiedFunction<
typeof ghApiClient.getVariantAnalysis
>;
let cancellationTokenSource: CancellationTokenSource;
let variantAnalysisMonitor: VariantAnalysisMonitor;
let shouldCancelMonitor: jest.Mock<Promise<boolean>, [number]>;
let variantAnalysis: VariantAnalysis;
@@ -45,8 +44,6 @@ describe("Variant Analysis Monitor", () => {
const onVariantAnalysisChangeSpy = jest.fn();
beforeEach(async () => {
cancellationTokenSource = new CancellationTokenSource();
variantAnalysis = createMockVariantAnalysis({});
shouldCancelMonitor = jest.fn();
@@ -71,25 +68,12 @@ describe("Variant Analysis Monitor", () => {
limitNumberOfAttemptsToMonitor();
});
it("should return early if variant analysis is cancelled", async () => {
cancellationTokenSource.cancel();
await variantAnalysisMonitor.monitorVariantAnalysis(
variantAnalysis,
testCredentialsWithStub(),
cancellationTokenSource.token,
);
expect(onVariantAnalysisChangeSpy).not.toHaveBeenCalled();
});
it("should return early if variant analysis should be cancelled", async () => {
shouldCancelMonitor.mockResolvedValue(true);
await variantAnalysisMonitor.monitorVariantAnalysis(
variantAnalysis,
testCredentialsWithStub(),
cancellationTokenSource.token,
);
expect(onVariantAnalysisChangeSpy).not.toHaveBeenCalled();
@@ -107,7 +91,6 @@ describe("Variant Analysis Monitor", () => {
await variantAnalysisMonitor.monitorVariantAnalysis(
variantAnalysis,
testCredentialsWithStub(),
cancellationTokenSource.token,
);
expect(mockGetVariantAnalysis).toHaveBeenCalledTimes(1);
@@ -157,7 +140,6 @@ describe("Variant Analysis Monitor", () => {
await variantAnalysisMonitor.monitorVariantAnalysis(
variantAnalysis,
testCredentialsWithStub(),
cancellationTokenSource.token,
);
expect(commandSpy).toBeCalledTimes(succeededRepos.length);
@@ -176,7 +158,6 @@ describe("Variant Analysis Monitor", () => {
await variantAnalysisMonitor.monitorVariantAnalysis(
variantAnalysis,
testCredentialsWithStub(),
cancellationTokenSource.token,
);
expect(mockGetDownloadResult).toBeCalledTimes(succeededRepos.length);
@@ -209,7 +190,6 @@ describe("Variant Analysis Monitor", () => {
await variantAnalysisMonitor.monitorVariantAnalysis(
variantAnalysis,
testCredentialsWithStub(),
cancellationTokenSource.token,
);
expect(commandSpy).not.toHaveBeenCalled();
@@ -219,7 +199,6 @@ describe("Variant Analysis Monitor", () => {
await variantAnalysisMonitor.monitorVariantAnalysis(
variantAnalysis,
testCredentialsWithStub(),
cancellationTokenSource.token,
);
expect(mockGetDownloadResult).not.toBeCalled();
@@ -278,7 +257,6 @@ describe("Variant Analysis Monitor", () => {
await variantAnalysisMonitor.monitorVariantAnalysis(
variantAnalysis,
testCredentialsWithStub(),
cancellationTokenSource.token,
);
expect(mockGetVariantAnalysis).toBeCalledTimes(4);
@@ -297,7 +275,6 @@ describe("Variant Analysis Monitor", () => {
await variantAnalysisMonitor.monitorVariantAnalysis(
variantAnalysis,
testCredentialsWithStub(),
cancellationTokenSource.token,
);
expect(mockGetDownloadResult).not.toBeCalled();