diff --git a/test/acceptance/analysis/named-maps.js b/test/acceptance/analysis/named-maps.js index 63ddafa2..42fb19d0 100644 --- a/test/acceptance/analysis/named-maps.js +++ b/test/acceptance/analysis/named-maps.js @@ -9,7 +9,12 @@ var TestClient = require('../../support/test-client'); var LayergroupToken = require('../../../lib/cartodb/models/layergroup-token'); describe('named-maps analysis', function() { - var server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); + var IMAGE_TOLERANCE_PER_MIL = 20; diff --git a/test/acceptance/auth/authorization-fallback.js b/test/acceptance/auth/authorization-fallback.js index 95b86612..bbc16140 100644 --- a/test/acceptance/auth/authorization-fallback.js +++ b/test/acceptance/auth/authorization-fallback.js @@ -45,7 +45,11 @@ var pointSqlPublic = "select * from test_table"; var keysToDelete; describe('authorization fallback', function () { - const server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); beforeEach(function () { keysToDelete = {}; diff --git a/test/acceptance/cache/cache_headers.js b/test/acceptance/cache/cache_headers.js index abe472ee..8e0cb9f3 100644 --- a/test/acceptance/cache/cache_headers.js +++ b/test/acceptance/cache/cache_headers.js @@ -9,8 +9,13 @@ var serverOptions = require('../../../lib/cartodb/server_options'); var LayergroupToken = require('../../../lib/cartodb/models/layergroup-token'); describe('get requests with cache headers', function() { - var server = new CartodbWindshaft(serverOptions); - server.setMaxListeners(0); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + server.setMaxListeners(0); + }); + var keysToDelete; beforeEach(function() { diff --git a/test/acceptance/cache/surrogate_keys_invalidation.js b/test/acceptance/cache/surrogate_keys_invalidation.js index fbe2ff7d..5538e603 100644 --- a/test/acceptance/cache/surrogate_keys_invalidation.js +++ b/test/acceptance/cache/surrogate_keys_invalidation.js @@ -30,7 +30,12 @@ describe('templates surrogate keys', function() { serviceId: FAKE_FASTLY_SERVICE_ID }; - var server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); + var templateOwner = 'localhost'; var templateName = 'acceptance'; diff --git a/test/acceptance/dynamic-styling-named-maps.js b/test/acceptance/dynamic-styling-named-maps.js index 87da7d81..ac483cf2 100644 --- a/test/acceptance/dynamic-styling-named-maps.js +++ b/test/acceptance/dynamic-styling-named-maps.js @@ -6,7 +6,11 @@ var CartodbWindshaft = require(__dirname + '/../../lib/cartodb/server'); var serverOptions = require(__dirname + '/../../lib/cartodb/server_options'); describe('dynamic styling for named maps', function() { - var server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); var keysToDelete; diff --git a/test/acceptance/errors-with-context.js b/test/acceptance/errors-with-context.js index 5579524b..27440368 100644 --- a/test/acceptance/errors-with-context.js +++ b/test/acceptance/errors-with-context.js @@ -3,7 +3,12 @@ var CartodbWindshaft = require(__dirname + '/../../lib/cartodb/server'); var serverOptions = require(__dirname + '/../../lib/cartodb/server_options'); describe('error with context', function () { - var server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); + var layerOK = { options: { diff --git a/test/acceptance/multilayer.js b/test/acceptance/multilayer.js index 895e8fb1..d818ae5b 100644 --- a/test/acceptance/multilayer.js +++ b/test/acceptance/multilayer.js @@ -25,8 +25,12 @@ var QueryTables = require('cartodb-query-tables'); var suiteName = 'multilayer:postgres=layergroup_url=' + layergroup_url; describe(suiteName, function() { - var server = new CartodbWindshaft(serverOptions); - server.setMaxListeners(0); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + server.setMaxListeners(0); + }); var keysToDelete; diff --git a/test/acceptance/multilayer_server.js b/test/acceptance/multilayer_server.js index f39d4db0..b95c9a74 100644 --- a/test/acceptance/multilayer_server.js +++ b/test/acceptance/multilayer_server.js @@ -12,8 +12,12 @@ var CartodbWindshaft = require('../../lib/cartodb/server'); var serverOptions = require('../../lib/cartodb/server_options'); describe('tests from old api translated to multilayer', function() { - var server = new CartodbWindshaft(serverOptions); - server.setMaxListeners(0); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + server.setMaxListeners(0); + }); var layergroupUrl = '/api/v1/map'; diff --git a/test/acceptance/named_layers.js b/test/acceptance/named_layers.js index 7d34deb8..0f8998e4 100644 --- a/test/acceptance/named_layers.js +++ b/test/acceptance/named_layers.js @@ -12,7 +12,11 @@ var TemplateMaps = require('../../lib/cartodb/backends/template_maps.js'); var step = require('step'); describe('named_layers', function() { - var server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); // configure redis pool instance to use in tests var redisPool = new RedisPool(global.environment.redis); diff --git a/test/acceptance/named_layers_visibility.js b/test/acceptance/named_layers_visibility.js index 585ae58d..bc8e3f6b 100644 --- a/test/acceptance/named_layers_visibility.js +++ b/test/acceptance/named_layers_visibility.js @@ -12,7 +12,12 @@ var mapnik = require('windshaft').mapnik; var IMAGE_TOLERANCE = 20; describe('layers visibility for previews', function() { - var server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); + // configure redis pool instance to use in tests var redisPool = new RedisPool(global.environment.redis); var templateMaps = new TemplateMaps(redisPool, { diff --git a/test/acceptance/named_maps_authentication.js b/test/acceptance/named_maps_authentication.js index 7215b014..00ac721e 100644 --- a/test/acceptance/named_maps_authentication.js +++ b/test/acceptance/named_maps_authentication.js @@ -10,7 +10,11 @@ var TemplateMaps = require('../../lib/cartodb/backends/template_maps.js'); var NamedMapsCacheEntry = require('../../lib/cartodb/cache/model/named_maps_entry'); describe('named maps authentication', function() { - var server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); // configure redis pool instance to use in tests var redisPool = new RedisPool(global.environment.redis); diff --git a/test/acceptance/named_maps_cache.js b/test/acceptance/named_maps_cache.js index c4f7f92d..6ebd05b1 100644 --- a/test/acceptance/named_maps_cache.js +++ b/test/acceptance/named_maps_cache.js @@ -8,7 +8,11 @@ var serverOptions = require('../../lib/cartodb/server_options'); var TemplateMaps = require('../../lib/cartodb/backends/template_maps.js'); describe('named maps provider cache', function() { - var server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); // configure redis pool instance to use in tests var redisPool = new RedisPool(global.environment.redis); diff --git a/test/acceptance/named_maps_stats.js b/test/acceptance/named_maps_stats.js index 14b512e5..f585d059 100644 --- a/test/acceptance/named_maps_stats.js +++ b/test/acceptance/named_maps_stats.js @@ -10,7 +10,11 @@ var TemplateMaps = require('../../lib/cartodb/backends/template_maps.js'); var NamedMapsCacheEntry = require('../../lib/cartodb/cache/model/named_maps_entry'); describe('named maps preview stats', function() { - var server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); var redisPool = new RedisPool(global.environment.redis); diff --git a/test/acceptance/overviews_metadata.js b/test/acceptance/overviews_metadata.js index 76bc5341..08cf37a9 100644 --- a/test/acceptance/overviews_metadata.js +++ b/test/acceptance/overviews_metadata.js @@ -14,7 +14,11 @@ var windshaft = require('windshaft'); describe('overviews metadata', function() { - var server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); // configure redis pool instance to use in tests var redisPool = new RedisPool(global.environment.redis); @@ -112,7 +116,11 @@ describe('overviews metadata', function() { }); describe('overviews metadata with filters', function() { - var server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); // configure redis pool instance to use in tests var redisPool = new RedisPool(global.environment.redis); diff --git a/test/acceptance/overviews_metadata_named_maps.js b/test/acceptance/overviews_metadata_named_maps.js index cd771ee3..80451222 100644 --- a/test/acceptance/overviews_metadata_named_maps.js +++ b/test/acceptance/overviews_metadata_named_maps.js @@ -13,7 +13,11 @@ var step = require('step'); var windshaft = require('windshaft'); describe('overviews metadata for named maps', function() { - var server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); // configure redis pool instance to use in tests var redisPool = new RedisPool(global.environment.redis); diff --git a/test/acceptance/overviews_queries.js b/test/acceptance/overviews_queries.js index ad7599a6..6fdf7d62 100644 --- a/test/acceptance/overviews_queries.js +++ b/test/acceptance/overviews_queries.js @@ -6,9 +6,12 @@ var ServerOptions = require('./ported/support/ported_server_options'); var testClient = require('./ported/support/test_client'); describe('overviews_queries', function() { + var server; - var server = cartodbServer(ServerOptions); - server.setMaxListeners(0); + before(function () { + server = cartodbServer(ServerOptions); + server.setMaxListeners(0); + }); var IMAGE_EQUALS_TOLERANCE_PER_MIL = 2; diff --git a/test/acceptance/ported/attributes.js b/test/acceptance/ported/attributes.js index 8b36c3e3..ba241a4f 100644 --- a/test/acceptance/ported/attributes.js +++ b/test/acceptance/ported/attributes.js @@ -7,8 +7,12 @@ var PortedServerOptions = require('./support/ported_server_options'); var LayergroupToken = require('../../../lib/cartodb/models/layergroup-token'); describe('attributes', function() { - var server = cartodbServer(PortedServerOptions); - server.setMaxListeners(0); + var server; + + before(function () { + server = cartodbServer(PortedServerOptions); + server.setMaxListeners(0); + }); var test_mapconfig_1 = { version: '1.1.0', diff --git a/test/acceptance/ported/multilayer.js b/test/acceptance/ported/multilayer.js index 9da57948..0f43af8d 100644 --- a/test/acceptance/ported/multilayer.js +++ b/test/acceptance/ported/multilayer.js @@ -10,9 +10,13 @@ var ServerOptions = require('./support/ported_server_options'); var LayergroupToken = require('../../../lib/cartodb/models/layergroup-token'); describe('multilayer', function() { + var server; + + before(function () { + server = cartodbServer(ServerOptions); + server.setMaxListeners(0); + }); - var server = cartodbServer(ServerOptions); - server.setMaxListeners(0); mapnik.register_system_fonts(); var available_system_fonts = _.keys(mapnik.fontFiles()); diff --git a/test/acceptance/ported/multilayer_error_cases.js b/test/acceptance/ported/multilayer_error_cases.js index 5752a9b5..dcd52f6d 100644 --- a/test/acceptance/ported/multilayer_error_cases.js +++ b/test/acceptance/ported/multilayer_error_cases.js @@ -8,9 +8,12 @@ var testClient = require('./support/test_client'); var TestClient = require('../../support/test-client'); describe('multilayer error cases', function() { + var server; - var server = cartodbServer(ServerOptions); - server.setMaxListeners(0); + before(function () { + server = cartodbServer(ServerOptions); + server.setMaxListeners(0); + }); // var client = null; afterEach(function(done) { diff --git a/test/acceptance/ported/multilayer_interactivity.js b/test/acceptance/ported/multilayer_interactivity.js index ac406725..1e46e512 100644 --- a/test/acceptance/ported/multilayer_interactivity.js +++ b/test/acceptance/ported/multilayer_interactivity.js @@ -8,9 +8,12 @@ var PortedServerOptions = require('./support/ported_server_options'); var LayergroupToken = require('../../../lib/cartodb/models/layergroup-token'); describe('multilayer interactivity and layers order', function() { + var server; - var server = cartodbServer(PortedServerOptions); - server.setMaxListeners(0); + before(function () { + server = cartodbServer(PortedServerOptions); + server.setMaxListeners(0); + }); function layerType(layer) { return layer.type || 'undefined'; diff --git a/test/acceptance/ported/raster.js b/test/acceptance/ported/raster.js index 6425e090..349d4a07 100644 --- a/test/acceptance/ported/raster.js +++ b/test/acceptance/ported/raster.js @@ -8,8 +8,12 @@ var LayergroupToken = require('../../../lib/cartodb/models/layergroup-token'); describe('raster', function() { - var server = cartodbServer(ServerOptions); - server.setMaxListeners(0); + var server; + + before(function () { + server = cartodbServer(ServerOptions); + server.setMaxListeners(0); + }); function checkCORSHeaders(res) { assert.equal(res.headers['access-control-allow-headers'], 'X-Requested-With, X-Prototype-Version, X-CSRF-Token'); diff --git a/test/acceptance/ported/retina.js b/test/acceptance/ported/retina.js index 137f9738..a5c29416 100644 --- a/test/acceptance/ported/retina.js +++ b/test/acceptance/ported/retina.js @@ -11,9 +11,12 @@ describe('retina support', function() { var layergroupId = null; - var server = cartodbServer(ServerOptions); - server.setMaxListeners(0); + var server; + before(function () { + server = cartodbServer(ServerOptions); + server.setMaxListeners(0); + }); var keysToDelete; beforeEach(function(done) { diff --git a/test/acceptance/ported/server.js b/test/acceptance/ported/server.js index b18bae07..a38b4da7 100644 --- a/test/acceptance/ported/server.js +++ b/test/acceptance/ported/server.js @@ -6,9 +6,12 @@ var ServerOptions = require('./support/ported_server_options'); var testClient = require('./support/test_client'); describe('server', function() { + var server; - var server = cartodbServer(ServerOptions); - server.setMaxListeners(0); + before(function () { + server = cartodbServer(ServerOptions); + server.setMaxListeners(0); + }); after(function() { testHelper.rmdirRecursiveSync(global.environment.millstone.cache_basedir); diff --git a/test/acceptance/ported/server_gettile.js b/test/acceptance/ported/server_gettile.js index f40b680b..4dc089c9 100644 --- a/test/acceptance/ported/server_gettile.js +++ b/test/acceptance/ported/server_gettile.js @@ -8,9 +8,12 @@ var ServerOptions = require('./support/ported_server_options'); var testClient = require('./support/test_client'); describe('server_gettile', function() { + var server; - var server = cartodbServer(ServerOptions); - server.setMaxListeners(0); + before(function () { + server = cartodbServer(ServerOptions); + server.setMaxListeners(0); + }); var IMAGE_EQUALS_TOLERANCE_PER_MIL = 25; diff --git a/test/acceptance/ported/server_png8_format.js b/test/acceptance/ported/server_png8_format.js index ee565498..c2703994 100644 --- a/test/acceptance/ported/server_png8_format.js +++ b/test/acceptance/ported/server_png8_format.js @@ -11,17 +11,22 @@ var LayergroupToken = require('../../../lib/cartodb/models/layergroup-token'); var IMAGE_EQUALS_TOLERANCE_PER_MIL = 85; describe('server_png8_format', function() { - var serverOptionsPng32 = ServerOptions; - serverOptionsPng32.grainstore = _.clone(ServerOptions.grainstore); - serverOptionsPng32.grainstore.mapnik_tile_format = 'png32'; - var serverPng32 = cartodbServer(serverOptionsPng32); - serverPng32.setMaxListeners(0); + var serverPng32; + var serverPng8; - var serverOptionsPng8 = ServerOptions; - serverOptionsPng8.grainstore = _.clone(ServerOptions.grainstore); - serverOptionsPng8.grainstore.mapnik_tile_format = 'png8:m=h'; - var serverPng8 = cartodbServer(serverOptionsPng8); - serverPng8.setMaxListeners(0); + before(function () { + var serverOptionsPng32 = ServerOptions; + serverOptionsPng32.grainstore = _.clone(ServerOptions.grainstore); + serverOptionsPng32.grainstore.mapnik_tile_format = 'png32'; + serverPng32 = cartodbServer(serverOptionsPng32); + serverPng32.setMaxListeners(0); + + var serverOptionsPng8 = ServerOptions; + serverOptionsPng8.grainstore = _.clone(ServerOptions.grainstore); + serverOptionsPng8.grainstore.mapnik_tile_format = 'png8:m=h'; + serverPng8 = cartodbServer(serverOptionsPng8); + serverPng8.setMaxListeners(0); + }); var layergroupId; diff --git a/test/acceptance/ported/support/test_client.js b/test/acceptance/ported/support/test_client.js index ab4576b6..d3e08328 100644 --- a/test/acceptance/ported/support/test_client.js +++ b/test/acceptance/ported/support/test_client.js @@ -39,9 +39,18 @@ module.exports = { getTileLayer: getTileLayer }; +var server; -var server = new CartodbServer(PortedServerOptions); -server.setMaxListeners(0); +function getServer () { + if (server) { + return server; + } + + server = new CartodbServer(PortedServerOptions); + server.setMaxListeners(0); + + return server; +} var jsonContentType = 'application/json; charset=utf-8'; var jsContentType = 'text/javascript; charset=utf-8'; @@ -349,7 +358,7 @@ function getGeneric(layergroupConfig, url, expectedResponse, callback) { 'Content-Type': 'application/json; charset=utf-8' } }; - assert.response(server, request, expectedResponse, function (res, err) { + assert.response(getServer(), request, expectedResponse, function (res, err) { next(err, res); }); }, @@ -384,7 +393,7 @@ function getGeneric(layergroupConfig, url, expectedResponse, callback) { request.encoding = 'binary'; } - assert.response(server, request, expectedResponse, function (res, err) { + assert.response(getServer(), request, expectedResponse, function (res, err) { next(err, res); }); }, diff --git a/test/acceptance/ported/torque.js b/test/acceptance/ported/torque.js index 6d761b3d..fa86d4e5 100644 --- a/test/acceptance/ported/torque.js +++ b/test/acceptance/ported/torque.js @@ -9,9 +9,12 @@ var ServerOptions = require('./support/ported_server_options'); var LayergroupToken = require('../../../lib/cartodb/models/layergroup-token'); describe('torque', function() { + var server; - var server = cartodbServer(ServerOptions); - server.setMaxListeners(0); + before(function () { + server = cartodbServer(ServerOptions); + server.setMaxListeners(0); + }); var keysToDelete; beforeEach(function() { diff --git a/test/acceptance/ported/torque_boundaries.js b/test/acceptance/ported/torque_boundaries.js index 4dde46a0..9ae1face 100644 --- a/test/acceptance/ported/torque_boundaries.js +++ b/test/acceptance/ported/torque_boundaries.js @@ -7,6 +7,13 @@ var ServerOptions = require('./support/ported_server_options'); var LayergroupToken = require('../../../lib/cartodb/models/layergroup-token'); describe('torque boundary points', function() { + var server; + + before(function () { + server = cartodbServer(ServerOptions); + server.setMaxListeners(0); + }); + var layergroupIdToDelete = null; beforeEach(function() { @@ -22,9 +29,6 @@ describe('torque boundary points', function() { testHelper.deleteRedisKeys(keysToDelete, done); }); - var server = cartodbServer(ServerOptions); - server.setMaxListeners(0); - var boundaryPointsMapConfig = { version: '1.1.0', layers: [ diff --git a/test/acceptance/server.js b/test/acceptance/server.js index ca4a9c8b..7e917b09 100644 --- a/test/acceptance/server.js +++ b/test/acceptance/server.js @@ -9,8 +9,12 @@ var serverOptions = require('../../lib/cartodb/server_options'); describe('server', function() { - var server = new CartodbWindshaft(serverOptions); - server.setMaxListeners(0); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + server.setMaxListeners(0); + }); // TODO: I guess this should be a 404 instead... it("get call to server returns 200", function(done){ @@ -54,8 +58,12 @@ describe('server', function() { }); describe('server old_api', function() { - var server = new CartodbWindshaft(serverOptions); - server.setMaxListeners(0); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + server.setMaxListeners(0); + }); // See https://github.com/CartoDB/Windshaft-cartodb/issues/115 it.skip("get'ing tile with not-strictly-valid style", function(done) { diff --git a/test/acceptance/templates.js b/test/acceptance/templates.js index 230a64b1..810e1c99 100644 --- a/test/acceptance/templates.js +++ b/test/acceptance/templates.js @@ -24,9 +24,13 @@ var serverOptions = require(__dirname + '/../../lib/cartodb/server_options'); var LayergroupToken = require('../../lib/cartodb/models/layergroup-token'); describe('template_api', function() { - var server = new CartodbWindshaft(serverOptions); - server.setMaxListeners(0); - server.layergroupAffectedTablesCache.cache.reset(); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + server.setMaxListeners(0); + server.layergroupAffectedTablesCache.cache.reset(); + }); var httpRendererResourcesServer; before(function(done) { diff --git a/test/acceptance/turbo-carto/named-maps.js b/test/acceptance/turbo-carto/named-maps.js index fde34922..af31ce80 100644 --- a/test/acceptance/turbo-carto/named-maps.js +++ b/test/acceptance/turbo-carto/named-maps.js @@ -8,7 +8,11 @@ var mapnik = require('windshaft').mapnik; var IMAGE_TOLERANCE_PER_MIL = 10; describe('turbo-carto for named maps', function() { - var server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); var keysToDelete; diff --git a/test/acceptance/widgets/named-maps.js b/test/acceptance/widgets/named-maps.js index 4caa6a0c..f0ca0125 100644 --- a/test/acceptance/widgets/named-maps.js +++ b/test/acceptance/widgets/named-maps.js @@ -12,7 +12,11 @@ var serverOptions = require('../../../lib/cartodb/server_options'); var LayergroupToken = require('../../../lib/cartodb/models/layergroup-token'); describe('named-maps widgets', function() { - var server = new CartodbWindshaft(serverOptions); + var server; + + before(function () { + server = new CartodbWindshaft(serverOptions); + }); var username = 'localhost'; var widgetsTemplateName = 'widgets-template';