Add tests for ol.interaction.Draw#setActive
This commit is contained in:
@@ -470,6 +470,70 @@ describe('ol.interaction.Draw', function() {
|
||||
|
||||
});
|
||||
|
||||
describe('#setActive()', function() {
|
||||
var interaction;
|
||||
|
||||
beforeEach(function() {
|
||||
interaction = new ol.interaction.Draw({
|
||||
type: ol.geom.GeometryType.LINE_STRING
|
||||
});
|
||||
|
||||
expect(interaction.getActive()).to.be(true);
|
||||
|
||||
map.addInteraction(interaction);
|
||||
|
||||
// first point
|
||||
simulateEvent('pointermove', 10, 20);
|
||||
simulateEvent('pointerdown', 10, 20);
|
||||
simulateEvent('pointerup', 10, 20);
|
||||
|
||||
expect(interaction.sketchFeature_).not.to.be(null);
|
||||
});
|
||||
|
||||
afterEach(function() {
|
||||
map.removeInteraction(interaction);
|
||||
});
|
||||
|
||||
describe('#setActive(false)', function() {
|
||||
it('unsets the map from the feature overlay', function() {
|
||||
interaction.setActive(false);
|
||||
expect(interaction.overlay_.map_).to.be(null);
|
||||
});
|
||||
it('aborts the drawing', function() {
|
||||
interaction.setActive(false);
|
||||
expect(interaction.sketchFeature_).to.be(null);
|
||||
});
|
||||
it('fires change:active', function() {
|
||||
listenerSpy = sinon.spy(function() {
|
||||
// test that the interaction's change:active listener is called first
|
||||
expect(interaction.overlay_.map_).to.be(null);
|
||||
});
|
||||
interaction.on('change:active', listenerSpy);
|
||||
interaction.setActive(false);
|
||||
expect(listenerSpy.callCount).to.be(1);
|
||||
});
|
||||
});
|
||||
|
||||
describe('#setActive(true)', function() {
|
||||
beforeEach(function() {
|
||||
interaction.setActive(false);
|
||||
});
|
||||
it('sets the map into the feature overlay', function() {
|
||||
interaction.setActive(true);
|
||||
expect(interaction.overlay_.map_).to.be(map);
|
||||
});
|
||||
it('fires change:active', function() {
|
||||
listenerSpy = sinon.spy(function() {
|
||||
// test that the interaction's change:active listener is called first
|
||||
expect(interaction.overlay_.map_).not.to.be(null);
|
||||
});
|
||||
interaction.on('change:active', listenerSpy);
|
||||
interaction.setActive(true);
|
||||
expect(listenerSpy.callCount).to.be(1);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
goog.require('goog.dispose');
|
||||
|
||||
Reference in New Issue
Block a user