add numZoomLevels and maxResolution properties to the TileLayer

This commit is contained in:
Éric Lemoine
2012-06-21 14:18:41 +02:00
parent 5b747cf7fd
commit 1cca6b4069
4 changed files with 133 additions and 21 deletions

View File

@@ -16,7 +16,7 @@ describe('ol.layer.TileLayer', function() {
layer = new ol.layer.TileLayer();
});
describe('with tileOriginX and tileOriginY set', function() {
describe('with tileOriginX and tileOriginY', function() {
beforeEach(function() {
layer.setTileOrigin(1, 2);
@@ -29,7 +29,7 @@ describe('ol.layer.TileLayer', function() {
});
describe('with extent set', function() {
describe('with extent', function() {
beforeEach(function() {
layer.setExtent(new ol.Bounds(-180, -90, 180, 90));
@@ -42,7 +42,7 @@ describe('ol.layer.TileLayer', function() {
});
describe('with extent and tileOriginCorner set', function() {
describe('with tileOriginCorner and extent', function() {
beforeEach(function() {
layer.setExtent(new ol.Bounds(-180, -90, 180, 90));
@@ -56,6 +56,81 @@ describe('ol.layer.TileLayer', function() {
});
describe('with tileOriginCorner, without extent', function() {
beforeEach(function() {
layer.setTileOriginCorner('tr');
});
it('throws an error or return null', function() {
var origin;
if (goog.DEBUG) {
expect(function() {
origin = layer.getTileOrigin();
}).toThrow();
} else {
expect(function() {
origin = layer.getTileOrigin();
}).not.toThrow();
expect(origin).toBeNull();
}
});
});
describe('with bad tileOriginCorner', function() {
beforeEach(function() {
layer.setTileOriginCorner('foo');
});
it('returns the expected origin', function() {
if (goog.DEBUG) {
expect(function() {
var origin = layer.getTileOrigin();
}).toThrow();
} else {
expect(function() {
var origin = layer.getTileOrigin();
}).not.toThrow();
}
});
});
});
describe('get resolutions', function() {
var layer;
beforeEach(function() {
layer = new ol.layer.TileLayer();
});
describe('with resolutions set', function() {
beforeEach(function() {
layer.setResolutions([1, 0.5, 0.25]);
});
it('returns the expected resolutions', function() {
var resolutions = layer.getResolutions();
expect(resolutions).toEqual([1, 0.5, 0.25]);
});
});
describe('with maxResolution and numZoomLevels set', function() {
beforeEach(function() {
layer.setMaxResolution(1);
layer.setNumZoomLevels(3);
});
it('returns the expected resolutions', function() {
var resolutions = layer.getResolutions();
expect(resolutions).toEqual([1, 0.5, 0.25]);
});
});
});
});