提交 8510c24e 编写于 作者: S Shobhit Chittora

fixes tests

上级 09f2c6bf
......@@ -98,7 +98,6 @@ export class KeybindingsEditor extends BaseEditor implements IKeybindingsEditor
private keybindingFocusContextKey: IContextKey<boolean>;
private searchFocusContextKey: IContextKey<boolean>;
private sortByPrecedence: Checkbox;
private secondaryActions: IAction[];
constructor(
@ITelemetryService telemetryService: ITelemetryService,
......@@ -178,37 +177,27 @@ export class KeybindingsEditor extends BaseEditor implements IKeybindingsEditor
return focusedElement && focusedElement.templateId === KEYBINDING_ENTRY_TEMPLATE_ID ? <IKeybindingItemEntry>focusedElement : null;
}
setKeybindingSource(searchString: string): TPromise<any> {
this.searchWidget.setValue(searchString);
return TPromise.as(null);
}
showDefaultKeyBindings(): IAction {
return <IAction>{
label: localize('showDefaultKeybindings', "Show Default Keybindings"),
enabled: true,
id: KEYBINDINGS_EDITOR_SHOW_DEFAULT_KEYBINDINGS,
run: () => this.setKeybindingSource('source: default')
};
}
showUserKeyBindings(): IAction {
return <IAction>{
label: localize('showUserKeybindings', "Show User Keybindings"),
enabled: true,
id: KEYBINDINGS_EDITOR_SHOW_USER_KEYBINDINGS,
run: () => this.setKeybindingSource('source: user')
};
}
getSecondaryActions(): IAction[] {
if (!this.secondaryActions) {
this.secondaryActions = [
this.showDefaultKeyBindings(),
this.showUserKeyBindings(),
];
}
return this.secondaryActions;
return <IAction[]>[
<IAction>{
label: localize('showDefaultKeybindings', "Show Default Keybindings"),
enabled: true,
id: KEYBINDINGS_EDITOR_SHOW_DEFAULT_KEYBINDINGS,
run: (): TPromise<any> => {
this.searchWidget.setValue('@source: default');
return TPromise.as(null);
}
},
<IAction>{
label: localize('showUserKeybindings', "Show User Keybindings"),
enabled: true,
id: KEYBINDINGS_EDITOR_SHOW_USER_KEYBINDINGS,
run: (): TPromise<any> => {
this.searchWidget.setValue('@source: user');
return TPromise.as(null);
}
}
];
}
defineKeybinding(keybindingEntry: IKeybindingItemEntry): TPromise<any> {
......@@ -245,10 +234,10 @@ export class KeybindingsEditor extends BaseEditor implements IKeybindingsEditor
this.reportKeybindingAction(KEYBINDINGS_EDITOR_COMMAND_REMOVE, keybindingEntry.keybindingItem.command, keybindingEntry.keybindingItem.keybinding);
return this.keybindingEditingService.removeKeybinding(keybindingEntry.keybindingItem.keybindingItem)
.then(() => this.focus(),
error => {
this.onKeybindingEditingError(error);
this.selectEntry(keybindingEntry);
});
error => {
this.onKeybindingEditingError(error);
this.selectEntry(keybindingEntry);
});
}
return TPromise.as(null);
}
......@@ -263,10 +252,10 @@ export class KeybindingsEditor extends BaseEditor implements IKeybindingsEditor
}
this.selectEntry(keybindingEntry);
},
error => {
this.onKeybindingEditingError(error);
this.selectEntry(keybindingEntry);
});
error => {
this.onKeybindingEditingError(error);
this.selectEntry(keybindingEntry);
});
}
copyKeybinding(keybinding: IKeybindingItemEntry): TPromise<any> {
......
......@@ -250,7 +250,7 @@ class KeybindingItemMatches {
private checkForSourceFilter(searchValue: string) {
const words = searchValue.split(':');
return (words.length) && (words[0].trim().toLowerCase() === 'source') ?
return (words.length) && (words[0].trim().toLowerCase() === '@source') ?
words[1].trim() :
searchValue;
}
......
......@@ -258,15 +258,24 @@ suite('Keybindings Editor Model test', () => {
});
});
test('filter by source: filter', () => {
test('filter by default source with "source: " prefix', () => {
const command = 'a' + uuid.generateUuid();
const expected = aResolvedKeybindingItem({ command, firstPart: { keyCode: KeyCode.Escape }, when: 'context1 && context2', isDefault: false });
const expected = aResolvedKeybindingItem({ command, firstPart: { keyCode: KeyCode.Escape }, when: 'context1 && context2', isDefault: true });
prepareKeybindingService(expected);
return testObject.resolve({}).then(() => {
let actual = testObject.fetch('source: user').filter(element => element.keybindingItem.command === command)[0];
const actual = testObject.fetch('source: default').filter(element => element.keybindingItem.command === command)[0];
assert.ok(actual);
actual = testObject.fetch('source: default').filter(element => element.keybindingItem.command === command)[0];
});
});
test('filter by user source with "source: " prefix', () => {
const command = 'a' + uuid.generateUuid();
const expected = aResolvedKeybindingItem({ command, firstPart: { keyCode: KeyCode.Escape }, when: 'context1 && context2', isDefault: false });
prepareKeybindingService(expected);
return testObject.resolve({}).then(() => {
const actual = testObject.fetch('source: user').filter(element => element.keybindingItem.command === command)[0];
assert.ok(actual);
});
});
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册