本文整理汇总了TypeScript中vs/workbench/services/commands/common/commandService.CommandService类的典型用法代码示例。如果您正苦于以下问题:TypeScript CommandService类的具体用法?TypeScript CommandService怎么用?TypeScript CommandService使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了CommandService类的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的TypeScript代码示例。
示例1: test
test('Stop waiting for * extensions to activate when trigger is satisfied #62457', function () {
let callCounter = 0;
let dispoables: IDisposable[] = [];
let events: string[] = [];
let service = new CommandService(new InstantiationService(), new class extends NullExtensionService {
activateByEvent(event: string): Promise<void> {
events.push(event);
if (event === '*') {
return new Promise(() => { }); //forever promise...
}
if (event.indexOf('onCommand:') === 0) {
return new Promise(resolve => {
setTimeout(() => {
let reg = CommandsRegistry.registerCommand(event.substr('onCommand:'.length), () => {
callCounter += 1;
});
dispoables.push(reg);
resolve();
}, 0);
});
}
return Promise.resolve();
}
}, new NullLogService());
return service.executeCommand('farboo').then(() => {
assert.equal(callCounter, 1);
assert.deepEqual(events.sort(), ['*', 'onCommand:farboo'].sort());
dispose(dispoables);
});
});
开发者ID:joelday,项目名称:vscode,代码行数:34,代码来源:commandService.test.ts
示例2: test
test('issue #71471: wait for onCommand activation even if a command is registered', () => {
let expectedOrder: string[] = ['registering command', 'resolving activation event', 'executing command'];
let actualOrder: string[] = [];
let disposables: IDisposable[] = [];
let service = new CommandService(new InstantiationService(), new class extends NullExtensionService {
activateByEvent(event: string): Promise<void> {
if (event === '*') {
return new Promise(() => { }); //forever promise...
}
if (event.indexOf('onCommand:') === 0) {
return new Promise(resolve => {
setTimeout(() => {
// Register the command after some time
actualOrder.push('registering command');
let reg = CommandsRegistry.registerCommand(event.substr('onCommand:'.length), () => {
actualOrder.push('executing command');
});
disposables.push(reg);
setTimeout(() => {
// Resolve the activation event after some more time
actualOrder.push('resolving activation event');
resolve();
}, 10);
}, 10);
});
}
return Promise.resolve();
}
}, new NullLogService());
return service.executeCommand('farboo2').then(() => {
assert.deepEqual(actualOrder, expectedOrder);
dispose(disposables);
});
});
开发者ID:PKRoma,项目名称:vscode,代码行数:38,代码来源:commandService.test.ts
示例3:
return service.executeCommand('foo').then(() => {
assert.ok(lastEvent, 'onCommand:foo');
return service.executeCommand('unknownCommandId');
}).then(() => {
开发者ID:joelday,项目名称:vscode,代码行数:4,代码来源:commandService.test.ts
注:本文中的vs/workbench/services/commands/common/commandService.CommandService类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论