remove old tests

This commit is contained in:
HarelM
2023-12-16 07:58:21 +02:00
parent 865ea72863
commit 2ad4993ab7
7 changed files with 2 additions and 820 deletions

View File

@@ -16,6 +16,7 @@ export default {
cy.intercept('GET', 'http://localhost:8888/geojson-style.json', { fixture: 'geojson-style.json' });
cy.intercept('GET', 'http://localhost:8888/raster-style.json', { fixture: 'raster-style.json' });
cy.intercept('GET', 'http://localhost:8888/geojson-raster-style.json', { fixture: 'geojson-raster-style.json' });
cy.intercept({method: 'GET', url: '*example.com/*', },[]);
},
setStyle(styleProperties: 'geojson' | 'raster' | 'both' | 'layer' | '', zoom? : number) {

View File

@@ -8,6 +8,7 @@
"build": "cross-env NODE_OPTIONS=--openssl-legacy-provider webpack --config config/webpack.production.config.js --progress=profile --color",
"profiling-build": "cross-env NODE_OPTIONS=--openssl-legacy-provider webpack --config config/webpack.profiling.config.js --progress=profile --color",
"test": "cross-env NODE_OPTIONS=--openssl-legacy-provider cross-env NODE_ENV=test wdio config/wdio.conf.js",
"cy:run": "cypress run",
"test-watch": "cross-env NODE_OPTIONS=--openssl-legacy-provider cross-env NODE_ENV=test wdio config/wdio.conf.js --watch",
"start": "cross-env NODE_OPTIONS=--openssl-legacy-provider webpack-dev-server --progress=profile --color --config config/webpack.config.js",
"start-prod": "cross-env NODE_OPTIONS=--openssl-legacy-provider webpack-dev-server --progress=profile --color --config config/webpack.production.config.js",

View File

@@ -1,43 +0,0 @@
var assert = require("assert");
var driver = require("../driver");
describe("accessibility", function () {
describe("skip links", function() {
beforeEach(async function () {
await driver.setStyle("example-layer-style.json");
});
it("skip link to layer list", async function() {
const selector = driver.getDataAttribute("root:skip:layer-list")
assert(await driver.isExisting(selector));
await driver.typeKeys(['Tab']);
assert(await driver.isFocused(selector));
await driver.click(selector);
assert(await driver.isFocused("#skip-target-layer-list"));
});
it("skip link to layer editor", async function() {
const selector = driver.getDataAttribute("root:skip:layer-editor")
assert(await driver.isExisting(selector));
await driver.typeKeys(['Tab']);
await driver.typeKeys(['Tab']);
assert(await driver.isFocused(selector));
await driver.click(selector);
assert(await driver.isFocused("#skip-target-layer-editor"));
});
it("skip link to map view", async function() {
const selector = driver.getDataAttribute("root:skip:map-view")
assert(await driver.isExisting(selector));
await driver.typeKeys(['Tab']);
await driver.typeKeys(['Tab']);
await driver.typeKeys(['Tab']);
assert(await driver.isFocused(selector));
await driver.click(selector);
assert(await driver.isFocused(".maplibregl-canvas"));
});
});
})

View File

@@ -1,103 +0,0 @@
var assert = require("assert");
var driver = require("../driver");
describe("history", function() {
let undoKeyCombo;
let undoKeyComboReset;
let redoKeyCombo;
let redoKeyComboReset;
before(async function() {
const isMac = await driver.isMac();
undoKeyCombo = ['Meta', 'z'];
undoKeyComboReset = ['Meta'];
redoKeyCombo = isMac ? ['Meta', 'Shift', 'z'] : ['Meta', 'y'];
redoKeyComboReset = isMac ? ['Meta', 'Shift'] : ['Meta'];
});
/**
* See <https://github.com/webdriverio/webdriverio/issues/1126>
*/
it.skip("undo/redo", async function() {
var styleObj;
await driver.setStyle(["geojson:example"])
await driver.openLayersModal();
styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, []);
await driver.fillLayersModal({
id: "step 1",
type: "background"
})
styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": "step 1",
"type": 'background'
}
]);
await driver.openLayersModal();
await driver.fillLayersModal({
id: "step 2",
type: "background"
})
styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": "step 1",
"type": 'background'
},
{
"id": "step 2",
"type": 'background'
}
]);
await driver.typeKeys(undoKeyCombo);
await driver.typeKeys(undoKeyComboReset);
styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": "step 1",
"type": 'background'
}
]);
await driver.typeKeys(undoKeyCombo)
await driver.typeKeys(undoKeyComboReset);
styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
]);
await driver.typeKeys(redoKeyCombo)
await driver.typeKeys(redoKeyComboReset);
styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": "step 1",
"type": 'background'
}
]);
await driver.typeKeys(redoKeyCombo)
await driver.typeKeys(redoKeyComboReset);
styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": "step 1",
"type": 'background'
},
{
"id": "step 2",
"type": 'background'
}
]);
});
})

