From 61fcc4a326d263572241df5c2d529b17b7a3a644 Mon Sep 17 00:00:00 2001 From: Frederic Junod Date: Wed, 19 Oct 2016 08:55:59 +0200 Subject: [PATCH 1/3] Only test ol.format.MVT if ArrayBuffer.isView is supported --- test/spec/ol/format/mvt.test.js | 2 +- test/test-extensions.js | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/test/spec/ol/format/mvt.test.js b/test/spec/ol/format/mvt.test.js index 2d1683d3c7..2de0d1b183 100644 --- a/test/spec/ol/format/mvt.test.js +++ b/test/spec/ol/format/mvt.test.js @@ -6,7 +6,7 @@ goog.require('ol.ext.vectortile'); goog.require('ol.format.MVT'); goog.require('ol.render.Feature'); -where('ArrayBuffer').describe('ol.format.MVT', function() { +where('ArrayBuffer.isView').describe('ol.format.MVT', function() { var data; beforeEach(function(done) { diff --git a/test/test-extensions.js b/test/test-extensions.js index d42f09208e..acedcc7deb 100644 --- a/test/test-extensions.js +++ b/test/test-extensions.js @@ -466,6 +466,7 @@ var features = { ArrayBuffer: typeof ArrayBuffer === 'function', + 'ArrayBuffer.isView': typeof ArrayBuffer === 'function' && ArrayBuffer.isView, Uint8ClampedArray: ('Uint8ClampedArray' in global) }; From e8bc38b6a91cd64e5aab33ebef39b72d0d7b57b1 Mon Sep 17 00:00:00 2001 From: Frederic Junod Date: Wed, 19 Oct 2016 10:18:10 +0200 Subject: [PATCH 2/3] Use a mock format instead of ol.format.MVT in tests --- test/spec/ol/featureloader.test.js | 35 ++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/test/spec/ol/featureloader.test.js b/test/spec/ol/featureloader.test.js index f279bbad28..179212386b 100644 --- a/test/spec/ol/featureloader.test.js +++ b/test/spec/ol/featureloader.test.js @@ -2,9 +2,10 @@ goog.provide('ol.test.featureloader'); goog.require('ol.events'); goog.require('ol.VectorTile'); +goog.require('ol.Feature'); goog.require('ol.featureloader'); goog.require('ol.format.GeoJSON'); -goog.require('ol.format.MVT'); +goog.require('ol.format.TextFeature'); goog.require('ol.proj'); goog.require('ol.source.Vector'); @@ -85,18 +86,28 @@ describe('ol.featureloader', function() { loader.call(tile, [], 1, ol.proj.get('EPSG:3857')); }); - (typeof ArrayBuffer == 'function' ? it : xit)( - 'sets features on the tile and updates proj units', function(done) { - var url = 'spec/ol/data/14-8938-5680.vector.pbf'; - var format = new ol.format.MVT(); - loader = ol.featureloader.tile(url, format); - ol.events.listen(tile, 'change', function(e) { - expect(tile.getFeatures().length).to.be.greaterThan(0); - expect(tile.getProjection().getUnits()).to.be('tile-pixels'); - done(); - }); - loader.call(tile, [], 1, ol.proj.get('EPSG:3857')); + it('sets features on the tile and updates proj units', function(done) { + // mock format that return a tile-pixels feature + var format = new ol.format.TextFeature(); + format.readProjection = function(source) { + return new ol.proj.Projection({ + code: '', + units: 'tile-pixels' }); + }; + format.readFeatures = function(source, options) { + return [new ol.Feature()]; + }; + + var url = 'spec/ol/data/point.json'; + loader = ol.featureloader.tile(url, format); + ol.events.listen(tile, 'change', function(e) { + expect(tile.getFeatures().length).to.be.greaterThan(0); + expect(tile.getProjection().getUnits()).to.be('tile-pixels'); + done(); + }); + loader.call(tile, [], 1, ol.proj.get('EPSG:3857')); + }); }); From 88cebbf6c1c20816d38a72a9c56666d5b1521502 Mon Sep 17 00:00:00 2001 From: Frederic Junod Date: Wed, 19 Oct 2016 10:20:28 +0200 Subject: [PATCH 3/3] Remove projection param in ol.VectorTile constructor --- test/spec/ol/featureloader.test.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/test/spec/ol/featureloader.test.js b/test/spec/ol/featureloader.test.js index 179212386b..bea9204257 100644 --- a/test/spec/ol/featureloader.test.js +++ b/test/spec/ol/featureloader.test.js @@ -71,8 +71,7 @@ describe('ol.featureloader', function() { var tile; beforeEach(function() { - tile = new ol.VectorTile([0, 0, 0], undefined, undefined, undefined, - undefined, ol.proj.get('EPSG:3857')); + tile = new ol.VectorTile([0, 0, 0]); }); it('sets features on the tile', function(done) {