Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
microsoft
GitHub Repository: microsoft/vscode
Path: blob/main/extensions/copilot/test/simulation/diagnosticProviders/index.ts
13395 views
1
/*---------------------------------------------------------------------------------------------
2
* Copyright (c) Microsoft Corporation. All rights reserved.
3
* Licensed under the MIT License. See License.txt in the project root for license information.
4
*--------------------------------------------------------------------------------------------*/
5
6
import { ITestingServicesAccessor } from '../../../src/platform/test/node/services';
7
import { DiagnosticProviderId } from '../types';
8
import { CppDiagnosticsProvider } from './cpp';
9
import { IFile, ITestDiagnostic } from './diagnosticsProvider';
10
import { EslintDiagnosticsProvider } from './eslint';
11
import { PylintDiagnosticsProvider, PyrightDiagnosticsProvider } from './python';
12
import { RoslynDiagnosticsProvider } from './roslyn';
13
import { RuffDiagnosticsProvider } from './ruff';
14
import { TSServerDiagnosticsProvider } from './tsc';
15
16
export class KnownDiagnosticProviders {
17
public static readonly tsc = new TSServerDiagnosticsProvider();
18
public static readonly tscIgnoreImportErrors = new TSServerDiagnosticsProvider({ ignoreImportErrors: true });
19
public static readonly eslint = new EslintDiagnosticsProvider();
20
public static readonly pyright = new PyrightDiagnosticsProvider();
21
public static readonly pylint = new PylintDiagnosticsProvider();
22
public static readonly roslyn = new RoslynDiagnosticsProvider();
23
public static readonly cpp = new CppDiagnosticsProvider();
24
public static readonly ruff = new RuffDiagnosticsProvider();
25
}
26
27
export function getDiagnostics(accessor: ITestingServicesAccessor, files: IFile[], providerId: DiagnosticProviderId): Promise<ITestDiagnostic[]> {
28
const provider = KnownDiagnosticProviders[providerId];
29
return provider.getDiagnostics(accessor, files);
30
}
31
32