View File

@@ -1,56 +0,0 @@
var assert = require("assert");
var driver = require("../driver");
describe("keyboard", function() {
describe("shortcuts", function() {
it("ESC should unfocus", async function() {
const targetSelector = driver.getDataAttribute("nav:inspect") + " select";
driver.click(targetSelector);
assert(await driver.isFocused(targetSelector));
await driver.typeKeys(["Escape"]);
assert(await (await $("body")).isFocused());
});
it("'?' should show shortcuts modal", async function() {
await driver.typeKeys(["?"]);
assert(await driver.isDisplayedInViewport(driver.getDataAttribute("modal:shortcuts")));
});
it("'o' should show open modal", async function() {
await driver.typeKeys(["o"]);
assert(await driver.isDisplayedInViewport(driver.getDataAttribute("modal:open")));
});
it("'e' should show export modal", async function() {
await driver.typeKeys(["e"]);
await driver.sleep(100);
assert(await driver.isDisplayedInViewport(driver.getDataAttribute("modal:export")));
});
it("'d' should show sources modal", async function() {
await driver.typeKeys(["d"]);
assert(await driver.isDisplayedInViewport(driver.getDataAttribute("modal:sources")));
});
it("'s' should show settings modal", async function() {
await driver.typeKeys(["s"]);
assert(await driver.isDisplayedInViewport(driver.getDataAttribute("modal:settings")));
});
it.skip("'i' should change map to inspect mode", async function() {
// await driver.typeKeys(["i"]);
});
it("'m' should focus map", async function() {
await driver.typeKeys(["m"]);
assert(await driver.isFocused(".maplibregl-canvas"));
});
it("'!' should show debug modal", async function() {
await driver.typeKeys(["!"]);
assert(await driver.isDisplayedInViewport(driver.getDataAttribute("modal:debug")));
});
});
});

View File

