Path: blob/main/extensions/copilot/src/platform/env/common/nullEnvService.ts
13401 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45import type { WindowState } from 'vscode';6import { Event } from '../../../util/vs/base/common/event';7import { URI } from '../../../util/vs/base/common/uri';8import { AbstractEnvService, NameAndVersion, OperatingSystem } from './envService';9import { packageJson } from './packagejson';1011export class NullEnvService extends AbstractEnvService {12declare readonly _serviceBrand: undefined;1314static readonly Instance = new NullEnvService();1516override readonly language: string = 'en';1718override get extensionId(): string {19return 'test-extension-id';20}2122get vscodeVersion(): string {23return 'test-version';24}2526override get isActive(): boolean {27return true;28}2930override get onDidChangeWindowState(): Event<WindowState> {31return Event.None;32}3334override get sessionId(): string {35return 'test-session';36}3738override get machineId(): string {39return 'test-machine';40}4142override get devDeviceId(): string {43return 'test-dev-device';44}4546override get remoteName(): string | undefined {47return undefined;48}4950override get uiKind(): 'desktop' | 'web' {51return 'desktop';52}5354override get uriScheme(): string {55return 'code-null';56}5758override get appRoot(): string {59return '';60}6162override get shell(): string {63return 'zsh';64}6566override get OS(): OperatingSystem {67return OperatingSystem.Linux;68}6970override getEditorInfo(): NameAndVersion {71return new NameAndVersion('simulation-tests-editor', packageJson.engines.vscode.match(/\d+\.\d+/)?.[0] ?? '1.89');72}7374override getEditorPluginInfo(): NameAndVersion {75return new NameAndVersion('simulation-tests-plugin', '2');76}7778override openExternal(target: URI): Promise<boolean> {79return Promise.resolve(false);80}81}8283export class NullNativeEnvService extends NullEnvService {84get userHome(): URI {85return URI.file('/home/testuser');86}87}8889