vscode.executeDefinitionProvider возвращает пустой vscode.Location [], когда тесты вызываются через менеджер пакетов - PullRequest
0 голосов
/ 11 января 2020

Я создаю свое первое расширение VS Code, но теперь я застрял при автоматическом тестировании своего расширения. Если я запускаю свои автоматизированные тесты из кода VS, все работает нормально, но я хочу запускать тесты также в конвейере непрерывной интеграции, поэтому тесты также должны запускаться, если я вызываю их с npm run test.

При npm run test большинство моих тестов прошло успешно, но поскольку метод теста зависит от вывода «vscode.executeDefinitionProvider», тесты не пройдены, поскольку он не находит определений.

await vscode.commands.executeCommand<vscode.Location[]>('vscode.executeDefinitionProvider', document.uri, positionToSearchForSymbols)
  .then(definitions => {
    if(definitions.length > 0){
      //this one is called if I run the tests out of Visual Studio Code
    } else{
      //this one is called if I run the tests via npm rum test
    }
  });

Ты хоть представляешь, что я делаю не так? Почему npm run test ведет себя иначе, чем выполнение тестов из кода VS?

Заранее спасибо за вашу помощь.

Дэвид

1 Ответ

0 голосов
/ 11 января 2020

Ну, мне сообщили, что VS Code отправляет сообщение провайдеру языка (в моем случае это расширение языка), и что проблема должна быть на сайте провайдера языка. Поскольку проблема не связана с VS Code, я закрою этот вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...