@@ -1,458 +0,0 @@
var assert = require("assert");
var driver = require("../driver");
var {v1: uuid} = require('uuid');
describe("layers", function() {
beforeEach(async function() {
driver.setStyle([
"geojson:example",
"raster:raster"
]);
await driver.openLayersModal();
});
describe("ops", function() {
it("delete", async function() {
var styleObj;
var id = await driver.fillLayersModal({
type: "background"
})
styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": id,
"type": 'background'
},
]);
await driver.click(driver.getDataAttribute("layer-list-item:"+id+":delete", ""))
styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
]);
});
it("duplicate", async function() {
var styleObj;
var id = await driver.fillLayersModal({
type: "background"
})
styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": id,
"type": 'background'
},
]);
await driver.click(driver.getDataAttribute("layer-list-item:"+id+":copy", ""));
styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": id+"-copy",
"type": "background"
},
{
"id": id,
"type": "background"
},
]);
});
it("hide", async function() {
var styleObj;
var id = await driver.fillLayersModal({
type: "background"
})
styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": id,
"type": 'background'
},
]);
await driver.click(driver.getDataAttribute("layer-list-item:"+id+":toggle-visibility", ""));
styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": id,
"type": "background",
"layout": {
"visibility": "none"
}
},
]);
await driver.click(driver.getDataAttribute("layer-list-item:"+id+":toggle-visibility", ""));
styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": id,
"type": "background",
"layout": {
"visibility": "visible"
}
},
]);
})
})
describe('background', function () {
it("add", async function() {
var id = await driver.fillLayersModal({
type: "background"
})
var styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": id,
"type": 'background'
}
]);
});
describe("modify", function() {
async function createBackground() {
// Setup
var id = uuid();
await driver.selectFromDropdown(driver.getDataAttribute("add-layer.layer-type", "select"), "background");
await driver.setValue(driver.getDataAttribute("add-layer.layer-id", "input"), "background:"+id);
await driver.click(driver.getDataAttribute("add-layer"));
var styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": 'background:'+id,
"type": 'background'
}
]);
return id;
}
// ====> THESE SHOULD BE FROM THE SPEC
describe("layer", function() {
it("expand/collapse");
it("id", async function() {
var bgId = await createBackground();
await driver.click(driver.getDataAttribute("layer-list-item:background:"+bgId));
var id = uuid();
await driver.setValue(driver.getDataAttribute("layer-editor.layer-id", "input"), "foobar:"+id)
await driver.click(driver.getDataAttribute("min-zoom"));
var styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": 'foobar:'+id,
"type": 'background'
}
]);
});
it("min-zoom", async function() {
var bgId = await createBackground();
await driver.click(driver.getDataAttribute("layer-list-item:background:"+bgId));
await driver.setValue(driver.getDataAttribute("min-zoom", 'input[type="text"]'), 1)
await driver.click(driver.getDataAttribute("layer-editor.layer-id", "input"));
var styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": 'background:'+bgId,
"type": 'background',
"minzoom": 1
}
]);
// AND RESET!
// await driver.setValue(driver.getDataAttribute("min-zoom", "input"), "")
// await driver.click(driver.getDataAttribute("max-zoom", "input"));
// var styleObj = await driver.getStyleStore();
// assert.deepEqual(styleObj.layers, [
// {
// "id": 'background:'+bgId,
// "type": 'background'
// }
// ]);
});
it("max-zoom", async function() {
var bgId = await createBackground();
await driver.click(driver.getDataAttribute("layer-list-item:background:"+bgId));
await driver.setValue(driver.getDataAttribute("max-zoom", 'input[type="text"]'), 1)
await driver.click(driver.getDataAttribute("layer-editor.layer-id", "input"));
var styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": 'background:'+bgId,
"type": 'background',
"maxzoom": 1
}
]);
});
it("comments", async function() {
var bgId = await createBackground();
var id = uuid();
await driver.click(driver.getDataAttribute("layer-list-item:background:"+bgId));
await driver.setValue(driver.getDataAttribute("layer-comment", "textarea"), id);
await driver.click(driver.getDataAttribute("layer-editor.layer-id", "input"));
var styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": 'background:'+bgId,
"type": 'background',
metadata: {
'maputnik:comment': id
}
}
]);
// Unset it again.
// TODO: This fails
// await driver.setValue(driver.getDataAttribute("layer-comment", "textarea"), "");
// await driver.click(driver.getDataAttribute("min-zoom", "input"));
// await driver.zeroTimeout();
// var styleObj = await driver.getStyleStore();
// assert.deepEqual(styleObj.layers, [
// {
// "id": 'background:'+bgId,
// "type": 'background'
// }
// ]);
});
it("color", null, async function() {
var bgId = await createBackground();
await driver.click(driver.getDataAttribute("layer-list-item:background:"+bgId));
await driver.click(driver.getDataAttribute("spec-field:background-color", "input"));
var styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": 'background:'+bgId,
"type": 'background'
}
]);
})
})
describe("filter", function() {
it("expand/collapse");
it("compound filter");
})
describe("paint", function() {
it("expand/collapse");
it("color");
it("pattern");
it("opacity");
})
// <=====
describe("json-editor", function() {
it("expand/collapse");
it("modify");
// TODO
it.skip("parse error", async function() {
var bgId = await createBackground();
await driver.click(driver.getDataAttribute("layer-list-item:background:"+bgId));
var errorSelector = ".CodeMirror-lint-marker-error";
assert.equal(await driver.isExisting(errorSelector), false);
await driver.click(".CodeMirror");
await driver.keys("\uE013\uE013\uE013\uE013\uE013\uE013\uE013\uE013\uE013\uE013\uE013\uE013 {");
await driver.waitForExist(errorSelector);
await driver.click(driver.getDataAttribute("layer-editor.layer-id"));
});
});
})
});
describe('fill', function () {
it("add", async function() {
var id = await driver.fillLayersModal({
type: "fill",
layer: "example"
});
var styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": id,
"type": 'fill',
"source": "example"
}
]);
})
// TODO: Change source
it("change source")
});
describe('line', function () {
it("add", async function() {
var id = await driver.fillLayersModal({
type: "line",
layer: "example"
});
var styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": id,
"type": "line",
"source": "example",
}
]);
});
it("groups", null, function() {
// TODO
// Click each of the layer groups.
})
});
describe('symbol', function () {
it("add", async function() {
var id = await driver.fillLayersModal({
type: "symbol",
layer: "example"
});
var styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": id,
"type": "symbol",
"source": "example",
}
]);
});
});
describe('raster', function () {
it("add", async function() {
var id = await driver.fillLayersModal({
type: "raster",
layer: "raster"
});
var styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": id,
"type": "raster",
"source": "raster",
}
]);
});
});
describe('circle', function () {
it("add", async function() {
var id = await driver.fillLayersModal({
type: "circle",
layer: "example"
});
var styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": id,
"type": "circle",
"source": "example",
}
]);
});
});
describe('fill extrusion', function () {
it("add", async function() {
var id = await driver.fillLayersModal({
type: "fill-extrusion",
layer: "example"
});
var styleObj = await driver.getStyleStore();
assert.deepEqual(styleObj.layers, [
{
"id": id,
"type": 'fill-extrusion',
"source": "example"
}
]);
});
});
describe("groups", function() {
it("simple", async function() {
await driver.setStyle(["geojson:example"]);
await driver.openLayersModal();
await driver.fillLayersModal({
id: "foo",
type: "background"
})
await driver.openLayersModal();
await driver.fillLayersModal({
id: "foo_bar",
type: "background"
})
await driver.openLayersModal();
await driver.fillLayersModal({
id: "foo_bar_baz",
type: "background"
})
assert.equal(await driver.isDisplayedInViewport(driver.getDataAttribute("layer-list-item:foo")), true);
assert.equal(await driver.isDisplayedInViewport(driver.getDataAttribute("layer-list-item:foo_bar")), false);
assert.equal(await driver.isDisplayedInViewport(driver.getDataAttribute("layer-list-item:foo_bar_baz")), false);
await driver.click(driver.getDataAttribute("layer-list-group:foo-0"));
assert.equal(await driver.isDisplayedInViewport(driver.getDataAttribute("layer-list-item:foo")), true);
assert.equal(await driver.isDisplayedInViewport(driver.getDataAttribute("layer-list-item:foo_bar")), true);
assert.equal(await driver.isDisplayedInViewport(driver.getDataAttribute("layer-list-item:foo_bar_baz")), true);
})
})
});

