describe('mapbox.ui', function() {
var globalsBefore = {};
beforeEach(function(){
for (var key in window)
globalsBefore[key] = true;
});
afterEach(function(){
var leaked = [];
for (var key in window) {
if (!(key in globalsBefore)) {
if (key.indexOf('reqwest') !== 0)leaked.push(key);
}
}
if (leaked.length > 0) {
throw new Error('Leaked global variables: [' + leaked.join(', ') + ']');
}
});
it('mapbox.ui is present', function() {
expect(mapbox.ui).toBeTruthy();
});
it('a newly created map has a UI member', function() {
var m = mapbox.map(document.createElement('div'));
expect(m.ui).toBeTruthy();
});
it('attribution is populated by refresh', function() {
var m;
runs(function() {
m = mapbox.map(document.createElement('div'));
m.addLayer(mapbox.layer().id('examples.map-vyofok3q'));
});
waits(500);
runs(function() {
expect(m.getLayerAt(0).name).toEqual('examples.map-vyofok3q');
expect(m.ui.attribution.add()).toEqual(m.ui.attribution);
m.ui.refresh();
expect(m.ui.attribution.content()).toEqual('Terms & Feedback');
});
});
it('legends are populated by refresh', function() {
var m;
runs(function() {
m = mapbox.map(document.createElement('div'));
m.addLayer(mapbox.layer().id('tmcw.map-2sdcp6um'));
});
waits(500);
runs(function() {
expect(m.getLayerAt(0).name).toEqual('tmcw.map-2sdcp6um');
expect(m.ui.legend.add()).toEqual(m.ui.legend);
m.ui.refresh();
expect(m.ui.legend.content()).toEqual('schools / fire houses / colleges');
});
});
});