text: 
  describe('TileLayer', function () {
  	describe("#getMaxZoom, #getMinZoom", function () {
  		var map;
  		beforeEach(function () {
  			map = L.map(document.createElement('div'));
  		});
  		describe("when a tilelayer is added to a map with no other layers", function () {
  			it("should have the same zoomlevels as the tilelayer", function () {
  				var maxZoom = 10,
  					minZoom = 5;
  					map.setView([0, 0], 1);
  
  					L.tileLayer("{z}{x}{y}", {
  						maxZoom: maxZoom,
  						minZoom: minZoom
  					}).addTo(map);
  				expect(map.getMaxZoom() === maxZoom).toBeTruthy();
  				expect(map.getMinZoom() === minZoom).toBeTruthy();
  			});
  		});
  		describe("when a tilelayer is added to a map that already has a tilelayer", function () {
  			it("should have its zoomlevels updated to fit the new layer", function () {
  				map.setView([0, 0], 1);
  
  				L.tileLayer("{z}{x}{y}", { minZoom:10, maxZoom: 15 }).addTo(map);
  				expect(map.getMinZoom()).toBe(10);
  				expect(map.getMaxZoom()).toBe(15);
  
  				L.tileLayer("{z}{x}{y}", { minZoom:5, maxZoom: 10 }).addTo(map);
  				expect(map.getMinZoom()).toBe(5);  // changed
  				expect(map.getMaxZoom()).toBe(15); // unchanged
  
  
  				L.tileLayer("{z}{x}{y}",{ minZoom:10, maxZoom: 20 }).addTo(map);
  				expect(map.getMinZoom()).toBe(5);  // unchanged
  				expect(map.getMaxZoom()).toBe(20); // changed
  
  
  				L.tileLayer("{z}{x}{y}", { minZoom:0, maxZoom: 25 }).addTo(map);
  				expect(map.getMinZoom()).toBe(0); // changed
  				expect(map.getMaxZoom()).toBe(25); // changed
  			});
  		});
  		describe("when a tilelayer is removed from a map", function () {
  			it("it should have its zoomlevels updated to only fit the layers it currently has", function () {
  				var tiles = [  L.tileLayer("{z}{x}{y}", { minZoom:10, maxZoom: 15 }).addTo(map),
  							   L.tileLayer("{z}{x}{y}", { minZoom:5, maxZoom: 10 }).addTo(map),
  							   L.tileLayer("{z}{x}{y}", { minZoom:10, maxZoom: 20 }).addTo(map),
  							   L.tileLayer("{z}{x}{y}", { minZoom:0, maxZoom: 25 }).addTo(map)
  							];
  				map.whenReady(function() {
  					expect(map.getMinZoom()).toBe(0);
  					expect(map.getMaxZoom()).toBe(25);
  
  					map.removeLayer(tiles[0]);
  					expect(map.getMinZoom()).toBe(0);
  					expect(map.getMaxZoom()).toBe(25);
  
  					map.removeLayer(tiles[3]);
  					expect(map.getMinZoom()).toBe(5);
  					expect(map.getMaxZoom()).toBe(20);
  
  					map.removeLayer(tiles[2]);
  					expect(map.getMinZoom()).toBe(5);
  					expect(map.getMaxZoom()).toBe(10);
  
  					map.removeLayer(tiles[1]);
  					expect(map.getMinZoom()).toBe(0);
  					expect(map.getMaxZoom()).toBe(Infinity);
  				});
  			});
  		});
  	});
  });