mirror of
https://github.com/microsoft/vscode.git
synced 2026-09-15 07:41:11 +01:00
#102906 add tests
This commit is contained in:
+37
@@ -685,6 +685,11 @@ suite('ExtensionsWorkbenchServiceTest', () => {
|
||||
const extensionB = aLocalExtension('b');
|
||||
const extensionC = aLocalExtension('c');
|
||||
|
||||
instantiationService.stub(INotificationService, <Partial<INotificationService>>{
|
||||
prompt(severity, message, choices, options) {
|
||||
options!.onCancel!();
|
||||
}
|
||||
});
|
||||
return instantiationService.get(IWorkbenchExtensionEnablementService).setEnablement([extensionA], EnablementState.EnabledGlobally)
|
||||
.then(() => instantiationService.get(IWorkbenchExtensionEnablementService).setEnablement([extensionB], EnablementState.EnabledGlobally))
|
||||
.then(() => instantiationService.get(IWorkbenchExtensionEnablementService).setEnablement([extensionC], EnablementState.EnabledGlobally))
|
||||
@@ -695,6 +700,28 @@ suite('ExtensionsWorkbenchServiceTest', () => {
|
||||
});
|
||||
});
|
||||
|
||||
test('test disable extension disables all dependents when chosen to disable all', async () => {
|
||||
const extensionA = aLocalExtension('a', { extensionDependencies: ['pub.b'] });
|
||||
const extensionB = aLocalExtension('b');
|
||||
const extensionC = aLocalExtension('c');
|
||||
|
||||
instantiationService.stub(INotificationService, <Partial<INotificationService>>{
|
||||
prompt(severity, message, choices, options) {
|
||||
choices[0].run();
|
||||
}
|
||||
});
|
||||
return instantiationService.get(IWorkbenchExtensionEnablementService).setEnablement([extensionA], EnablementState.EnabledGlobally)
|
||||
.then(() => instantiationService.get(IWorkbenchExtensionEnablementService).setEnablement([extensionB], EnablementState.EnabledGlobally))
|
||||
.then(() => instantiationService.get(IWorkbenchExtensionEnablementService).setEnablement([extensionC], EnablementState.EnabledGlobally))
|
||||
.then(async () => {
|
||||
instantiationService.stubPromise(IExtensionManagementService, 'getInstalled', [extensionA, extensionB, extensionC]);
|
||||
testObject = await aWorkbenchService();
|
||||
await testObject.setEnablement(testObject.local[1], EnablementState.DisabledGlobally);
|
||||
assert.equal(testObject.local[0].enablementState, EnablementState.DisabledGlobally);
|
||||
assert.equal(testObject.local[1].enablementState, EnablementState.DisabledGlobally);
|
||||
});
|
||||
});
|
||||
|
||||
test('test disable extension when extension is part of a pack', async () => {
|
||||
const extensionA = aLocalExtension('a', { extensionPack: ['pub.b'] });
|
||||
const extensionB = aLocalExtension('b');
|
||||
@@ -800,6 +827,11 @@ suite('ExtensionsWorkbenchServiceTest', () => {
|
||||
const extensionB = aLocalExtension('b', { extensionDependencies: ['pub.a'] });
|
||||
const extensionC = aLocalExtension('c');
|
||||
|
||||
instantiationService.stub(INotificationService, <Partial<INotificationService>>{
|
||||
prompt(severity, message, choices, options) {
|
||||
options!.onCancel!();
|
||||
}
|
||||
});
|
||||
return instantiationService.get(IWorkbenchExtensionEnablementService).setEnablement([extensionA], EnablementState.EnabledGlobally)
|
||||
.then(() => instantiationService.get(IWorkbenchExtensionEnablementService).setEnablement([extensionB], EnablementState.EnabledGlobally))
|
||||
.then(() => instantiationService.get(IWorkbenchExtensionEnablementService).setEnablement([extensionC], EnablementState.EnabledGlobally))
|
||||
@@ -835,6 +867,11 @@ suite('ExtensionsWorkbenchServiceTest', () => {
|
||||
const extensionB = aLocalExtension('b', { extensionDependencies: ['pub.c'] });
|
||||
const extensionC = aLocalExtension('c', { extensionDependencies: ['pub.a'] });
|
||||
|
||||
instantiationService.stub(INotificationService, <Partial<INotificationService>>{
|
||||
prompt(severity, message, choices, options) {
|
||||
options!.onCancel!();
|
||||
}
|
||||
});
|
||||
return instantiationService.get(IWorkbenchExtensionEnablementService).setEnablement([extensionA], EnablementState.EnabledGlobally)
|
||||
.then(() => instantiationService.get(IWorkbenchExtensionEnablementService).setEnablement([extensionB], EnablementState.EnabledGlobally))
|
||||
.then(() => instantiationService.get(IWorkbenchExtensionEnablementService).setEnablement([extensionC], EnablementState.EnabledGlobally))
|
||||
|
||||
Reference in New Issue
Block a user