From 8d326dba2ff3cf0762dd22b705aeca16f26ef255 Mon Sep 17 00:00:00 2001 From: Sandro Santilli Date: Mon, 10 Jun 2013 11:53:28 +0200 Subject: [PATCH] Add test for CartoCSS error reporting on POST to layergroup --- test/acceptance/multilayer.js | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/test/acceptance/multilayer.js b/test/acceptance/multilayer.js index fa7292aa..4bd08e8d 100644 --- a/test/acceptance/multilayer.js +++ b/test/acceptance/multilayer.js @@ -429,6 +429,33 @@ suite('multilayer', function() { ); }); + test("layergroup creation fails if CartoCSS is bogus", function(done) { + var layergroup = { + stat_tag: 'random_tag', + version: '1.0.0', + layers: [ + { options: { + sql: 'select 1 as cartodb_id, !pixel_height! as h' + + 'ST_Buffer(!bbox!, -32*greatest(!pixel_width!,!pixel_height!)) as the_geom_webmercator', + cartocss: '#layer { polygon-fit:red; }', + cartocss_version: '2.0.1' + } } + ] + }; + assert.response(server, { + url: '/tiles/layergroup', + method: 'POST', + headers: {host: 'localhost', 'Content-Type': 'application/json' }, + data: JSON.stringify(layergroup) + }, {}, function(res) { + assert.equal(res.statusCode, 400, res.body); + var parsed = JSON.parse(res.body); + assert.ok(parsed.errors[0].match(/^style0/)); + assert.ok(parsed.errors[0].match(/Unrecognized rule: polygon-fit/)); + done(); + }); + }); + suiteTeardown(function(done) { // This test will add map_style records, like