Refactor: Move sleep function to shared module and import it (#1700)

This commit is contained in:
Shati Patel
2022-11-02 12:01:14 +00:00
committed by GitHub
parent 30dd163265
commit 4064da640b
4 changed files with 9 additions and 14 deletions

View File

@@ -87,3 +87,7 @@ function createFormatter(unit: string) {
unitDisplay: 'long'
});
}
export async function sleep(ms: number) {
return new Promise(resolve => setTimeout(resolve, ms));
}

View File

@@ -1,6 +1,7 @@
import * as vscode from 'vscode';
import { Credentials } from '../authentication';
import { Logger } from '../logging';
import { sleep } from '../pure/time';
import { getWorkflowStatus, isArtifactAvailable, RESULT_INDEX_ARTIFACT_NAME } from './gh-api/gh-actions-api-client';
import { RemoteQuery } from './remote-query';
import { RemoteQueryWorkflowResult } from './remote-query-workflow-result';
@@ -30,7 +31,7 @@ export class RemoteQueriesMonitor {
let attemptCount = 0;
while (attemptCount <= RemoteQueriesMonitor.maxAttemptCount) {
await this.sleep(RemoteQueriesMonitor.sleepTime);
await sleep(RemoteQueriesMonitor.sleepTime);
if (cancellationToken && cancellationToken.isCancellationRequested) {
return { status: 'Cancelled' };
@@ -70,10 +71,6 @@ export class RemoteQueriesMonitor {
void this.logger.log('Variant analysis monitoring timed out after 2 days');
return { status: 'Cancelled' };
}
private async sleep(ms: number) {
return new Promise(resolve => setTimeout(resolve, ms));
}
}

View File

@@ -10,6 +10,7 @@ import {
import { VariantAnalysisMonitorResult } from './shared/variant-analysis-monitor-result';
import { processUpdatedVariantAnalysis } from './variant-analysis-processor';
import { DisposableObject } from '../pure/disposable-object';
import { sleep } from '../pure/time';
export class VariantAnalysisMonitor extends DisposableObject {
// With a sleep of 5 seconds, the maximum number of attempts takes
@@ -40,7 +41,7 @@ export class VariantAnalysisMonitor extends DisposableObject {
const scannedReposDownloaded: number[] = [];
while (attemptCount <= VariantAnalysisMonitor.maxAttemptCount) {
await this.sleep(VariantAnalysisMonitor.sleepTime);
await sleep(VariantAnalysisMonitor.sleepTime);
if (cancellationToken && cancellationToken.isCancellationRequested) {
return { status: 'Canceled' };
@@ -108,8 +109,4 @@ export class VariantAnalysisMonitor extends DisposableObject {
return downloadedRepos;
}
private async sleep(ms: number) {
return new Promise(resolve => setTimeout(resolve, ms));
}
}

View File

@@ -13,6 +13,7 @@ import { slurpQueryHistory, splatQueryHistory } from '../../query-serialization'
import { formatLegacyMessage, QueryInProgress } from '../../legacy-query-server/run-queries';
import { EvaluationResult, QueryResultType } from '../../pure/legacy-messages';
import Sinon = require('sinon');
import { sleep } from '../../pure/time';
describe('query-results', () => {
let disposeSpy: sinon.SinonSpy;
@@ -455,10 +456,6 @@ describe('query-results', () => {
}
}
async function sleep(ms: number) {
return new Promise(resolve => setTimeout(resolve, ms));
}
function createMockQueryWithResults(
queryPath: string,
didRunSuccessfully = true,