add e2e test enviroment

This commit is contained in:
Rodrigo Ramírez Norambuena 2017-01-30 12:29:32 -03:00
parent d474d518ca
commit c75ee042a8
3 changed files with 75 additions and 0 deletions

View File

@ -31,6 +31,7 @@ This project adheres to [Semantic Versioning](http://semver.org/).
- Add use a script to prevent when is run by SSH session set DISPLAY enviroment. - Add use a script to prevent when is run by SSH session set DISPLAY enviroment.
- Enable ability to set configuration file by the enviroment variable called MM_CONFIG_FILE. - Enable ability to set configuration file by the enviroment variable called MM_CONFIG_FILE.
- Add test e2e helloworld - Add test e2e helloworld
- Add test e2e enviroment
### Fixed ### Fixed
- Update .gitignore to not ignore default modules folder. - Update .gitignore to not ignore default modules folder.

25
tests/confs/env.js Normal file
View File

@ -0,0 +1,25 @@
/* Magic Mirror Test config sample enviroment
*
* By Rodrigo Ramírez Norambuena https://rodrigoramirez.com
* MIT Licensed.
*/
var config = {
port: 8080,
ipWhitelist: ["127.0.0.1", "::ffff:127.0.0.1", "::1"],
language: "en",
timeFormat: 24,
units: "metric",
electronOptions: {
webPreferences: {
nodeIntegration: true,
},
},
modules: [
]
};
/*************** DO NOT EDIT THE LINE BELOW ***************/
if (typeof module !== "undefined") {module.exports = config;}

49
tests/e2e/env.js Normal file
View File

@ -0,0 +1,49 @@
const Application = require("spectron").Application;
const path = require('path');
const chai = require('chai');
const chaiAsPromised = require('chai-as-promised');
// Set config sample for use in test
process.env.MM_CONFIG_FILE = 'tests/confs/env.js';
var electronPath = path.join(__dirname, '../../', 'node_modules', '.bin', 'electron');
if (process.platform === 'win32') {
electronPath += '.cmd';
}
var appPath = path.join(__dirname, '../../js/electron.js');
var app = new Application({
path: electronPath,
args: [appPath]
});
global.before(function () {
chai.should();
chai.use(chaiAsPromised);
});
describe('Test enviroment app electron', function () {
this.timeout(10000);
beforeEach(function (done) {
app.start().then(function() { done(); } );
});
afterEach(function (done) {
app.stop().then(function() { done(); });
});
it('open a window app and test if is open', function () {
return app.client.waitUntilWindowLoaded()
.getWindowCount().should.eventually.equal(1);
});
it('tests the title', function () {
return app.client.waitUntilWindowLoaded()
.getTitle().should.eventually.equal('Magic Mirror');
});
});