Added new CI workflow using GitHub actions.

Also

 - Fixed screenshot tests
 - Fixed code coverage
 - Removed appveyor
 - Removed circleci
 - Updated wdio related dependencies
 - Added docker image deploy to the GitHub registry
This commit is contained in:
orangemug
2020-05-24 11:13:16 +01:00
parent e3e6647e03
commit ce731e7d6b
15 changed files with 728 additions and 1394 deletions

View File

@@ -2,17 +2,24 @@ var wd = require("../wd-helper");
var uuid = require('uuid/v1');
var geoServer = require("../geojson-server");
var geoserver = geoServer.listen(9002);
var testNetwork = process.env.TEST_NETWORK || "localhost";
var geoserver;
module.exports = {
startGeoserver: function(done) {
geoserver = geoServer.listen(9002, "0.0.0.0", done);
},
stopGeoserver: function(done) {
geoserver.close(done);
geoserver = undefined;
},
getStyleUrl: function(styles) {
var port = geoserver.address().port;
return "http://localhost:"+port+"/styles/empty/"+styles.join(",");
return "http://"+testNetwork+":"+port+"/styles/empty/"+styles.join(",");
},
getGeoServerUrl: function(urlPath) {
var port = geoserver.address().port;
return "http://localhost:"+port+"/"+urlPath;
return "http://"+testNetwork+":"+port+"/"+urlPath;
},
getStyleStore: function(browser) {
var result = browser.executeAsync(function(done) {

View File

@@ -1,11 +1,18 @@
var config = require("../config/specs");
var helper = require("./helper");
require("./util/webdriverio-ext");
describe('maputnik', function() {
before(function(done) {
require("./util/webdriverio-ext");
helper.startGeoserver(done);
});
after(function(done) {
helper.stopGeoserver(done);
});
beforeEach(function() {
browser.url(config.baseUrl+"?debug&style="+helper.getStyleUrl([
"geojson:example",

View File

@@ -33,6 +33,7 @@ describe('screenshots', function() {
browser.flushReactUpdates();
const nav_open = $(wd.$("nav:open"));
nav_open.click();
nav_open.waitForExist();
browser.flushReactUpdates();
@@ -49,6 +50,7 @@ describe('screenshots', function() {
browser.flushReactUpdates();
const nav_export = $(wd.$("nav:export"));
nav_export.click();
nav_export.waitForExist();
browser.flushReactUpdates();
@@ -65,6 +67,7 @@ describe('screenshots', function() {
browser.flushReactUpdates();
const nav_sources = $(wd.$("nav:sources"));
nav_sources.click();
nav_sources.waitForExist();
browser.flushReactUpdates();
@@ -81,6 +84,7 @@ describe('screenshots', function() {
browser.flushReactUpdates();
const nav_settings = $(wd.$("nav:settings"));
nav_settings.click();
nav_settings.waitForExist();
browser.flushReactUpdates();

View File

@@ -14,7 +14,9 @@ afterEach(function() {
return window.__coverage__;
});
coverage.merge(results.value);
if (results) {
coverage.merge(results);
}
})
// Dump the coverage to a file

View File

@@ -42,8 +42,8 @@ try {
})
browser.addCommand('takeScreenShot', function(filepath) {
var data = browser.takeScreenshot();
fs.writeFileSync(path.join(SCREENSHOTS_PATH, filepath), data.value, 'base64');
var savepath = path.join(SCREENSHOTS_PATH, filepath);
browser.saveScreenshot(savepath);
});
browser.addCommand('flushReactUpdates', function() {