27 lines
955 B
TypeScript
27 lines
955 B
TypeScript
const APPLICATION = require('spectron').Application;
|
|
const ELECTRON_PATH = require('electron'); // Require Electron from the binaries included in node_modules.
|
|
const PATH = require('path');
|
|
|
|
export default function setup(): void {
|
|
beforeEach(async function() {
|
|
this.app = new APPLICATION({
|
|
// Your electron path can be any binary
|
|
// i.e for OSX an example path could be '/Applications/MyApp.app/Contents/MacOS/MyApp'
|
|
// But for the sake of the example we fetch it from our node_modules.
|
|
path: ELECTRON_PATH,
|
|
// The following line tells spectron to look and use the main.js file
|
|
// and the package.json located in app folder.
|
|
args: [PATH.join(__dirname, '../app/main.js'), PATH.join(__dirname, '../app/package.json')],
|
|
webdriverOptions: {}
|
|
});
|
|
|
|
await this.app.start();
|
|
});
|
|
|
|
afterEach(async function() {
|
|
if (this.app && this.app.isRunning()) {
|
|
await this.app.stop();
|
|
}
|
|
});
|
|
}
|