View File

@@ -1,160 +0,0 @@
var assert = require('assert');
var driver = require("../driver");
describe("modals", function() {
describe("open", function() {
beforeEach(async function() {
await driver.setStyle();
await driver.click(driver.getDataAttribute("nav:open"));
await driver.zeroTimeout();
});
it("close", async function() {
await driver.closeModal("modal:open");
});
// "chooseFile" command currently not available for wdio v5 https://github.com/webdriverio/webdriverio/pull/3632
it.skip("upload", async function() {
await driver.chooseExampleFile();
var styleObj = await driver.getStyleStore();
assert.deepEqual(await driver.getExampleFileData(), styleObj);
});
it("load from url", async function() {
var styleFileUrl = driver.getGeoServerUrl("example-style.json");
await driver.setValue(driver.getDataAttribute("modal:open.url.input"), styleFileUrl);
await driver.click(driver.getDataAttribute("modal:open.url.button"))
// Allow the network request to happen
// NOTE: Its localhost so this should be fast.
await driver.sleep(300);
var styleObj = await driver.getStyleStore();
assert.deepEqual(await driver.getExampleFileData(), styleObj);
});
})
describe("shortcuts", function() {
it("open/close", async function() {
await driver.setStyle();
await driver.typeKeys(["?"]);
const modalEl = await $(driver.getDataAttribute("modal:shortcuts"))
assert(await modalEl.isDisplayed());
await driver.closeModal("modal:shortcuts");
});
});
describe("export", function() {
beforeEach(async function() {
await driver.setStyle();
await driver.click(driver.getDataAttribute("nav:export"));
await driver.zeroTimeout();
});
it("close", async function() {
await driver.closeModal("modal:export");
});
// TODO: Work out how to download a file and check the contents
it("download")
})
describe("sources", function() {
it("active sources")
it("public source")
it("add new source")
})
describe("inspect", function() {
it("toggle", async function() {
await driver.setStyle(["geojson:example"]);
await driver.selectFromDropdown(driver.getDataAttribute("nav:inspect", "select"), "inspect");
})
})
describe("style settings", function() {
beforeEach(async function() {
await driver.setStyle();
await driver.click(driver.getDataAttribute("nav:settings"));
await driver.zeroTimeout();
});
it("name", async function() {
await driver.setValue(driver.getDataAttribute("modal:settings.name"), "foobar");
await driver.click(driver.getDataAttribute("modal:settings.owner"));
await driver.zeroTimeout();
var styleObj = await driver.getStyleStore();
assert.equal(styleObj.name, "foobar");
})
it("owner", async function() {
await driver.setValue(driver.getDataAttribute("modal:settings.owner"), "foobar")
await driver.click(driver.getDataAttribute("modal:settings.name"));
await driver.zeroTimeout();
var styleObj = await driver.getStyleStore();
assert.equal(styleObj.owner, "foobar");
})
it("sprite url", async function() {
await driver.setValue(driver.getDataAttribute("modal:settings.sprite"), "http://example.com")
await driver.click(driver.getDataAttribute("modal:settings.name"));
await driver.zeroTimeout();
var styleObj = await driver.getStyleStore();
assert.equal(styleObj.sprite, "http://example.com");
})
it("glyphs url", async function() {
var glyphsUrl = "http://example.com/{fontstack}/{range}.pbf"
await driver.setValue(driver.getDataAttribute("modal:settings.glyphs"), glyphsUrl);
await driver.click(driver.getDataAttribute("modal:settings.name"));
await driver.zeroTimeout();
var styleObj = await driver.getStyleStore();
assert.equal(styleObj.glyphs, glyphsUrl);
})
it("maptiler access token", async function() {
var apiKey = "testing123";
await driver.setValue(driver.getDataAttribute("modal:settings.maputnik:openmaptiles_access_token"), apiKey);
await driver.click(driver.getDataAttribute("modal:settings.name"));
await driver.zeroTimeout();
var styleObj = await driver.getStyleStore();
assert.equal(styleObj.metadata["maputnik:openmaptiles_access_token"], apiKey);
})
it("thunderforest access token", async function() {
var apiKey = "testing123";
await driver.setValue(driver.getDataAttribute("modal:settings.maputnik:thunderforest_access_token"), apiKey);
await driver.click(driver.getDataAttribute("modal:settings.name"));
await driver.zeroTimeout();
var styleObj = await driver.getStyleStore();
assert.equal(styleObj.metadata["maputnik:thunderforest_access_token"], apiKey);
})
it("style renderer", async function() {
await driver.selectFromDropdown(driver.getDataAttribute("modal:settings.maputnik:renderer"), "ol");
await driver.click(driver.getDataAttribute("modal:settings.name"));
await driver.zeroTimeout();
var styleObj = await driver.getStyleStore();
assert.equal(styleObj.metadata["maputnik:renderer"], "ol");
})
})
describe("sources", function() {
it("toggle")
})
})