aboutsummaryrefslogtreecommitdiffstats
path: root/tests/unit/testsuite.js
diff options
context:
space:
mode:
Diffstat (limited to 'tests/unit/testsuite.js')
-rw-r--r--tests/unit/testsuite.js31
1 files changed, 27 insertions, 4 deletions
diff --git a/tests/unit/testsuite.js b/tests/unit/testsuite.js
index 3c8ec04c4..26f46138a 100644
--- a/tests/unit/testsuite.js
+++ b/tests/unit/testsuite.js
@@ -10,7 +10,14 @@ function includeScript( url ) {
document.write( "<script src='../../../" + url + "'></script>" );
}
-QUnit.config.urlConfig.push( "min" );
+QUnit.config.requireExpects = true;
+
+QUnit.config.urlConfig.push({
+ id: "min",
+ label: "Minified source",
+ tooltip: "Load minified source files instead of the regular unminified ones."
+});
+
TestHelpers.loadResources = QUnit.urlParams.min ?
function() {
// TODO: proper include with theme images
@@ -26,7 +33,12 @@ TestHelpers.loadResources = QUnit.urlParams.min ?
});
};
-QUnit.config.urlConfig.push( "nojshint" );
+QUnit.config.urlConfig.push({
+ id: "nojshint",
+ label: "Skip JSHint",
+ tooltip: "Skip running JSHint, e.g. within TestSwarm, where Jenkins runs it already"
+});
+
var jshintLoaded = false;
TestHelpers.testJshint = function( module ) {
if ( QUnit.urlParams.nojshint ) {
@@ -47,7 +59,7 @@ TestHelpers.testJshint = function( module ) {
dataType: "json"
}),
$.ajax({
- url: "../../../ui/jquery." + module + ".js",
+ url: "../../../ui/jquery.ui." + module + ".js",
dataType: "text"
})
).done(function( hintArgs, srcArgs ) {
@@ -76,7 +88,9 @@ function testWidgetDefaults( widget, defaults ) {
// ensure that all defaults have the correct value
test( "defined defaults", function() {
+ var count = 0;
$.each( defaults, function( key, val ) {
+ expect( ++count );
if ( $.isFunction( val ) ) {
ok( $.isFunction( pluginDefaults[ key ] ), key );
return;
@@ -87,7 +101,9 @@ function testWidgetDefaults( widget, defaults ) {
// ensure that all defaults were tested
test( "tested defaults", function() {
+ var count = 0;
$.each( pluginDefaults, function( key, val ) {
+ expect( ++count );
ok( key in defaults, key );
});
});
@@ -96,6 +112,7 @@ function testWidgetDefaults( widget, defaults ) {
function testWidgetOverrides( widget ) {
if ( $.uiBackCompat === false ) {
test( "$.widget overrides", function() {
+ expect( 4 );
$.each([
"_createWidget",
"destroy",
@@ -111,6 +128,8 @@ function testWidgetOverrides( widget ) {
function testBasicUsage( widget ) {
test( "basic usage", function() {
+ expect( 3 );
+
var defaultElement = $.ui[ widget ].prototype.defaultElement;
$( defaultElement ).appendTo( "body" )[ widget ]().remove();
ok( true, "initialized on element" );
@@ -126,11 +145,12 @@ function testBasicUsage( widget ) {
TestHelpers.commonWidgetTests = function( widget, settings ) {
module( widget + ": common widget" );
- TestHelpers.testJshint( "ui." + widget );
+ TestHelpers.testJshint( widget );
testWidgetDefaults( widget, settings.defaults );
testWidgetOverrides( widget );
testBasicUsage( widget );
test( "version", function() {
+ expect( 1 );
ok( "version" in $.ui[ widget ].prototype, "version property exists" );
});
};
@@ -188,6 +208,9 @@ window.domEqual = function( selector, modifier, message ) {
var value = elem.attr( attr );
result[ attrĀ ] = value !== undefined ? value : "";
});
+ result.events = $._data( elem[ 0 ], "events" );
+ result.data = $.extend( {}, elem.data() );
+ delete result.data[ $.expando ];
children = elem.children();
if ( children.length ) {
result.children = elem.children().map(function( ind ) {