Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
microsoft
GitHub Repository: microsoft/vscode
Path: blob/main/extensions/copilot/src/platform/env/common/nullEnvService.ts
13401 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 type { WindowState } from 'vscode';
7
import { Event } from '../../../util/vs/base/common/event';
8
import { URI } from '../../../util/vs/base/common/uri';
9
import { AbstractEnvService, NameAndVersion, OperatingSystem } from './envService';
10
import { packageJson } from './packagejson';
11
12
export class NullEnvService extends AbstractEnvService {
13
declare readonly _serviceBrand: undefined;
14
15
static readonly Instance = new NullEnvService();
16
17
override readonly language: string = 'en';
18
19
override get extensionId(): string {
20
return 'test-extension-id';
21
}
22
23
get vscodeVersion(): string {
24
return 'test-version';
25
}
26
27
override get isActive(): boolean {
28
return true;
29
}
30
31
override get onDidChangeWindowState(): Event<WindowState> {
32
return Event.None;
33
}
34
35
override get sessionId(): string {
36
return 'test-session';
37
}
38
39
override get machineId(): string {
40
return 'test-machine';
41
}
42
43
override get devDeviceId(): string {
44
return 'test-dev-device';
45
}
46
47
override get remoteName(): string | undefined {
48
return undefined;
49
}
50
51
override get uiKind(): 'desktop' | 'web' {
52
return 'desktop';
53
}
54
55
override get uriScheme(): string {
56
return 'code-null';
57
}
58
59
override get appRoot(): string {
60
return '';
61
}
62
63
override get shell(): string {
64
return 'zsh';
65
}
66
67
override get OS(): OperatingSystem {
68
return OperatingSystem.Linux;
69
}
70
71
override getEditorInfo(): NameAndVersion {
72
return new NameAndVersion('simulation-tests-editor', packageJson.engines.vscode.match(/\d+\.\d+/)?.[0] ?? '1.89');
73
}
74
75
override getEditorPluginInfo(): NameAndVersion {
76
return new NameAndVersion('simulation-tests-plugin', '2');
77
}
78
79
override openExternal(target: URI): Promise<boolean> {
80
return Promise.resolve(false);
81
}
82
}
83
84
export class NullNativeEnvService extends NullEnvService {
85
get userHome(): URI {
86
return URI.file('/home/testuser');
87
}
88
}
89