Initial commit
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
var Backbone = require('backbone');
|
||||
var TileLayer = require('../../../../../src/geo/map/tile-layer');
|
||||
var CartoDBLayer = require('../../../../../src/geo/map/cartodb-layer');
|
||||
var TorqueLayer = require('../../../../../src/geo/map/torque-layer');
|
||||
var GMapsBaseLayer = require('../../../../../src/geo/map/gmaps-base-layer');
|
||||
var NamedMapSerializer = require('../../../../../src/windshaft/map-serializer/named-map-serializer/named-map-serializer');
|
||||
|
||||
describe('named-map-serializer', function () {
|
||||
var engineMock;
|
||||
describe('.serialize', function () {
|
||||
beforeEach(function () {
|
||||
engineMock = new Backbone.Model();
|
||||
this.layersCollection = new Backbone.Collection([]);
|
||||
this.dataviewsCollection = new Backbone.Collection([]);
|
||||
});
|
||||
|
||||
it('should include the buffersize', function () {
|
||||
var payload = NamedMapSerializer.serialize(this.layersCollection, this.dataviewsCollection);
|
||||
expect(payload.buffersize).toEqual({
|
||||
mvt: 0
|
||||
});
|
||||
});
|
||||
|
||||
it('should send styles of CartoDB and Torque layers using the right indexes', function () {
|
||||
this.layersCollection.reset([
|
||||
new TileLayer({}, { engine: engineMock }),
|
||||
new CartoDBLayer({ cartocss: 'cartoCSS1' }, { engine: engineMock }),
|
||||
new TorqueLayer({ cartocss: 'cartoCSS2' }, { engine: engineMock })
|
||||
]);
|
||||
|
||||
var payload = NamedMapSerializer.serialize(this.layersCollection, this.dataviewsCollection);
|
||||
|
||||
// TileLayer doesn't have cartoCSS but Maps API is aware
|
||||
// of them so they're taken into account when calculating
|
||||
// indexes for CartoDB and Torque layers
|
||||
expect(payload.styles).toEqual({
|
||||
1: 'cartoCSS1',
|
||||
2: 'cartoCSS2'
|
||||
});
|
||||
});
|
||||
|
||||
it('should ignore GMapsBase layers when calculating indexes', function () {
|
||||
this.layersCollection.reset([
|
||||
new GMapsBaseLayer({}, { engine: engineMock }),
|
||||
new CartoDBLayer({ cartocss: 'cartoCSS1' }, { engine: engineMock }),
|
||||
new TorqueLayer({ cartocss: 'cartoCSS2' }, { engine: engineMock })
|
||||
]);
|
||||
|
||||
var payload = NamedMapSerializer.serialize(this.layersCollection, this.dataviewsCollection);
|
||||
|
||||
// GMapsBaseLayer doesn't have cartoCSS and Maps API is
|
||||
// NOT aware of them so they're NOT taken into account
|
||||
// when calculating indexes for CartoDB and Torque layers
|
||||
expect(payload.styles).toEqual({
|
||||
0: 'cartoCSS1',
|
||||
1: 'cartoCSS2'
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user