geospatialdraw
Version:
Geospatial Map Drawing Library
143 lines • 5.26 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var chai_1 = require("chai");
var renderer_1 = require("./renderer");
describe('-Renderer', function () {
var MockMap = /** @class */ (function () {
function MockMap() {
this.layer = null;
}
MockMap.prototype.addLayer = function (layer) {
this.layer = layer;
};
return MockMap;
}());
describe('constructor', function () {
it('Adds vector layer', function () {
var map = new MockMap();
// @ts-expect-error
var renderer = new renderer_1.default(map);
(0, chai_1.expect)(map.layer).to.not.equal(null);
});
});
describe('renderList', function () {
it('Adds list of geos to layer', function () {
var map = new MockMap();
// @ts-expect-error
var renderer = new renderer_1.default(map);
renderer.renderList([
{
type: 'Feature',
geometry: {
type: 'Point',
coordinates: [125.6, 10.1],
},
// @ts-expect-error
properties: {
name: 'Dinagat Islands',
color: '#996600',
},
},
{
type: 'Feature',
// @ts-expect-error
properties: {
color: 'white',
},
geometry: {
type: 'Polygon',
coordinates: [
[
[29.53125, 18.979025953255267],
[24.960937499999996, 6.315298538330033],
[42.1875, 7.013667927566642],
[50.2734375, 18.646245142670608],
[29.53125, 18.979025953255267],
],
],
},
},
]);
// @ts-expect-error
(0, chai_1.expect)(map.layer.getSource().getFeatures().length).to.equal(2);
});
});
describe('addGeo', function () {
it('Adds geo to layer', function () {
var map = new MockMap();
// @ts-expect-error
var renderer = new renderer_1.default(map);
renderer.addGeo({
type: 'Feature',
geometry: {
type: 'Point',
coordinates: [125.6, 10.1],
},
// @ts-expect-error
properties: {
name: 'Dinagat Islands',
color: '#996600',
},
});
// @ts-expect-error
(0, chai_1.expect)(map.layer.getSource().getFeatures().length).to.equal(1);
});
});
describe('clearGeos', function () {
it('Removes all geos', function () {
var map = new MockMap();
// @ts-expect-error
var renderer = new renderer_1.default(map);
renderer.renderList([
{
type: 'Feature',
geometry: {
type: 'Point',
coordinates: [125.6, 10.1],
},
// @ts-expect-error
properties: {
name: 'Dinagat Islands',
color: '#996600',
},
},
{
type: 'Feature',
// @ts-expect-error
properties: {
color: 'white',
},
geometry: {
type: 'Polygon',
coordinates: [
[
[29.53125, 18.979025953255267],
[24.960937499999996, 6.315298538330033],
[42.1875, 7.013667927566642],
[50.2734375, 18.646245142670608],
[29.53125, 18.979025953255267],
],
],
},
},
]);
// @ts-expect-error
(0, chai_1.expect)(map.layer.getSource().getFeatures().length).to.equal(2);
renderer.clearGeos();
// @ts-expect-error
(0, chai_1.expect)(map.layer.getSource().getFeatures().length).to.equal(0);
});
});
describe('getExtent', function () {
it('adjusts for antimeridian crossing', function () {
var map = new MockMap();
// @ts-expect-error
var renderer = new renderer_1.default(map);
var bbox = [-170, 0, 170, 10];
// @ts-expect-error
var extent = renderer.getExtent({ bbox: bbox });
(0, chai_1.expect)(extent).to.deep.equal([170, 0, 190, 10]);
});
});
});
//# sourceMappingURL=render.spec.js.map