Проверьте значения быстрого открытия и информацию / сообщения об ошибках в тесте расширения vscode - PullRequest
0 голосов
/ 11 октября 2019

Для теста пользовательского интерфейса расширения vscode я хочу получить значения QuickOpen или Info / ErrorMessages, чтобы утверждать, что отображаются правильные значения.

QuickOpen

Я нашел два способа управления QuickOpen из теста. У них обоих есть недостатки:

  1. Введите точный пункт. Проблема здесь заключается в «злоупотреблении» буфером обмена, но я не нашел другого способа сделать это.
async function selectQuickOpenItem(item: string) {
    await vscode.commands.executeCommand('workbench.action.focusQuickOpen');
    await vscode.env.clipboard.writeText(item);
    await vscode.commands.executeCommand('editor.action.clipboardPasteAction');
    await vscode.commands.executeCommand('workbench.action.acceptSelectedQuickOpenItem');
}
«Слепо» перейти к предмету:
await vscode.commands.executeCommand('workbench.action.quickOpenSelectNext')
await vscode.commands.executeCommand('workbench.action.acceptSelectedQuickOpenItem')

Есть ли лучший способ сделать это? Есть ли способ получить отображаемые значения?

Error / InfoMessages

Единственный способ проверить значение ошибки, которая "прервет" команду, - это вернутьPromise<any> из моей командной функции, которая будет отображать ErrorMessage и reject, если произойдет ошибка. Я не могу проверить, действительно ли отображается ErrorMessage, но я могу проверить значение сообщения об ошибке в блоке или функции catch.

...