diff --git a/src/vs/workbench/contrib/notebook/test/browser/contrib/notebookOutline.test.ts b/src/vs/workbench/contrib/notebook/test/browser/contrib/notebookOutline.test.ts index 323abe63dda..9145f0bf00b 100644 --- a/src/vs/workbench/contrib/notebook/test/browser/contrib/notebookOutline.test.ts +++ b/src/vs/workbench/contrib/notebook/test/browser/contrib/notebookOutline.test.ts @@ -17,17 +17,22 @@ import { IActiveNotebookEditor, INotebookEditorPane } from 'vs/workbench/contrib import { DisposableStore } from 'vs/base/common/lifecycle'; import { TestInstantiationService } from 'vs/platform/instantiation/test/common/instantiationServiceMock'; import { NotebookCellOutline } from 'vs/workbench/contrib/notebook/browser/contrib/outline/notebookOutline'; +import { ensureNoDisposablesAreLeakedInTestSuite } from 'vs/base/test/common/utils'; suite('Notebook Outline', function () { let disposables: DisposableStore; let instantiationService: TestInstantiationService; - suiteSetup(() => { + teardown(() => disposables.dispose()); + + ensureNoDisposablesAreLeakedInTestSuite(); + + setup(() => { disposables = new DisposableStore(); instantiationService = setupInstantiationService(disposables); instantiationService.set(IEditorService, new class extends mock() { }); - instantiationService.set(IMarkerService, new MarkerService()); + instantiationService.set(IMarkerService, disposables.add(new MarkerService())); instantiationService.set(IThemeService, new class extends mock() { override onDidFileIconThemeChange = Event.None; override getFileIconTheme(): IFileIconTheme { @@ -36,7 +41,6 @@ suite('Notebook Outline', function () { }); }); - suiteTeardown(() => disposables.dispose()); function withNotebookOutline(cells: [source: string, lang: string, kind: CellKind, output?: IOutputDto[], metadata?: NotebookCellMetadata][], callback: (outline: NotebookCellOutline, editor: IActiveNotebookEditor) => R): Promise { return withTestNotebook(cells, (editor) => { @@ -49,6 +53,8 @@ suite('Notebook Outline', function () { } override onDidChangeModel: Event = Event.None; }, OutlineTarget.OutlinePane); + + disposables.add(outline); return callback(outline, editor); });