Commit 9e486497 authored by Ariel Flesler's avatar Ariel Flesler

test runner: the changes are:

- Replaced all the $ for jQuery in the tests and suite.
- Added a noConflict to testrunner.js.
- Modified the test for noConflict() so that it still work.
- Added jQuery 1.2.1 and 1.2.3 to otherlibs.
parent abb055bb
jQuery.noConflict(); // Allow the test to run with other libs or jQuery's.
var _config = {
fixture: null,
Test: [],
......@@ -14,12 +16,12 @@ var _config = {
};
_config.filters = location.search.length > 1 && //restrict modules/tests by get parameters
$.map( location.search.slice(1).split('&'), decodeURIComponent );
jQuery.map( location.search.slice(1).split('&'), decodeURIComponent );
var isLocal = !!(window.location.protocol == 'file:');
$(function() {
$('#userAgent').html(navigator.userAgent);
jQuery(function() {
jQuery('#userAgent').html(navigator.userAgent);
runTest();
});
......@@ -81,15 +83,15 @@ function runTest() {
_config.blocking = false;
var time = new Date();
_config.fixture = document.getElementById('main').innerHTML;
_config.ajaxSettings = $.ajaxSettings;
_config.ajaxSettings = jQuery.ajaxSettings;
synchronize(function() {
time = new Date() - time;
$("<div>").html(['<p class="result">Tests completed in ',
jQuery("<div>").html(['<p class="result">Tests completed in ',
time, ' milliseconds.<br/>',
_config.stats.bad, ' tests of ', _config.stats.all, ' failed.</p>']
.join(''))
.appendTo("body");
$("#banner").addClass(_config.stats.bad ? "fail" : "pass");
jQuery("#banner").addClass(_config.stats.bad ? "fail" : "pass");
});
}
......@@ -154,11 +156,11 @@ function test(name, callback, nowait) {
else
n.style.display = "none";
};
$(b).dblclick(function(event) {
jQuery(b).dblclick(function(event) {
var target = jQuery(event.target).filter("strong").clone();
if ( target.length ) {
target.children().remove();
location.href = location.href.match(/^(.+?)(\?.*)?$/)[1] + "?" + encodeURIComponent($.trim(target.text()));
location.href = location.href.match(/^(.+?)(\?.*)?$/)[1] + "?" + encodeURIComponent(jQuery.trim(target.text()));
}
});
li.appendChild( b );
......@@ -184,14 +186,14 @@ function expect(asserts) {
* Resets the test setup. Useful for tests that modify the DOM.
*/
function reset() {
$("#main").html( _config.fixture );
$.event.global = {};
$.ajaxSettings = $.extend({}, _config.ajaxSettings);
jQuery("#main").html( _config.fixture );
jQuery.event.global = {};
jQuery.ajaxSettings = jQuery.extend({}, _config.ajaxSettings);
}
/**
* Asserts true.
* @example ok( $("a").size() > 5, "There must be at least 5 anchors" );
* @example ok( jQuery("a").size() > 5, "There must be at least 5 anchors" );
*/
function ok(a, msg) {
_config.Test.push( [ !!a, msg ] );
......
......@@ -5,7 +5,12 @@
<title>jQuery Test Suite</title>
<link rel="Stylesheet" media="screen" href="data/testsuite.css" />
<!-- Includes -->
<script type="text/javascript">var jQuery = "jQuery", $ = "$"; // For testing .noConflict()</script>
<script type="text/javascript">
var jQuery = this.jQuery || "jQuery", // For testing .noConflict()
$ = this.$ || "$",
originaljQuery = jQuery,
original$ = $;
</script>
<script type="text/javascript" src="../dist/jquery.js"></script>
<script type="text/javascript" src="data/testrunner.js"></script>
<script type="text/javascript" src="unit/core.js"></script>
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -3,7 +3,7 @@ module("dimensions");
test("innerWidth()", function() {
expect(3);
var $div = $("#nothiddendiv");
var $div = jQuery("#nothiddendiv");
// set styles
$div.css({
margin: 10,
......@@ -24,7 +24,7 @@ test("innerWidth()", function() {
test("innerHeight()", function() {
expect(3);
var $div = $("#nothiddendiv");
var $div = jQuery("#nothiddendiv");
// set styles
$div.css({
margin: 10,
......@@ -45,7 +45,7 @@ test("innerHeight()", function() {
test("outerWidth()", function() {
expect(6);
var $div = $("#nothiddendiv");
var $div = jQuery("#nothiddendiv");
$div.css("width", 30);
equals($div.outerWidth(), 30, "Test with only width set");
......@@ -67,7 +67,7 @@ test("outerWidth()", function() {
test("outerHeight()", function() {
expect(6);
var $div = $("#nothiddendiv");
var $div = jQuery("#nothiddendiv");
$div.css("height", 30);
equals($div.outerHeight(), 30, "Test with only width set");
......
This diff is collapsed.
......@@ -4,8 +4,8 @@ test("animate(Hash, Object, Function)", function() {
expect(1);
stop();
var hash = {opacity: 'show'};
var hashCopy = $.extend({}, hash);
$('#foo').animate(hash, 0, function() {
var hashCopy = jQuery.extend({}, hash);
jQuery('#foo').animate(hash, 0, function() {
equals( hash.opacity, hashCopy.opacity, 'Check if animate changed the hash parameter' );
start();
});
......@@ -17,7 +17,7 @@ test("animate option (queue === false)", function () {
var order = [];
var $foo = $("#foo");
var $foo = jQuery("#foo");
$foo.animate({width:'100px'}, 200, function () {
// should finish after unqueued animation so second
order.push(2);
......@@ -38,7 +38,7 @@ test("queue() defaults to 'fx' type", function () {
expect(2);
stop();
var $foo = $("#foo");
var $foo = jQuery("#foo");
$foo.queue("fx", [ "sample", "array" ]);
var arr = $foo.queue();
isSet(arr, [ "sample", "array" ], "queue() got an array set with type 'fx'");
......@@ -55,7 +55,7 @@ test("stop()", function() {
expect(3);
stop();
var $foo = $("#nothiddendiv");
var $foo = jQuery("#nothiddendiv");
var w = 0;
$foo.hide().width(200).width();
......@@ -78,7 +78,7 @@ test("stop() - several in queue", function() {
expect(4);
stop();
var $foo = $("#nothiddendiv");
var $foo = jQuery("#nothiddendiv");
var w = 0;
$foo.hide().width(200).width();
......@@ -103,7 +103,7 @@ test("stop(clearQueue)", function() {
expect(4);
stop();
var $foo = $("#nothiddendiv");
var $foo = jQuery("#nothiddendiv");
var w = 0;
$foo.hide().width(200).width();
......@@ -130,7 +130,7 @@ test("stop(clearQueue, gotoEnd)", function() {
expect(3);
stop();
var $foo = $("#nothiddendiv");
var $foo = jQuery("#nothiddendiv");
var w = 0;
$foo.hide().width(200).width();
......@@ -156,7 +156,7 @@ test("stop(clearQueue, gotoEnd)", function() {
test("toggle()", function() {
expect(3);
var x = $("#foo");
var x = jQuery("#foo");
ok( x.is(":visible"), "is visible" );
x.toggle();
ok( x.is(":hidden"), "is hidden" );
......@@ -167,68 +167,68 @@ test("toggle()", function() {
var visible = {
Normal: function(elem){},
"CSS Hidden": function(elem){
$(this).addClass("hidden");
jQuery(this).addClass("hidden");
},
"JS Hidden": function(elem){
$(this).hide();
jQuery(this).hide();
}
};
var from = {
"CSS Auto": function(elem,prop){
$(elem).addClass("auto" + prop)
jQuery(elem).addClass("auto" + prop)
.text("This is a long string of text.");
return "";
},
"JS Auto": function(elem,prop){
$(elem).css(prop,"auto")
jQuery(elem).css(prop,"auto")
.text("This is a long string of text.");
return "";
},
"CSS 100": function(elem,prop){
$(elem).addClass("large" + prop);
jQuery(elem).addClass("large" + prop);
return "";
},
"JS 100": function(elem,prop){
$(elem).css(prop,prop == "opacity" ? 1 : "100px");
jQuery(elem).css(prop,prop == "opacity" ? 1 : "100px");
return prop == "opacity" ? 1 : 100;
},
"CSS 50": function(elem,prop){
$(elem).addClass("med" + prop);
jQuery(elem).addClass("med" + prop);
return "";
},
"JS 50": function(elem,prop){
$(elem).css(prop,prop == "opacity" ? 0.50 : "50px");
jQuery(elem).css(prop,prop == "opacity" ? 0.50 : "50px");
return prop == "opacity" ? 0.5 : 50;
},
"CSS 0": function(elem,prop){
$(elem).addClass("no" + prop);
jQuery(elem).addClass("no" + prop);
return "";
},
"JS 0": function(elem,prop){
$(elem).css(prop,prop == "opacity" ? 0 : "0px");
jQuery(elem).css(prop,prop == "opacity" ? 0 : "0px");
return 0;
}
};
var to = {
"show": function(elem,prop){
$(elem).hide().addClass("wide"+prop);
jQuery(elem).hide().addClass("wide"+prop);
return "show";
},
"hide": function(elem,prop){
$(elem).addClass("wide"+prop);
jQuery(elem).addClass("wide"+prop);
return "hide";
},
"100": function(elem,prop){
$(elem).addClass("wide"+prop);
jQuery(elem).addClass("wide"+prop);
return prop == "opacity" ? 1 : 100;
},
"50": function(elem,prop){
return prop == "opacity" ? 0.50 : 50;
},
"0": function(elem,prop){
$(elem).addClass("noback");
jQuery(elem).addClass("noback");
return 0;
}
};
......@@ -339,7 +339,7 @@ jQuery.each( from, function(fn, f){
if ( t_h == "show" ) {
var old_h = jQuery.curCSS(this, "height");
$(elem).append("<br/>Some more text<br/>and some more...");
jQuery(elem).append("<br/>Some more text<br/>and some more...");
ok(old_h != jQuery.css(this, "height" ), "Make sure height is auto.");
}
......@@ -374,50 +374,50 @@ function checkState(){
// Chaining Tests
test("Chain fadeOut fadeIn", function() {
$('#fadein div').saveState().fadeOut('fast').fadeIn('fast',checkState);
jQuery('#fadein div').saveState().fadeOut('fast').fadeIn('fast',checkState);
});
test("Chain fadeIn fadeOut", function() {
$('#fadeout div').saveState().fadeIn('fast').fadeOut('fast',checkState);
jQuery('#fadeout div').saveState().fadeIn('fast').fadeOut('fast',checkState);
});
test("Chain hide show", function() {
$('#show div').saveState().hide('fast').show('fast',checkState);
jQuery('#show div').saveState().hide('fast').show('fast',checkState);
});
test("Chain show hide", function() {
$('#hide div').saveState().show('fast').hide('fast',checkState);
jQuery('#hide div').saveState().show('fast').hide('fast',checkState);
});
test("Chain toggle in", function() {
$('#togglein div').saveState().toggle('fast').toggle('fast',checkState);
jQuery('#togglein div').saveState().toggle('fast').toggle('fast',checkState);
});
test("Chain toggle out", function() {
$('#toggleout div').saveState().toggle('fast').toggle('fast',checkState);
jQuery('#toggleout div').saveState().toggle('fast').toggle('fast',checkState);
});
test("Chain slideDown slideUp", function() {
$('#slidedown div').saveState().slideDown('fast').slideUp('fast',checkState);
jQuery('#slidedown div').saveState().slideDown('fast').slideUp('fast',checkState);
});
test("Chain slideUp slideDown", function() {
$('#slideup div').saveState().slideUp('fast').slideDown('fast',checkState);
jQuery('#slideup div').saveState().slideUp('fast').slideDown('fast',checkState);
});
test("Chain slideToggle in", function() {
$('#slidetogglein div').saveState().slideToggle('fast').slideToggle('fast',checkState);
jQuery('#slidetogglein div').saveState().slideToggle('fast').slideToggle('fast',checkState);
});
test("Chain slideToggle out", function() {
$('#slidetoggleout div').saveState().slideToggle('fast').slideToggle('fast',checkState);
jQuery('#slidetoggleout div').saveState().slideToggle('fast').slideToggle('fast',checkState);
});
function makeTest( text ){
var elem = $("<div></div>")
var elem = jQuery("<div></div>")
.attr("id", "test" + makeTest.id++)
.addClass("box");
$("<h4></h4>")
jQuery("<h4></h4>")
.text( text )
.appendTo("#fx-tests")
.click(function(){
$(this).next().toggle();
jQuery(this).next().toggle();
})
.after( elem );
......
This diff is collapsed.
......@@ -2,8 +2,8 @@ module("selector");
test("element", function() {
expect(9);
ok( $("*").size() >= 30, "Select all" );
var all = $("*"), good = true;
ok( jQuery("*").size() >= 30, "Select all" );
var all = jQuery("*"), good = true;
for ( var i = 0; i < all.length; i++ )
if ( all[i].nodeType == 8 )
good = false;
......@@ -12,18 +12,18 @@ test("element", function() {
t( "Element Selector", "body", ["body"] );
t( "Element Selector", "html", ["html"] );
t( "Parent Element", "div p", ["firstp","ap","sndp","en","sap","first"] );
equals( $("param", "#object1").length, 2, "Object/param as context" );
equals( jQuery("param", "#object1").length, 2, "Object/param as context" );
ok( $("#length").length, '&lt;input name="length"&gt; cannot be found under IE, see #945' );
ok( $("#lengthtest input").length, '&lt;input name="length"&gt; cannot be found under IE, see #945' );
ok( jQuery("#length").length, '&lt;input name="length"&gt; cannot be found under IE, see #945' );
ok( jQuery("#lengthtest input").length, '&lt;input name="length"&gt; cannot be found under IE, see #945' );
});
if ( location.protocol != "file:" ) {
test("Element Selector with underscore", function() {
expect(1);
stop();
$.get("data/with_fries.xml", function(xml) {
equals( $("foo_bar", xml).length, 1, "Element Selector with underscore" );
jQuery.get("data/with_fries.xml", function(xml) {
equals( jQuery("foo_bar", xml).length, 1, "Element Selector with underscore" );
start();
});
});
......@@ -66,14 +66,14 @@ test("id", function() {
t( "All Children of ID", "#foo > *", ["sndp", "en", "sap"] );
t( "All Children of ID with no children", "#firstUL/*", [] );
$('<a name="tName1">tName1 A</a><a name="tName2">tName2 A</a><div id="tName1">tName1 Div</div>').appendTo('#main');
equals( $("#tName1")[0].id, 'tName1', "ID selector with same value for a name attribute" );
equals( $("#tName2").length, 0, "ID selector non-existing but name attribute on an A tag" );
jQuery('<a name="tName1">tName1 A</a><a name="tName2">tName2 A</a><div id="tName1">tName1 Div</div>').appendTo('#main');
equals( jQuery("#tName1")[0].id, 'tName1', "ID selector with same value for a name attribute" );
equals( jQuery("#tName2").length, 0, "ID selector non-existing but name attribute on an A tag" );
t( "ID Selector on Form with an input that has a name of 'id'", "#lengthtest", ["lengthtest"] );
t( "ID selector with non-existant ancestor", "#asdfasdf #foobar", [] ); // bug #986
isSet( $("body").find("div#form"), [], "ID selector within the context of another element" );
isSet( jQuery("body").find("div#form"), [], "ID selector within the context of another element" );
});
test("class", function() {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment