Windshaft-cartodb/test/fixtures/test_mapconfigFactory.js

62 lines
1.6 KiB
JavaScript
Raw Normal View History

2018-06-01 18:08:34 +08:00
function getVectorMapConfig(opts) {
return {
buffersize: {
mvt: 1
},
2018-06-05 16:10:56 +08:00
layers: _generateLayers(opts),
2018-06-05 14:58:44 +08:00
};
}
2018-06-05 16:10:56 +08:00
function _generateLayers(opts) {
const numberOfLayers = opts.numberOfLayers || 1;
const layers = [];
for (let index = 0; index < numberOfLayers; index++) {
const layerOptions = (opts.layerOptions || {})[index] || {};
layers.push(_generateLayerConfig(layerOptions));
2018-06-05 16:10:56 +08:00
}
return layers;
}
2018-06-05 14:58:44 +08:00
function _generateLayerConfig(opts) {
return {
type: 'mapnik',
options: {
sql: `
SELECT
(DATE '2018-06-01' + x) as date,
x as cartodb_id,
st_makepoint(x * 10, x * 10) as the_geom,
st_makepoint(x * 10, x * 10) as the_geom_webmercator
FROM
generate_series(0, 1) x`,
aggregation: {
columns: {},
dimensions: {
date: 'date'
},
placement: 'centroid',
resolution: 1,
threshold: 1
},
dates_as_numbers: opts.dates_as_numbers,
metadata: {
geometryType: true,
columnStats: {
topCategories: 32768,
includeNulls: true
},
sample: {
num_rows: 1000,
include_columns: [
'date'
]
2018-06-01 18:08:34 +08:00
}
}
2018-06-05 14:58:44 +08:00
}
2018-06-01 18:08:34 +08:00
};
}
module.exports = { getVectorMapConfig };