UNPKG

2gis-maps

Version:

Interactive 2GIS maps API, based on Leaflet

124 lines (104 loc) 5.44 kB
describe('DG.Label', function () { var map, mapContainer = document.createElement("div"); after(function() { mapContainer = null; }); beforeEach(function () { map = new DG.Map(mapContainer, { center: new DG.LatLng(69.349552990994837, 87.75222519148015), zoom: 17 }); }); afterEach(function () { map && map.remove(); map = null; }); describe('"DG.Label" class', function(){ var label = DG.label(); it('it should have "onAdd()" public method', function(){ expect(label.onAdd).to.be.a('function'); }); it('it should have "onRemove()" public method', function(){ expect(label.onRemove).to.be.a('function'); }); it('it should properly merge options object passed to constructor', function(){ var labelWithOptions = DG.label('', { className: "test-class" }); expect(labelWithOptions.options.className).to.eql('test-class'); }); describe('#setContent and #setPosition', function(){ it('should return "DG.Label" instance', function(){ expect(label.setContent('ra-ta-ta')).to.be.a(DG.Label); expect(label.setPosition( new DG.LatLng(54.980206086231, 82.898068362003) )).to.be.a(DG.Label); expect(label.setContent( null )).to.be.a(DG.Label); expect(label.setPosition( null )).to.be.a(DG.Label); }); }); }); describe('"DG.label()" factory', function(){ it(' should return "DG.Label" instance', function(){ var label = DG.label(); expect(label).to.be.a(DG.Label); }); }); describe('mixins into "DG.Marker"', function(){ it('#bindLabel should return "DG.Marker" instance', function(){ var marker = DG.marker([54.950206086231, 82.898068362003]).addTo(map); expect(marker.bindLabel()).to.be.a(DG.Marker); }); it('#unbindLabel should return "DG.Marker" instance', function(){ var marker = DG.marker([54.950206086231, 82.898068362003]).addTo(map), markerWithLabel = DG.marker([54.950206086231, 82.898068362003]).addTo(map).bindLabel('ra-ta-ta'); expect(marker.unbindLabel()).to.be.a(DG.Marker); expect(markerWithLabel.unbindLabel()).to.be.a(DG.Marker); }); it('#showLabel should return "DG.Marker" instance', function(){ var marker = DG.marker([54.950206086231, 82.898068362003]).addTo(map), markerWithLabel = DG.marker([54.950206086231, 82.898068362003]).addTo(map).bindLabel('ra-ta-ta'); expect(marker.showLabel()).to.be.a(DG.Marker); expect(markerWithLabel.showLabel()).to.be.a(DG.Marker); }); it('#hideLabel should return "DG.Marker" instance', function(){ var marker = DG.marker([54.950206086231, 82.898068362003]).addTo(map), markerWithLabel = DG.marker([54.950206086231, 82.898068362003]).addTo(map).bindLabel('ra-ta-ta'); expect(marker.hideLabel()).to.be.a(DG.Marker); expect(markerWithLabel.hideLabel()).to.be.a(DG.Marker); }); it('#getLabel should return "DG.Label" instance after #bindLabel call', function(){ var markerWithLabel = DG.marker([54.950206086231, 82.898068362003]) .addTo(map) .bindLabel('ra-ta-ta'); expect(markerWithLabel.getLabel()).to.be.a(DG.Label); }); it('#getLabel should return null after #unbindLabel call and before #bindLabel call', function(){ var marker = DG.marker([54.950206086231, 82.898068362003]).addTo(map), markerWithLabel = DG.marker([54.950206086231, 82.898068362003]).addTo(map).bindLabel('ra-ta-ta'); expect(marker.getLabel()).to.be(null); expect(markerWithLabel.unbindLabel().getLabel()).to.be(null); }); }); describe('mixins into "DG.Path"', function(){ it('#bindLabel should return "DG.Path" instance', function(){ var path = DG.circle([55.0, 83.0], 900).addTo(map); expect(path.bindLabel()).to.be.a(DG.Path); }); it('#unbindLabel should return "DG.Path" instance', function(){ var path = DG.circle([55.0, 83.0], 900).addTo(map), pathWithLabel = DG.circle([55.0, 83.0], 900).addTo(map).bindLabel('ra-ta-ta'); expect(path.unbindLabel()).to.be.a(DG.Path); expect(pathWithLabel.unbindLabel()).to.be.a(DG.Path); }); it('#getLabel should return "DG.Label" instance after #bindLabel call', function(){ var pathWithLabel = DG.circle([55.0, 83.0], 900) .addTo(map) .bindLabel('ra-ta-ta'); expect(pathWithLabel.getLabel()).to.be.a(DG.Label); }); it('#getLabel should return null after #unbindLabel call and before #bindLabel call', function(){ var path = DG.circle([55.0, 83.0], 900).addTo(map), pathWithLabel = DG.circle([55.0, 83.0], 900).addTo(map).bindLabel('ra-ta-ta'); expect(path.getLabel()).to.be(null); expect(pathWithLabel.unbindLabel().getLabel()).to.be(null); }); }); });