Skip to content
This repository has been archived by the owner on May 17, 2021. It is now read-only.
/ hadron-spectron Public archive

Spectron integration to functionally test Hadron Apps

Notifications You must be signed in to change notification settings

mongodb-js/hadron-spectron

Repository files navigation

hadron-spectron Linux CI Windows CI

Installation

npm install --save-dev hadron-spectron

Usage

With Mocha, create an App instance in the before hook and launch it, and quit it in the after hook. For examples and more details, see Compass' functional test README.

const { App, selector } = require('hadron-spectron');

/**
 * The path to the root of the application, as well as the electron app.
 */
const ROOT = path.join(__dirname, '..', '..', '..');

function addCustomCommands(client) {
  // Add custom commands to the client here.
}

function launchApp() {
  return new App(ROOT).launch(addCustomCommands);
}

function quitApp() {
  return app.quit();
}

describe('Functional Test', function() {
  let app = null;
  let client = null;

  before(function() {
    return launchApp().then(function(application) {
      app = application;
      client = application.client;
    });
  });

  after(function() {
    return quitApp(app);
  });
});

chai-as-promised support is provided automatically as a convenience.

License

Apache 2.0