diff --git a/NEWS.md b/NEWS.md index 2bd15df1..58d6104f 100644 --- a/NEWS.md +++ b/NEWS.md @@ -6,6 +6,7 @@ Released 2019-mm-dd Announcements: - Added mechanism to inject custom middlewares through configuration. +- Stop requiring unused config properties: "base_url", "base_url_mapconfig", and "base_url_templated". ## 7.2.0 Released 2019-09-30 diff --git a/lib/cartodb/api/api-router.js b/lib/cartodb/api/api-router.js index ac317839..2b267161 100644 --- a/lib/cartodb/api/api-router.js +++ b/lib/cartodb/api/api-router.js @@ -202,8 +202,8 @@ module.exports = class ApiRouter { app.layergroupAffectedTablesCache = this.layergroupAffectedTablesCache; } - Object.keys(this.serverOptions.routes).forEach(apiVersion => { - const routes = this.serverOptions.routes[apiVersion]; + Object.keys(this.serverOptions.routes).forEach(api => { + const routes = this.serverOptions.routes[api]; const apiRouter = router({ mergeParams: true }); const apiMiddlewares = routes.middlewares || []; diff --git a/lib/cartodb/server.js b/lib/cartodb/server.js index a200b062..0ce6380e 100644 --- a/lib/cartodb/server.js +++ b/lib/cartodb/server.js @@ -14,7 +14,9 @@ const ServerInfoController = require('./server-info-controller'); const StatsClient = require('./stats/client'); module.exports = function createServer (serverOptions) { - validateOptions(serverOptions); + if (!serverOptions.hasOwnProperty('routes')) { + throw new Error('Must initialise server with "routes" as base paths configuration'); + } // Make stats client globally accessible global.statsClient = StatsClient.getInstance(serverOptions.statsd); @@ -41,12 +43,6 @@ module.exports = function createServer (serverOptions) { return app; }; -function validateOptions(opts) { - if (!_.isString(opts.base_url) || !_.isString(opts.base_url_mapconfig) || !_.isString(opts.base_url_templated)) { - throw new Error("Must initialise server with: 'base_url'/'base_url_mapconfig'/'base_url_templated' URLs"); - } -} - function bootstrapFonts(opts) { // Set carto renderer configuration for MMLStore opts.grainstore.carto_env = opts.grainstore.carto_env || {}; diff --git a/lib/cartodb/server_options.js b/lib/cartodb/server_options.js index 5c9da8c6..b60b92ba 100644 --- a/lib/cartodb/server_options.js +++ b/lib/cartodb/server_options.js @@ -63,29 +63,11 @@ module.exports = { port: global.environment.port, host: global.environment.host }, - // FIXME: Remove it. This is no longer needed, paths are defined in routers - // This is for inline maps and table maps - base_url: global.environment.base_url_legacy || '/tiles/:table', - - /// @deprecated with Windshaft-0.17.0 - ///base_url_notable: '/tiles', - - // FIXME: Remove it. This is no longer needed, paths are defined in routers - // This is for Detached maps - // - // "maps" is the official, while - // "tiles/layergroup" is for backward compatibility up to 1.6.x - // - base_url_mapconfig: global.environment.base_url_detached || '(?:/maps|/tiles/layergroup)', - - // FIXME: Remove it. This is no longer needed, paths are defined in routers - base_url_templated: global.environment.base_url_templated || '(?:/maps/named|/tiles/template)', - // Base URLs for the APIs // // See http://github.com/CartoDB/Windshaft-cartodb/wiki/Unified-Map-API routes: global.environment.routes || { - v1: { + api: { paths: [ '/api/v1', '/user/:user/api/v1', @@ -104,29 +86,8 @@ module.exports = { '/map/named' ] } - }, - // For compatibility with versions up to 1.6.x - v0: { - paths: [ - '/tiles' - ], - // Base url for the Detached Maps API - // "/tiles/layergroup" is for compatibility with versions up to 1.6.x - map: { - paths: [ - '/layergroup' - ] - }, - // Base url for the Templated Maps API - // "/tiles/template" is for compatibility with versions up to 1.6.x - template: { - paths: [ - '/template' - ] - } } }, - grainstore: { map: { // TODO: allow to specify in configuration diff --git a/test/acceptance/ported/attributes.js b/test/acceptance/ported/attributes.js index 6f899c64..13af276e 100644 --- a/test/acceptance/ported/attributes.js +++ b/test/acceptance/ported/attributes.js @@ -58,7 +58,7 @@ describe('attributes', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', @@ -86,7 +86,7 @@ describe('attributes', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/attributes/1', + url: '/api/v1/map/' + expected_token + '/0/attributes/1', method: 'GET', headers: { host: 'localhost' @@ -109,7 +109,7 @@ describe('attributes', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/1/attributes/1', + url: '/api/v1/map/' + expected_token + '/1/attributes/1', method: 'GET', headers: { host: 'localhost' @@ -128,7 +128,7 @@ describe('attributes', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/1/attributes/-666', + url: '/api/v1/map/' + expected_token + '/1/attributes/-666', method: 'GET', headers: { host: 'localhost' @@ -169,7 +169,7 @@ describe('attributes', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', @@ -202,7 +202,7 @@ describe('attributes', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', @@ -230,7 +230,7 @@ describe('attributes', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + + url: '/api/v1/map/' + expected_token + '/0/attributes/1?callback=test', method: 'GET', headers: { @@ -257,7 +257,7 @@ describe('attributes', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/1/attributes/1', + url: '/api/v1/map/' + expected_token + '/1/attributes/1', method: 'GET', headers: { host: 'localhost' @@ -297,7 +297,7 @@ describe('attributes', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', diff --git a/test/acceptance/ported/multilayer.js b/test/acceptance/ported/multilayer.js index d7a0b0c7..f996d45c 100644 --- a/test/acceptance/ported/multilayer.js +++ b/test/acceptance/ported/multilayer.js @@ -51,7 +51,7 @@ describe('multilayer', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json; charset=utf-8' }, data: JSON.stringify(layergroup) @@ -92,7 +92,7 @@ describe('multilayer', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup) @@ -108,7 +108,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/0/0.png', + url: '/api/v1/map/' + expected_token + '/0/0/0.png', method: 'GET', encoding: 'binary', headers: { host: 'localhost' } @@ -162,7 +162,7 @@ describe('multilayer', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup) @@ -185,7 +185,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/0/0.png', + url: '/api/v1/map/' + expected_token + '/0/0/0.png', method: 'GET', encoding: 'binary', headers: { host: 'localhost' } @@ -204,7 +204,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/0/0/0.grid.json', + url: '/api/v1/map/' + expected_token + '/0/0/0/0.grid.json', method: 'GET', headers: { host: 'localhost' } }, {}, function(res) { @@ -222,7 +222,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + + url: '/api/v1/map/' + expected_token + '/1/0/0/0.grid.json?interactivity=cartodb_id', method: 'GET', headers: { host: 'localhost' } @@ -275,7 +275,7 @@ describe('multilayer', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup?' + querystring.stringify({ + url: '/api/v1/map?' + querystring.stringify({ config: JSON.stringify(layergroup) }), method: 'GET', @@ -300,7 +300,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/0/0.png', + url: '/api/v1/map/' + expected_token + '/0/0/0.png', method: 'GET', encoding: 'binary', headers: { host: 'localhost' } @@ -319,7 +319,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + + url: '/api/v1/map/' + expected_token + '/0/0/0/0.grid.json?interactivity=cartodb_id', method: 'GET', headers: { host: 'localhost' } @@ -338,7 +338,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + + url: '/api/v1/map/' + expected_token + '/1/0/0/0.grid.json?interactivity=cartodb_id', method: 'GET', headers: { host: 'localhost' } @@ -391,7 +391,7 @@ describe('multilayer', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup?' + querystring.stringify({ + url: '/api/v1/map?' + querystring.stringify({ config: JSON.stringify(layergroup), callback: 'jsonp_test' }), @@ -427,7 +427,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/0/0.png', + url: '/api/v1/map/' + expected_token + '/0/0/0.png', method: 'GET', encoding: 'binary', headers: { host: 'localhost' } @@ -446,7 +446,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + + url: '/api/v1/map/' + expected_token + '/0/0/0/0.grid.json?interactivity=cartodb_id', method: 'GET', headers: { host: 'localhost' } @@ -465,7 +465,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + + url: '/api/v1/map/' + expected_token + '/1/0/0/0.grid.json?interactivity=cartodb_id', method: 'GET', headers: { host: 'localhost' } @@ -527,7 +527,7 @@ describe('multilayer', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup) @@ -547,7 +547,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/0/0.png', + url: '/api/v1/map/' + expected_token + '/0/0/0.png', method: 'GET', encoding: 'binary', headers: { host: 'localhost' } @@ -566,7 +566,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + + url: '/api/v1/map/' + expected_token + '/0/0/0/0.grid.json?interactivity=cartodb_id', method: 'GET', headers: { host: 'localhost' } @@ -585,7 +585,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + + url: '/api/v1/map/' + expected_token + '/1/0/0/0.grid.json?interactivity=cartodb_id', method: 'GET', headers: { host: 'localhost' } @@ -604,7 +604,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/1/attributes/4', + url: '/api/v1/map/' + expected_token + '/1/attributes/4', method: 'GET', headers: { host: 'localhost' } }, {}, function(res, err) { @@ -624,7 +624,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/2/0/0/0.json.torque', + url: '/api/v1/map/' + expected_token + '/2/0/0/0.json.torque', method: 'GET', headers: { host: 'localhost' } }, {}, function(res, err) { next(err, res); }); @@ -647,7 +647,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/1/0/0/0.json.torque', + url: '/api/v1/map/' + expected_token + '/1/0/0/0.json.torque', method: 'GET', headers: { host: 'localhost' } }, {}, function(res, err) { next(err, res); }); @@ -707,7 +707,7 @@ describe('multilayer', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup1) @@ -723,7 +723,7 @@ describe('multilayer', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup2) @@ -740,7 +740,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + token1 + '/0/0/0.png', + url: '/api/v1/map/' + token1 + '/0/0/0.png', method: 'GET', encoding: 'binary', headers: { host: 'localhost' } @@ -759,7 +759,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + token1 + '/0/0/0/0.grid.json?interactivity=cartodb_id', + url: '/api/v1/map/' + token1 + '/0/0/0/0.grid.json?interactivity=cartodb_id', method: 'GET', headers: { host: 'localhost' } }, {}, function(res) { @@ -777,7 +777,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + token2 + '/0/0/0.png', + url: '/api/v1/map/' + token2 + '/0/0/0.png', method: 'GET', encoding: 'binary', headers: { host: 'localhost' } @@ -796,7 +796,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + token2 + '/0/0/0/0.grid.json?interactivity=cartodb_id', + url: '/api/v1/map/' + token2 + '/0/0/0/0.grid.json?interactivity=cartodb_id', method: 'GET', headers: { host: 'localhost' } }, {}, function(res) { @@ -853,7 +853,7 @@ describe('multilayer', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup) @@ -875,7 +875,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/0/0.png', + url: '/api/v1/map/' + expected_token + '/0/0/0.png', method: 'GET', encoding: 'binary', headers: { host: 'localhost' } @@ -921,7 +921,7 @@ describe('multilayer', function() { }; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup) @@ -950,7 +950,7 @@ describe('multilayer', function() { ] }; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup) @@ -985,7 +985,7 @@ describe('multilayer', function() { function doBadPost() { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: _.template(tpl, {font:'bogus'}) @@ -1005,7 +1005,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: _.template(tpl, {font:available_system_fonts[0]}) @@ -1033,7 +1033,7 @@ describe('multilayer', function() { it("geting options on layergroup should return CORS headers", function(done){ const allowHeaders = 'X-Requested-With, X-Prototype-Version, X-CSRF-Token, Authorization, Content-Type'; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'OPTIONS' },{ status: 200, @@ -1069,7 +1069,7 @@ describe('multilayer', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup) @@ -1091,7 +1091,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/0/0/0.grid.json', + url: '/api/v1/map/' + expected_token + '/0/0/0/0.grid.json', method: 'GET', headers: { host: 'localhost' } }, {}, function(res) { @@ -1145,7 +1145,7 @@ describe('multilayer', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup) @@ -1208,7 +1208,7 @@ describe('multilayer', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup) @@ -1226,7 +1226,7 @@ describe('multilayer', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + token1 + '/0/0/0.png', + url: '/api/v1/map/' + token1 + '/0/0/0.png', method: 'GET', encoding: 'binary', headers: { host: 'localhost' } diff --git a/test/acceptance/ported/multilayer_error_cases.js b/test/acceptance/ported/multilayer_error_cases.js index 6194879b..246f9964 100644 --- a/test/acceptance/ported/multilayer_error_cases.js +++ b/test/acceptance/ported/multilayer_error_cases.js @@ -27,7 +27,7 @@ describe('multilayer error cases', function() { it("post layergroup with wrong Content-Type", function(done) { assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', @@ -43,7 +43,7 @@ describe('multilayer error cases', function() { it("post layergroup with no layers", function(done) { assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', @@ -59,7 +59,7 @@ describe('multilayer error cases', function() { it("post layergroup jsonp errors are returned with 200 status", function(done) { assert.response(server, { - url: '/database/windshaft_test/layergroup?callback=test', + url: '/api/v1/map?callback=test', method: 'POST', headers: { host: 'localhost', @@ -90,7 +90,7 @@ describe('multilayer error cases', function() { ] }; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', @@ -116,7 +116,7 @@ describe('multilayer error cases', function() { }}] }; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', @@ -199,7 +199,7 @@ describe('multilayer error cases', function() { ] }; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', @@ -238,7 +238,7 @@ describe('multilayer error cases', function() { ] }; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', @@ -283,7 +283,7 @@ describe('multilayer error cases', function() { }; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', @@ -389,7 +389,7 @@ describe('multilayer error cases', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/deadbeef/0/0/0/0.grid.json', + url: '/api/v1/map/deadbeef/0/0/0/0.grid.json', method: 'GET', encoding: 'binary', headers: { @@ -425,7 +425,7 @@ describe('multilayer error cases', function() { }; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: {'Content-Type': 'application/json; charset=utf-8' }, data: '{' + JSON.stringify(layergroup) diff --git a/test/acceptance/ported/multilayer_interactivity.js b/test/acceptance/ported/multilayer_interactivity.js index c2c11fad..62948038 100644 --- a/test/acceptance/ported/multilayer_interactivity.js +++ b/test/acceptance/ported/multilayer_interactivity.js @@ -30,7 +30,7 @@ describe('multilayer interactivity and layers order', function() { assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', diff --git a/test/acceptance/ported/raster.js b/test/acceptance/ported/raster.js index 58a6b2bf..574de93c 100644 --- a/test/acceptance/ported/raster.js +++ b/test/acceptance/ported/raster.js @@ -48,7 +48,7 @@ describe('raster', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(mapconfig) @@ -73,7 +73,7 @@ describe('raster', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/0/0.png', + url: '/api/v1/map/' + expected_token + '/0/0/0.png', method: 'GET', encoding: 'binary', headers: { host: 'localhost' } @@ -131,7 +131,7 @@ describe('raster', function() { assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', diff --git a/test/acceptance/ported/retina.js b/test/acceptance/ported/retina.js index bdc1188c..d2a82306 100644 --- a/test/acceptance/ported/retina.js +++ b/test/acceptance/ported/retina.js @@ -40,7 +40,7 @@ describe('retina support', function() { assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', @@ -71,7 +71,7 @@ describe('retina support', function() { function testRetinaImage(scaleFactor, responseHead, assertFn) { assert.response(server, { - url: '/database/windshaft_test/layergroup/' + layergroupId + '/0/0/0' + scaleFactor + '.png', + url: '/api/v1/map/' + layergroupId + '/0/0/0' + scaleFactor + '.png', method: 'GET', encoding: 'binary', headers: { diff --git a/test/acceptance/ported/server_png8_format.js b/test/acceptance/ported/server_png8_format.js index 86af4682..ab4f2758 100644 --- a/test/acceptance/ported/server_png8_format.js +++ b/test/acceptance/ported/server_png8_format.js @@ -66,7 +66,7 @@ describe('server_png8_format', function() { assert.response( serverPng32, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', @@ -87,7 +87,7 @@ describe('server_png8_format', function() { var tilePartialUrl = _.template('/<%= z %>/<%= x %>/<%= y %>.png', tile); var requestPayload = { - url: '/database/windshaft_test/layergroup/' + layergroupId + tilePartialUrl, + url: '/api/v1/map/' + layergroupId + tilePartialUrl, method: 'GET', encoding: 'binary', headers: { diff --git a/test/acceptance/ported/support/ported_server_options.js b/test/acceptance/ported/support/ported_server_options.js index cf040a48..10908124 100644 --- a/test/acceptance/ported/support/ported_server_options.js +++ b/test/acceptance/ported/support/ported_server_options.js @@ -9,35 +9,6 @@ var overviewsQueryRewriter = new OverviewsQueryRewriter({ }); module.exports = _.extend({}, serverOptions, { - // FIXME: Remove it. This is no longer needed, paths are defined in routers - base_url: '/database/:dbname/table/:table', - // FIXME: Remove it. This is no longer needed, paths are defined in routers - base_url_mapconfig: '/database/:dbname/layergroup', - - routes: { - v0: { - paths: [ - '/tiles', - '/database/:dbname' - ], - // Base url for the Detached Maps API - // "/tiles/layergroup" is for compatibility with versions up to 1.6.x - map: { - paths: [ - '/layergroup' - ] - }, - // Base url for the Templated Maps API - // "/tiles/template" is for compatibility with versions up to 1.6.x - template: { - paths: [ - '/template' - ] - } - } - }, - - grainstore: { datasource: { geometry_field: 'the_geom', diff --git a/test/acceptance/ported/support/test_client.js b/test/acceptance/ported/support/test_client.js index 01d00bf2..67d5c11e 100644 --- a/test/acceptance/ported/support/test_client.js +++ b/test/acceptance/ported/support/test_client.js @@ -138,7 +138,7 @@ function layergroupRequest(layergroupConfig, method, callbackName, extraParams) method = method || 'POST'; var request = { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', headers: { host: 'localhost', 'Content-Type': 'application/json' @@ -346,7 +346,7 @@ function getGeneric(layergroupConfig, url, expectedResponse, callback) { function requestLayergroup() { var next = this; var request = { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', @@ -379,7 +379,7 @@ function getGeneric(layergroupConfig, url, expectedResponse, callback) { var next = this; - var finalUrl = '/database/windshaft_test/layergroup/' + _.template(url, { + var finalUrl = '/api/v1/map/' + _.template(url, { layergroupid: layergroupid }); @@ -475,7 +475,7 @@ function withLayergroup(layergroupConfig, options, callback) { const urlTpl = function ({layergroupid, cache_buster = null, tile }) { const { signer, token , cacheBuster } = LayergroupToken.parse(layergroupid); - const base = '/database/windshaft_test/layergroup/'; + const base = '/api/v1/map/'; return `${base}${signerTpl({signer})}${token}${cacheTpl({cache_buster, cacheBuster})}${tile}`; }; diff --git a/test/acceptance/ported/torque.js b/test/acceptance/ported/torque.js index 82f3fda1..31f3cf55 100644 --- a/test/acceptance/ported/torque.js +++ b/test/acceptance/ported/torque.js @@ -54,7 +54,7 @@ describe('torque', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup) @@ -77,7 +77,7 @@ describe('torque', function() { var css = 'Map { -torque-frame-count: 2; }'; layergroup.layers[0].options.cartocss = css; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup) @@ -100,7 +100,7 @@ describe('torque', function() { var css = 'Map { -torque-frame-count: 2; -torque-resolution: 3; }'; layergroup.layers[0].options.cartocss = css; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup) @@ -142,7 +142,7 @@ describe('torque', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup) @@ -185,7 +185,7 @@ describe('torque', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(mapconfig) @@ -224,7 +224,7 @@ describe('torque', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/0/0.png', + url: '/api/v1/map/' + expected_token + '/0/0/0.png', method: 'GET', encoding: 'binary', headers: { @@ -245,7 +245,7 @@ describe('torque', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/0/0/0.grid.json', + url: '/api/v1/map/' + expected_token + '/0/0/0/0.grid.json', method: 'GET', headers: { host: 'localhost' @@ -265,7 +265,7 @@ describe('torque', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/0/0/0.json.torque', + url: '/api/v1/map/' + expected_token + '/0/0/0/0.json.torque', method: 'GET', headers: { host: 'localhost' @@ -286,7 +286,7 @@ describe('torque', function() { assert.ifError(err); var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/0/0/0.torque.json', + url: '/api/v1/map/' + expected_token + '/0/0/0/0.torque.json', method: 'GET', headers: { host: 'localhost' @@ -333,7 +333,7 @@ describe('torque', function() { { var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(mapconfig) @@ -382,7 +382,7 @@ describe('torque', function() { var next = this; global.environment.postgres.port = 54777; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(mapconfig) @@ -431,7 +431,7 @@ describe('torque', function() { function request(){ var next = this; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(layergroup) diff --git a/test/acceptance/ported/torque_boundaries.js b/test/acceptance/ported/torque_boundaries.js index 1f0fcd80..55b26297 100644 --- a/test/acceptance/ported/torque_boundaries.js +++ b/test/acceptance/ported/torque_boundaries.js @@ -241,7 +241,7 @@ describe('torque boundary points', function() { it(desc, function (done) { assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(boundaryPointsMapConfig) @@ -255,7 +255,7 @@ describe('torque boundary points', function() { var partialUrl = tileRequest.z + '/' + tileRequest.x + '/' + tileRequest.y; assert.response(server, { - url: '/database/windshaft_test/layergroup/' + expected_token + '/0/' + partialUrl + '.json.torque', + url: '/api/v1/map/' + expected_token + '/0/' + partialUrl + '.json.torque', method: 'GET', headers: { host: 'localhost' @@ -358,7 +358,7 @@ describe('torque boundary points', function() { }; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(londonPointMapConfig) @@ -371,7 +371,7 @@ describe('torque boundary points', function() { assert.response(server, { - url: '/database/windshaft_test/layergroup/' + layergroupId + '/0/2/1/1.json.torque', + url: '/api/v1/map/' + layergroupId + '/0/2/1/1.json.torque', method: 'GET', headers: { host: 'localhost' @@ -424,7 +424,7 @@ describe('torque boundary points', function() { }; assert.response(server, { - url: '/database/windshaft_test/layergroup', + url: '/api/v1/map', method: 'POST', headers: { host: 'localhost', 'Content-Type': 'application/json' }, data: JSON.stringify(londonPointMapConfig) @@ -437,7 +437,7 @@ describe('torque boundary points', function() { assert.response(server, { - url: '/database/windshaft_test/layergroup/' + layergroupId + '/0/13/4255/2765.json.torque', + url: '/api/v1/map/' + layergroupId + '/0/13/4255/2765.json.torque', method: 'GET', headers: { host: 'localhost'