diff --git a/src/vs/workbench/contrib/testing/browser/testingExplorerView.ts b/src/vs/workbench/contrib/testing/browser/testingExplorerView.ts index 295405bc3de..3bea3666ab8 100644 --- a/src/vs/workbench/contrib/testing/browser/testingExplorerView.ts +++ b/src/vs/workbench/contrib/testing/browser/testingExplorerView.ts @@ -521,6 +521,7 @@ export class TestingExplorerViewModel extends Disposable { private shouldShowEmptyPlaceholder() { return !!this.listener && this.listener.subscription.busyProviders === 0 + && this.listener.subscription.pendingRootProviders === 0 && this.listener.subscription.isEmpty; } diff --git a/src/vs/workbench/contrib/testing/common/testServiceImpl.ts b/src/vs/workbench/contrib/testing/common/testServiceImpl.ts index 808fd5f07c8..68f2b1d22a9 100644 --- a/src/vs/workbench/contrib/testing/common/testServiceImpl.ts +++ b/src/vs/workbench/contrib/testing/common/testServiceImpl.ts @@ -233,6 +233,7 @@ export class TestService extends Disposable implements ITestService { this.unsubscribeEmitter.fire(subscription.ident); const diff = subscription.collection.clear(); subscription.onDiff.fire(diff); + subscription.collection.pendingRootProviders = this.rootProviders.size; this.subscribeEmitter.fire(subscription.ident); } } @@ -358,6 +359,14 @@ export class MainThreadTestCollection extends AbstractIncrementalTestCollection< return this.pendingRootCount; } + /** + * Sets the number of pending root providers. + */ + public set pendingRootProviders(count: number) { + this.pendingRootCount = count; + this.pendingRootChangeEmitter.fire(count); + } + /** * @inheritdoc */