From 22939abb0d59160c30a72e37a85e9f92582fd4af Mon Sep 17 00:00:00 2001 From: Frederic Junod Date: Tue, 6 Jun 2017 08:55:07 +0200 Subject: [PATCH 1/2] Only test ol.interaction.DragAndDrop if FileReader is supported --- test/spec/ol/interaction/draganddrop.test.js | 6 ++++-- test/test-extensions.js | 1 + 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/test/spec/ol/interaction/draganddrop.test.js b/test/spec/ol/interaction/draganddrop.test.js index 6397e49b56..7e08cea6ef 100644 --- a/test/spec/ol/interaction/draganddrop.test.js +++ b/test/spec/ol/interaction/draganddrop.test.js @@ -8,7 +8,7 @@ goog.require('ol.format.GeoJSON'); goog.require('ol.interaction.DragAndDrop'); -describe('ol.interaction.DragAndDrop', function() { +where('FileReader').describe('ol.interaction.DragAndDrop', function() { var viewport, map, interaction; beforeEach(function() { @@ -83,9 +83,11 @@ describe('ol.interaction.DragAndDrop', function() { }); describe('#handleDrop_', function() { - var OrigFileReader = FileReader; + var OrigFileReader; beforeEach(function() { + OrigFileReader = FileReader; + FileReader = function() { ol.events.EventTarget.apply(this, arguments); this.readAsText = function(file) { diff --git a/test/test-extensions.js b/test/test-extensions.js index deb4c72855..8069893456 100644 --- a/test/test-extensions.js +++ b/test/test-extensions.js @@ -464,6 +464,7 @@ var features = { ArrayBuffer: typeof ArrayBuffer === 'function', 'ArrayBuffer.isView': typeof ArrayBuffer === 'function' && ArrayBuffer.isView, + FileReader: 'FileReader' in global, Uint8ClampedArray: ('Uint8ClampedArray' in global) }; From 66e03080280e3cda31d2d3d2386a1cee05bbd530 Mon Sep 17 00:00:00 2001 From: Frederic Junod Date: Tue, 6 Jun 2017 09:45:57 +0200 Subject: [PATCH 2/2] Use 'in' operator instead of 'typeof' In PhantomJS, `typeof XXX` returns `"object"`, not `"function"` --- test/test-extensions.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/test/test-extensions.js b/test/test-extensions.js index 8069893456..2bc48207d0 100644 --- a/test/test-extensions.js +++ b/test/test-extensions.js @@ -462,8 +462,8 @@ }; var features = { - ArrayBuffer: typeof ArrayBuffer === 'function', - 'ArrayBuffer.isView': typeof ArrayBuffer === 'function' && ArrayBuffer.isView, + ArrayBuffer: 'ArrayBuffer' in global, + 'ArrayBuffer.isView': 'ArrayBuffer' in global && !!ArrayBuffer.isView, FileReader: 'FileReader' in global, Uint8ClampedArray: ('Uint8ClampedArray' in global) };