提交 036af38a 编写于 作者: M Michel Kaporin

Added check for string in output, instead of querying the known element.

上级 1613eac4
......@@ -24,16 +24,14 @@ export class Tasks {
return this.spectron.command('workbench.actions.view.problems');
}
public async firstOutputLineEndsWith(fileName: string): Promise<boolean> {
await this.spectron.command('workbench.action.toggleFullScreen'); // toggle full screen to prevent output view to be rendered as wrapped
const firstLine = await this.spectron.waitFor(this.spectron.client.getText, `${this.outputViewSelector}>:nth-child(2)`);
public async outputContains(string: string): Promise<boolean> {
const output: string = await this.spectron.waitFor(this.spectron.client.getText, this.outputViewSelector);
return firstLine.endsWith(fileName);
}
if (output.indexOf(string) !== -1) {
return true;
}
public async getOutputResult(): Promise<any> {
await this.spectron.command('workbench.action.toggleFullScreen'); // toggle full screen to prevent output view to be rendered as wrapped
return this.spectron.waitFor(this.spectron.client.getText, `${this.outputViewSelector}>:nth-child(5) span.mtk1`);
return false;
}
public selectOutputViewType(type: string): Promise<any> {
......
......@@ -25,9 +25,10 @@ export function testTasks() {
});
it('verifies that eslint task results in 1 problem', async function () {
const expectedOutput = '1 problem (0 errors, 1 warning)';
await tasks.build();
const res = await tasks.getOutputResult();
assert.equal(res, '✖ 1 problem (0 errors, 1 warning)');
const actualOutput = await tasks.outputContains(expectedOutput);
assert.ok(actualOutput, `Output does not contain the following string: '${expectedOutput}'`);
});
it(`is able to select 'Git' output`, async function () {
......@@ -38,12 +39,12 @@ export function testTasks() {
assert.equal(viewType, 'Git');
});
it('ensures that build task produces errors in index.js', async function () {
it('ensures that build task produces error in index.js', async function () {
await tasks.build();
assert.ok(await tasks.firstOutputLineEndsWith('index.js'));
assert.ok(await tasks.outputContains('index.js'), `Output does not contain error in index.js`);
});
it(`verifies build errors are reflected in 'Problems View'`, async function () {
it(`verifies build error is reflected in 'Problems View'`, async function () {
await tasks.build();
await tasks.openProblemsView();
const problemName = await tasks.getProblemsViewFirstElementName();
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册