【发布时间】:2018-08-13 17:31:17
【问题描述】:
我有一个使用配置设置的 vscode 扩展(Typescript)。我想根据特定的配置设置对我的扩展程序的行为进行单元测试。
我的问题是,配置更改似乎只在测试执行后写入,这意味着测试在没有应用更改的设置的情况下运行。这是我的测试:
test("LoadConfiguration - Shows error when configuration can't be loaded", () => {
let settings = vscode.workspace.getConfiguration("my-extension");
settings.update("MySettingCollection", [{ "param1": "", "param2": "someValue" }], true);
ConfigurationLoader.LoadConfiguration();
//asserts ommitted
});
在ConfigurationLoader.LoadConfiguration,我有:
public LoadConfiguration() : boolean {
let configuration = vscode.workspace.getConfiguration('my-extension');
if (configuration.has('MySettingCollection')) {
//logic to read MySettingCollection...
}
}
有什么方法可以说“使用这些值设置测试”并在执行测试之前运行并写入文件?也许我需要异步运行一些东西?我看过 Mocha 的 before 和 beforeEach,但我不确定这是否适合我正在尝试做的事情。
【问题讨论】:
标签: typescript visual-studio-code mocha.js vscode-settings vscode-extensions