From 37899a3feb6534dc62f843ed0999ed002719f29e Mon Sep 17 00:00:00 2001 From: Marc Jansen Date: Wed, 16 Mar 2016 10:27:05 +0100 Subject: [PATCH] Add tests for ol.dom methods --- src/ol/dom/dom.js | 2 - test/spec/ol/dom/dom.test.js | 568 +++++++++++++++++++++++++++++++++++ 2 files changed, 568 insertions(+), 2 deletions(-) create mode 100644 test/spec/ol/dom/dom.test.js diff --git a/src/ol/dom/dom.js b/src/ol/dom/dom.js index 46c90bc687..b9c4f29f07 100644 --- a/src/ol/dom/dom.js +++ b/src/ol/dom/dom.js @@ -1,5 +1,3 @@ -// FIXME add tests for browser features (Modernizr?) - goog.provide('ol.dom'); goog.provide('ol.dom.BrowserFeature'); diff --git a/test/spec/ol/dom/dom.test.js b/test/spec/ol/dom/dom.test.js new file mode 100644 index 0000000000..afd3004087 --- /dev/null +++ b/test/spec/ol/dom/dom.test.js @@ -0,0 +1,568 @@ +/*global Modernizr*/ +goog.provide('ol.test.dom'); + + +/*! modernizr 3.3.1 (Custom Build) | MIT + * + * This is a custom build of Modernizr, which is used to compare their result + * of checking whether csstransforms & csstransforms3d are available with our + * implementation. + * The code below provides the following properties + * * `Modernizr.csstransforms` + * * `Modernizr.csstransforms3d` + * + * http://modernizr.com/download/?-csstransforms-csstransforms3d-setclasses +!*/ +/*eslint-disable*/ +!function(e,n,t){function r(e,n){return typeof e===n}function s(){var e,n,t,s,o,i,a;for(var f in C)if(C.hasOwnProperty(f)){if(e=[],n=C[f],n.name&&(e.push(n.name.toLowerCase()),n.options&&n.options.aliases&&n.options.aliases.length))for(t=0;tp;p++)if(h=e[p],v=E.style[h],i(h,"-")&&(h=f(h)),E.style[h]!==t){if(o||r(s,"undefined"))return l(),"pfx"==n?h:!0;try{E.style[h]=s}catch(y){}if(E.style[h]!=v)return l(),"pfx"==n?h:!0}return l(),!1}function v(e,n,t,s,o){var i=e.charAt(0).toUpperCase()+e.slice(1),a=(e+" "+b.join(i+" ")+i).split(" ");return r(n,"string")||r(n,"undefined")?h(a,n,s,o):(a=(e+" "+P.join(i+" ")+i).split(" "),u(a,n,t))}function g(e,n,r){return v(e,t,t,n,r)}var y=[],C=[],w={_version:"3.3.1",_config:{classPrefix:"",enableClasses:!0,enableJSClass:!0,usePrefixes:!0},_q:[],on:function(e,n){var t=this;setTimeout(function(){n(t[e])},0)},addTest:function(e,n,t){C.push({name:e,fn:n,options:t})},addAsyncTest:function(e){C.push({name:null,fn:e})}},Modernizr=function(){};Modernizr.prototype=w,Modernizr=new Modernizr;var S=n.documentElement,x="svg"===S.nodeName.toLowerCase(),_="Moz O ms Webkit",b=w._config.usePrefixes?_.split(" "):[];w._cssomPrefixes=b;var P=w._config.usePrefixes?_.toLowerCase().split(" "):[];w._domPrefixes=P;var z={elem:a("modernizr")};Modernizr._q.push(function(){delete z.elem});var E={style:z.elem.style};Modernizr._q.unshift(function(){delete E.style}),w.testAllProps=v,w.testAllProps=g,Modernizr.addTest("csstransforms",function(){return-1===navigator.userAgent.indexOf("Android 2.")&&g("transform","scale(1)",!0)});var T="CSS"in e&&"supports"in e.CSS,N="supportsCSS"in e;Modernizr.addTest("supports",T||N);var k=w.testStyles=c;Modernizr.addTest("csstransforms3d",function(){var e=!!g("perspective","1px",!0),n=Modernizr._config.usePrefixes;if(e&&(!n||"webkitPerspective"in S.style)){var t,r="#modernizr{width:0;height:0}";Modernizr.supports?t="@supports (perspective: 1px)":(t="@media (transform-3d)",n&&(t+=",(-webkit-transform-3d)")),t+="{#modernizr{width:7px;height:18px;margin:0;padding:0;border:0}}",k(r+t,function(n){e=7===n.offsetWidth&&18===n.offsetHeight})}return e}),s(),o(y),delete w.addTest,delete w.addAsyncTest;for(var A=0;A