diff --git a/src/test/datascience/dataScienceIocContainer.ts b/src/test/datascience/dataScienceIocContainer.ts index bbf3f680b093..04c71fe303ab 100644 --- a/src/test/datascience/dataScienceIocContainer.ts +++ b/src/test/datascience/dataScienceIocContainer.ts @@ -92,7 +92,7 @@ import { PersistentStateFactory } from '../../client/common/persistentState'; import { IS_WINDOWS } from '../../client/common/platform/constants'; import { PathUtils } from '../../client/common/platform/pathUtils'; import { RegistryImplementation } from '../../client/common/platform/registry'; -import { IRegistry } from '../../client/common/platform/types'; +import { IFileSystem, IRegistry } from '../../client/common/platform/types'; import { CurrentProcess } from '../../client/common/process/currentProcess'; import { BufferDecoder } from '../../client/common/process/decoder'; import { ProcessLogger } from '../../client/common/process/logger'; @@ -289,6 +289,7 @@ import { MockCustomEditorService } from './mockCustomEditorService'; import { MockDebuggerService } from './mockDebugService'; import { MockDocumentManager } from './mockDocumentManager'; import { MockExtensions } from './mockExtensions'; +import { MockFileSystem } from './mockFileSystem'; import { MockJupyterManager, SupportedCommands } from './mockJupyterManager'; import { MockJupyterManagerFactory } from './mockJupyterManagerFactory'; import { MockLanguageServerAnalysisOptions } from './mockLanguageServerAnalysisOptions'; @@ -408,6 +409,7 @@ export class DataScienceIocContainer extends UnitTestIocContainer { const testWorkspaceFolder = path.join(EXTENSION_ROOT_DIR, 'src', 'test', 'datascience'); this.registerFileSystemTypes(); + this.serviceManager.rebindInstance(IFileSystem, new MockFileSystem()); this.serviceManager.addSingleton(IJupyterExecution, JupyterExecutionFactory); this.serviceManager.addSingleton(IInteractiveWindowProvider, TestInteractiveWindowProvider); this.serviceManager.addSingleton(IDataViewerProvider, DataViewerProvider); @@ -763,6 +765,10 @@ export class DataScienceIocContainer extends UnitTestIocContainer { this.addInterpreter(this.workingPython2, SupportedCommands.all); this.addInterpreter(this.workingPython, SupportedCommands.all); } + public setFileContents(uri: Uri, contents: string) { + const fileSystem = this.serviceManager.get(IFileSystem) as MockFileSystem; + fileSystem.addFileContents(uri.fsPath, contents); + } public async activate(): Promise { // Activate all of the extension activation services diff --git a/src/test/datascience/mockFileSystem.ts b/src/test/datascience/mockFileSystem.ts index 7a965dfe9f86..5c03402ea321 100644 --- a/src/test/datascience/mockFileSystem.ts +++ b/src/test/datascience/mockFileSystem.ts @@ -2,9 +2,9 @@ // Licensed under the MIT License. 'use strict'; -import { FileSystem } from '../../client/common/platform/fileSystem'; +import { LegacyFileSystem } from '../serviceRegistry'; -export class MockFileSystem extends FileSystem { +export class MockFileSystem extends LegacyFileSystem { private contentOverloads = new Map(); constructor() { diff --git a/src/test/serviceRegistry.ts b/src/test/serviceRegistry.ts index b32d379a86ed..f1ecf748838f 100644 --- a/src/test/serviceRegistry.ts +++ b/src/test/serviceRegistry.ts @@ -67,7 +67,6 @@ import { IServiceContainer, IServiceManager } from '../client/ioc/types'; import { registerTypes as lintersRegisterTypes } from '../client/linters/serviceRegistry'; import { TEST_OUTPUT_CHANNEL } from '../client/testing/common/constants'; import { registerTypes as unittestsRegisterTypes } from '../client/testing/serviceRegistry'; -import { MockFileSystem } from './datascience/mockFileSystem'; import { MockOutputChannel } from './mockClasses'; import { MockAutoSelectionService } from './mocks/autoSelector'; import { MockMemento } from './mocks/mementos'; @@ -95,7 +94,7 @@ class FakeVSCodeFileSystemAPI { return convertStat(stat, filetype); } } -class LegacyFileSystem extends FileSystem { +export class LegacyFileSystem extends FileSystem { constructor() { super(); const vscfs = new FakeVSCodeFileSystemAPI(); @@ -154,10 +153,6 @@ export class IocContainer { this.registerFileSystemTypes(); } } - public setFileContents(uri: Uri, contents: string) { - const fileSystem = this.serviceManager.get(IFileSystem) as MockFileSystem; - fileSystem.addFileContents(uri.fsPath, contents); - } public registerFileSystemTypes() { this.serviceManager.addSingleton(IPlatformService, PlatformService); this.serviceManager.addSingleton(