add test to check that labels are wrapped

This commit is contained in:
Eneko Lakasta 2018-01-10 22:20:19 +01:00
parent 60d2cc0a4f
commit bcd14e4f77
3 changed files with 69 additions and 0 deletions

View File

@ -0,0 +1,69 @@
require('../support/test_helper');
var TestClient = require('../support/test-client');
var assert = require('../support/assert');
var IMAGE_TOLERANCE = 20;
describe('CartoCSS wrap', function () {
const options = {
sql: `
SELECT
5 as cartodb_id,
ST_Transform(ST_SetSRID(ST_MakePoint(-57.65625,-15.6230368),4326),3857) as the_geom_webmercator,
ST_SetSRID(ST_MakePoint(-57.65625,-15.62303683),4326) as the_geom,
'South America' as continent
`,
cartocss: `
#continent_points::labels {
text-name: [continent];
text-face-name: 'Open Sans Italic';
text-size: 10;
text-fill: lighten(#000,40);
text-transform: uppercase;
text-wrap-width: 30;
text-character-spacing: 2;
text-placement: point;
text-placement-type: dummy;
[zoom >= 3]{
text-character-spacing: 2;
text-size: 11;
}
}
`,
cartocss_version: '3.0.12'
};
const type = 'mapnik';
const mapConfig = {
version: '1.6.0',
layers: [
{
type,
id: 'layerLabel',
options
}
]
};
var keysToDelete;
beforeEach(function () {
keysToDelete = {};
});
afterEach(function (done) {
if (this.testClient) {
this.testClient.drain(done);
}
});
it.only("Label should be text-wrapped", function (done) {
this.testClient = new TestClient(mapConfig);
this.testClient.getTile(1, 0, 1, { layers: [0] }, (err, res, body) => {
var textWrapPath = './test/fixtures/text_wrap.png';
assert.imageIsSimilarToFile(body, textWrapPath, IMAGE_TOLERANCE, done);
});
});
});

BIN
test/fixtures/text_wrap.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

BIN
test/fixtures/text_wrap_bad.png vendored Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB