Skip to content

Commit

Permalink
test suite: move suite setup into own file.
Browse files Browse the repository at this point in the history
  • Loading branch information
paulirish committed May 24, 2011
1 parent f440b93 commit 1f6534e
Show file tree
Hide file tree
Showing 3 changed files with 85 additions and 79 deletions.
2 changes: 2 additions & 0 deletions test/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,8 @@
<script src="js/jsonselect.js"></script>
<script src="js/uaparser.js"></script>

<script src="js/test-setup.js"></script>

<script src="js/unit.js"></script>
<script src="js/unit-caniuse.js"></script>
</head>
Expand Down
82 changes: 82 additions & 0 deletions test/js/test-setup.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,82 @@


// test helper object
window.TEST = {
// note some unique members of the Modernizr object
inputs : ['input','inputtypes'],
audvid : ['video','audio'],
API : ['addTest', 'mq', 'event', 'testProp', 'testAllProps', 'styleElem', '_prefixes', '_domPrefixes', 'prefixed'],
extraclass: ['js'],
privates : ['_enableHTML5','_version','_fontfaceready'],
deprecated : [
{ oldish : 'crosswindowmessaging', newish : 'postmessage'},
{ oldish : 'historymanagement', newish : 'history'},
],

// utility methods
inArray: function(elem, array) {
if (array.indexOf) {
return array.indexOf(elem);
}
for (var i = 0, length = array.length; i < length; i++) {
if (array[i] === elem) {
return i;
}
}
return -1;
},
trim : function(str){
return str.replace(/^\s*/, "").replace(/\s*$/, "");
}
};


// Object.keys()
if (!Object.keys) Object.keys = function(o){
if (o !== Object(o)) throw new TypeError('Object.keys called on non-object');
var ret=[], p;
for (p in o) if(Object.prototype.hasOwnProperty.call(o,p)) ret.push(p);
return ret;
};


// Array.prototype.indexOf
if (!Array.prototype.indexOf){
Array.prototype.indexOf = function(searchElement /*, fromIndex */)
{
"use strict";

if (this === void 0 || this === null)
throw new TypeError();

var t = Object(this);
var len = t.length >>> 0;
if (len === 0)
return -1;

var n = 0;
if (arguments.length > 0)
{
n = Number(arguments[1]);
if (n !== n) // shortcut for verifying if it's NaN
n = 0;
else if (n !== 0 && n !== (1 / 0) && n !== -(1 / 0))
n = (n > 0 || -1) * Math.floor(Math.abs(n));
}

if (n >= len)
return -1;

var k = n >= 0
? n
: Math.max(len - Math.abs(n), 0);

for (; k < len; k++)
{
if (k in t && t[k] === searchElement)
return k;
}
return -1;
};
}

80 changes: 1 addition & 79 deletions test/js/unit.js
Original file line number Diff line number Diff line change
@@ -1,82 +1,4 @@


// test helper object
window.TEST = {
// note some unique members of the Modernizr object
inputs : ['input','inputtypes'],
audvid : ['video','audio'],
API : ['addTest', 'mq', 'event', 'testProp', 'testAllProps', 'styleElem', '_prefixes', '_domPrefixes', 'prefixed'],
extraclass: ['js'],
privates : ['_enableHTML5','_version','_fontfaceready'],
deprecated : [
{ oldish : 'crosswindowmessaging', newish : 'postmessage'},
{ oldish : 'historymanagement', newish : 'history'},
],

// utility methods
inArray: function(elem, array) {
if (array.indexOf) {
return array.indexOf(elem);
}
for (var i = 0, length = array.length; i < length; i++) {
if (array[i] === elem) {
return i;
}
}
return -1;
},
trim : function(str){
return str.replace(/^\s*/, "").replace(/\s*$/, "");
}
};

if (!Object.keys) Object.keys = function(o){
if (o !== Object(o)) throw new TypeError('Object.keys called on non-object');
var ret=[], p;
for (p in o) if(Object.prototype.hasOwnProperty.call(o,p)) ret.push(p);
return ret;
};

if (!Array.prototype.indexOf){
Array.prototype.indexOf = function(searchElement /*, fromIndex */)
{
"use strict";

if (this === void 0 || this === null)
throw new TypeError();

var t = Object(this);
var len = t.length >>> 0;
if (len === 0)
return -1;

var n = 0;
if (arguments.length > 0)
{
n = Number(arguments[1]);
if (n !== n) // shortcut for verifying if it's NaN
n = 0;
else if (n !== 0 && n !== (1 / 0) && n !== -(1 / 0))
n = (n > 0 || -1) * Math.floor(Math.abs(n));
}

if (n >= len)
return -1;

var k = n >= 0
? n
: Math.max(len - Math.abs(n), 0);

for (; k < len; k++)
{
if (k in t && t[k] === searchElement)
return k;
}
return -1;
};
}


test("globals set up",2, function() {

ok(window.Modernizr, 'global modernizr object created');
Expand Down Expand Up @@ -381,7 +303,7 @@ test('Modernizr.mq: media query testing',function(){

test('Modernizr.event',function(){

ok(Modernizr.event,'Modernizr.event() doesn\' freak out.');
ok(Modernizr.event,'Modernizr.event() doesn\'t freak out.');


equals(Modernizr.event('click'), true,'click event is supported');
Expand Down

0 comments on commit 1f6534e

Please sign in to comment.