This commit is contained in:
Sandeep Somavarapu
2020-11-11 20:40:07 +01:00
parent df171cfcab
commit fac5cc3a54
@@ -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))