Skip to content

Commit 9eddd84

Browse files
committed
finish
Summary: Test Plan: Reviewers: Subscribers: Tasks: Tags:
1 parent 580d5f3 commit 9eddd84

File tree

5 files changed

+37
-1
lines changed

5 files changed

+37
-1
lines changed

src/client/common/configSettings.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,7 @@ export class PythonSettings implements IPythonSettings {
281281
) {
282282
if (
283283
this.extensions.getExtension(PYREFLY_EXTENSION_ID) &&
284-
pythonSettings.get<WorkspaceConfiguration>('pyrefly')?.get<boolean>('disableLanguageServices') !== true) {
284+
pythonSettings.get<boolean>('pyrefly.disableLanguageServices') !== true) {
285285
this.languageServer = LanguageServerType.None;
286286
} else {
287287
this.languageServer = this.defaultLS?.defaultLSType ?? LanguageServerType.None;

src/test/common/configSettings/configSettings.pythonPath.unit.test.ts

+10
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import { PythonEnvironment } from '../../../client/pythonEnvironments/info';
1717
import * as EnvFileTelemetry from '../../../client/telemetry/envFileTelemetry';
1818
import { MockAutoSelectionService } from '../../mocks/autoSelector';
1919
import { untildify } from '../../../client/common/helpers';
20+
import { MockExtensions } from '../../mocks/extensions';
2021

2122
suite('Python Settings - pythonPath', () => {
2223
class CustomPythonSettings extends PythonSettings {
@@ -64,6 +65,7 @@ suite('Python Settings - pythonPath', () => {
6465
workspaceService.object,
6566
interpreterPathService.object,
6667
undefined,
68+
new MockExtensions(),
6769
);
6870
configSettings.update(pythonSettings.object);
6971

@@ -78,6 +80,7 @@ suite('Python Settings - pythonPath', () => {
7880
workspaceService.object,
7981
interpreterPathService.object,
8082
undefined,
83+
new MockExtensions(),
8184
);
8285
configSettings.update(pythonSettings.object);
8386

@@ -93,6 +96,7 @@ suite('Python Settings - pythonPath', () => {
9396
workspaceService.object,
9497
interpreterPathService.object,
9598
undefined,
99+
new MockExtensions(),
96100
);
97101

98102
configSettings.update(pythonSettings.object);
@@ -110,6 +114,7 @@ suite('Python Settings - pythonPath', () => {
110114
workspaceService.object,
111115
interpreterPathService.object,
112116
undefined,
117+
new MockExtensions(),
113118
);
114119
configSettings.update(pythonSettings.object);
115120

@@ -126,6 +131,7 @@ suite('Python Settings - pythonPath', () => {
126131
workspaceService.object,
127132
interpreterPathService.object,
128133
undefined,
134+
new MockExtensions(),
129135
);
130136
configSettings.update(pythonSettings.object);
131137

@@ -145,6 +151,7 @@ suite('Python Settings - pythonPath', () => {
145151
workspaceService.object,
146152
interpreterPathService.object,
147153
undefined,
154+
new MockExtensions(),
148155
);
149156
configSettings.update(pythonSettings.object);
150157

@@ -166,6 +173,7 @@ suite('Python Settings - pythonPath', () => {
166173
workspaceService.object,
167174
interpreterPathService.object,
168175
undefined,
176+
new MockExtensions()
169177
);
170178
configSettings.update(pythonSettings.object);
171179

@@ -184,6 +192,7 @@ suite('Python Settings - pythonPath', () => {
184192
workspaceService.object,
185193
interpreterPathService.object,
186194
undefined,
195+
new MockExtensions(),
187196
);
188197
interpreterPathService.setup((i) => i.get(typemoq.It.isAny())).returns(() => 'custom');
189198
pythonSettings.setup((p) => p.get(typemoq.It.isValue('defaultInterpreterPath'))).returns(() => 'python');
@@ -204,6 +213,7 @@ suite('Python Settings - pythonPath', () => {
204213
workspaceService.object,
205214
interpreterPathService.object,
206215
undefined,
216+
new MockExtensions(),
207217
);
208218
interpreterPathService.setup((i) => i.get(resource)).returns(() => 'python');
209219
configSettings.update(pythonSettings.object);

src/test/common/configSettings/configSettings.unit.test.ts

+4
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ import { ITestingSettings } from '../../../client/testing/configuration/types';
2727
import { MockAutoSelectionService } from '../../mocks/autoSelector';
2828
import { MockMemento } from '../../mocks/mementos';
2929
import { untildify } from '../../../client/common/helpers';
30+
import { MockExtensions } from '../../mocks/extensions';
3031

3132
suite('Python Settings', async () => {
3233
class CustomPythonSettings extends PythonSettings {
@@ -47,6 +48,7 @@ suite('Python Settings', async () => {
4748
const workspaceService = new WorkspaceService();
4849
const workspaceMemento = new MockMemento();
4950
const globalMemento = new MockMemento();
51+
const extensions = new MockExtensions();
5052
const persistentStateFactory = new PersistentStateFactory(globalMemento, workspaceMemento);
5153
expected = new CustomPythonSettings(
5254
undefined,
@@ -56,6 +58,7 @@ suite('Python Settings', async () => {
5658
remoteName: undefined,
5759
} as IApplicationEnvironment),
5860
undefined,
61+
extensions
5962
);
6063
settings = new CustomPythonSettings(
6164
undefined,
@@ -65,6 +68,7 @@ suite('Python Settings', async () => {
6568
remoteName: undefined,
6669
} as IApplicationEnvironment),
6770
undefined,
71+
extensions
6872
);
6973
expected.defaultInterpreterPath = 'python';
7074
});

src/test/extensionSettings.ts

+3
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@ import { PersistentStateFactory } from '../client/common/persistentState';
1313
import { IPythonSettings, Resource } from '../client/common/types';
1414
import { PythonEnvironment } from '../client/pythonEnvironments/info';
1515
import { MockMemento } from './mocks/mementos';
16+
import { MockExtensions } from './mocks/extensions';
1617

1718
export function getExtensionSettings(resource: Uri | undefined): IPythonSettings {
1819
const vscode = require('vscode') as typeof import('vscode');
@@ -41,6 +42,7 @@ export function getExtensionSettings(resource: Uri | undefined): IPythonSettings
4142
const workspaceMemento = new MockMemento();
4243
const globalMemento = new MockMemento();
4344
const persistentStateFactory = new PersistentStateFactory(globalMemento, workspaceMemento);
45+
const extensions = new MockExtensions();
4446
return pythonSettings.PythonSettings.getInstance(
4547
resource,
4648
new AutoSelectionService(),
@@ -49,5 +51,6 @@ export function getExtensionSettings(resource: Uri | undefined): IPythonSettings
4951
remoteName: undefined,
5052
} as IApplicationEnvironment),
5153
undefined,
54+
extensions,
5255
);
5356
}

src/test/mocks/extensions.ts

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import { injectable } from 'inversify';
2+
import { IExtensions } from '../../client/common/types';
3+
import { Extension, Event } from 'vscode';
4+
5+
@injectable()
6+
export class MockExtensions implements IExtensions {
7+
all: readonly Extension<unknown>[] = [];
8+
onDidChange: Event<void> = (() => {
9+
throw new Error('Method not implemented');
10+
})();
11+
getExtension(extensionId: string): Extension<unknown> | undefined;
12+
getExtension<T>(extensionId: string): Extension<T> | undefined;
13+
getExtension(_extensionId: unknown): import("vscode").Extension<unknown> | undefined {
14+
throw new Error('Method not implemented.');
15+
}
16+
determineExtensionFromCallStack(): Promise<{ extensionId: string; displayName: string; }> {
17+
throw new Error('Method not implemented.');
18+
}
19+
}

0 commit comments

Comments
 (0)