You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

55 lines
1.4 KiB

/* eslint-disable */
8 years ago
import { Application } from 'spectron';
import electronPath from 'electron';
import path from 'path';
jasmine.DEFAULT_TIMEOUT_INTERVAL = 15000;
const delay = time => new Promise(resolve => setTimeout(resolve, time));
describe('main window', function spec() {
beforeAll(async () => {
this.app = new Application({
path: electronPath,
args: [path.join(__dirname, '..', '..', 'app')]
8 years ago
});
return this.app.start();
});
afterAll(() => {
if (this.app && this.app.isRunning()) {
return this.app.stop();
}
});
const findCounter = () => this.app.client.element('[data-tid="counter"]');
const findButtons = async () => {
const { value } = await this.app.client.elements('[data-tclass="btn"]');
return value.map(btn => btn.ELEMENT);
};
it('should open window', async () => {
const { client, browserWindow } = this.app;
await client.waitUntilWindowLoaded();
await delay(500);
const title = await browserWindow.getTitle();
expect(title).toBe('Zap');
8 years ago
});
it('should haven\'t any logs in console of main window', async () => {
const { client } = this.app;
const logs = await client.getRenderProcessLogs();
// Print renderer process logs
logs.forEach((log) => {
8 years ago
console.log(log.message);
console.log(log.source);
console.log(log.level);
});
expect(logs).toHaveLength(0);
});
});