Skip to content

Commit

Permalink
fix: Export createMockTextEditor (#248)
Browse files Browse the repository at this point in the history
  • Loading branch information
Jason3S committed Mar 1, 2024
1 parent cef53f4 commit e92285c
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 3 deletions.
3 changes: 3 additions & 0 deletions src/index.ts
Expand Up @@ -5,6 +5,9 @@ export {
createMockFileSystem,
createMockFileSystemProvider,
createMockWorkspaceConfiguration,
createMockTextEditor,
createWindow,
createWorkspace,
} from './vscode';
export type { MockWorkspaceConfigurationData } from './vscode';
export { createVSCodeMock } from './vscode-mock';
Expand Down
3 changes: 2 additions & 1 deletion src/vscode/index.ts
Expand Up @@ -14,7 +14,8 @@ export { createMockFileSystem, createMockFileSystemProvider } from './fs';
export * from './uri';
export { MockWorkspace, Workspace, createWorkspace } from './workspace';

export { MockTextEditor } from './TextEditor';
export type { MockTextEditor } from './TextEditor';
export { createMockTextEditor } from './TextEditor';
export { TypeHierarchyItem } from './TypeHierarchyItem';
export { Languages, createLanguages } from './languages';
export { Window, createWindow } from './window';
25 changes: 23 additions & 2 deletions test-packages/vitest-integration/src/sample.workspace.test.ts
@@ -1,8 +1,9 @@
import { afterEach, describe, expect, test, vi } from 'vitest';
import { Uri, workspace, type WorkspaceFolder } from 'vscode';
import { Uri, workspace, type WorkspaceFolder, window } from 'vscode';

vi.mock('vscode');

const testFileUri = Uri.file(__filename);
const rootUri = Uri.file(__dirname);
const workspaceFolder1: WorkspaceFolder = {
uri: Uri.joinPath(rootUri, 'Folder1'),
Expand All @@ -16,7 +17,7 @@ const workspaceFolder2: WorkspaceFolder = {
index: 1,
};

describe('workspace', () => {
describe('vscode.workspace', () => {
afterEach(() => {
vi.resetAllMocks();
});
Expand All @@ -32,4 +33,24 @@ describe('workspace', () => {
expect(workspace.getWorkspaceFolder(uri)).toEqual(workspaceFolder1);
expect(workspace.getWorkspaceFolder(uri2)).toEqual(workspaceFolder2);
});

test('openTextDocument', async () => {
const uri = testFileUri;
const doc = await workspace.openTextDocument(uri);
expect(doc.uri).toEqual(uri);
expect(doc.getText()).toContain("vi.mock('vscode');");
});
});

describe('vscode.window', () => {
afterEach(() => {
vi.resetAllMocks();
});

test('showTextDocument', async () => {
const uri = testFileUri;
const doc = await workspace.openTextDocument(uri);
const editor = await window.showTextDocument(doc);
expect(editor.document).toBe(doc);
});
});

0 comments on commit e92285c

Please sign in to comment.