Add more ol.layer.Group tests

This commit is contained in:
Frederic Junod
2015-04-14 09:54:32 +02:00
parent 486a329cb4
commit dc0be1228c

View File

@@ -326,6 +326,31 @@ describe('ol.layer.Group', function() {
});
describe('layers events', function() {
it('listen / unlisten for layers added to the collection', function() {
var layers = new ol.Collection();
var layerGroup = new ol.layer.Group({
layers: layers
});
expect(goog.object.getCount(layerGroup.listenerKeys_)).to.eql(0);
var layer = new ol.layer.Layer({});
layers.push(layer);
expect(goog.object.getCount(layerGroup.listenerKeys_)).to.eql(1);
var listeners = layerGroup.listenerKeys_[goog.getUid(layer)];
expect(listeners.length).to.eql(2);
expect(listeners[0]).to.be.a(goog.events.Listener);
expect(listeners[1]).to.be.a(goog.events.Listener);
// remove the layer from the group
layers.pop();
expect(goog.object.getCount(layerGroup.listenerKeys_)).to.eql(0);
expect(listeners[0].removed).to.eql(true);
expect(listeners[1].removed).to.eql(true);
});
});
describe('#setLayers', function() {
@@ -485,6 +510,7 @@ describe('ol.layer.Group', function() {
goog.require('goog.dispose');
goog.require('goog.events.EventType');
goog.require('goog.events.Listener');
goog.require('goog.object');
goog.require('ol.ObjectEventType');
goog.require('ol.extent');