if ( scripts.length ) {
jQuery.each( scripts, function( i, elem ) {
if ( elem.src ) {
- jQuery.ajax({
+ jQuery.ajax ? jQuery.ajax({
url: elem.src,
type: "GET",
dataType: "script",
async: false,
global: false,
throws: true
- });
+ }) : jQuery.error( "no ajax" );
} else {
jQuery.globalEval( ( elem.text || elem.textContent || elem.innerHTML || "" ).replace( rcleanScript, "" ) );
}
var oldCacheLength = 0,
oldFragmentsLength = 0,
oldTimersLength = 0,
- oldActive = 0;
+ oldActive = jQuery.active;
/**
* Ensures that tests have cleaned up properly after themselves. Should be passed as the
module("ajax", { teardown: moduleTeardown });
-if ( !isLocal || hasPHP) {
+if ( jQuery.ajax && ( !isLocal || hasPHP ) ) {
test("jQuery.ajax() - success callbacks", function() {
expect( 8 );
});
test("val()", function() {
- expect(26);
+ expect( 20 + ( jQuery.fn.serialize ? 6 : 0 ) );
document.getElementById("text1").value = "bla";
equal( jQuery("#text1").val(), "bla", "Check for modified value of input element" );
jQuery("#select5").val(3);
equal( jQuery("#select5").val(), "3", "Check value on ambiguous select." );
- var checks = jQuery("<input type='checkbox' name='test' value='1'/><input type='checkbox' name='test' value='2'/><input type='checkbox' name='test' value=''/><input type='checkbox' name='test'/>").appendTo("#form");
+ if ( jQuery.fn.serialize ) {
+ var checks = jQuery("<input type='checkbox' name='test' value='1'/><input type='checkbox' name='test' value='2'/><input type='checkbox' name='test' value=''/><input type='checkbox' name='test'/>").appendTo("#form");
- deepEqual( checks.serialize(), "", "Get unchecked values." );
+ deepEqual( checks.serialize(), "", "Get unchecked values." );
- equal( checks.eq(3).val(), "on", "Make sure a value of 'on' is provided if none is specified." );
+ equal( checks.eq(3).val(), "on", "Make sure a value of 'on' is provided if none is specified." );
- checks.val([ "2" ]);
- deepEqual( checks.serialize(), "test=2", "Get a single checked value." );
+ checks.val([ "2" ]);
+ deepEqual( checks.serialize(), "test=2", "Get a single checked value." );
- checks.val([ "1", "" ]);
- deepEqual( checks.serialize(), "test=1&test=", "Get multiple checked values." );
+ checks.val([ "1", "" ]);
+ deepEqual( checks.serialize(), "test=1&test=", "Get multiple checked values." );
- checks.val([ "", "2" ]);
- deepEqual( checks.serialize(), "test=2&test=", "Get multiple checked values." );
+ checks.val([ "", "2" ]);
+ deepEqual( checks.serialize(), "test=2&test=", "Get multiple checked values." );
- checks.val([ "1", "on" ]);
- deepEqual( checks.serialize(), "test=1&test=on", "Get multiple checked values." );
+ checks.val([ "1", "on" ]);
+ deepEqual( checks.serialize(), "test=1&test=on", "Get multiple checked values." );
- checks.remove();
+ checks.remove();
+ }
var $button = jQuery("<button value='foobar'>text</button>").insertAfter("#button");
equal( $button.val(), "foobar", "Value retrieval on a button does not return innerHTML" );
window.globalEvalTest = undefined;
});
-if ( !isLocal ) {
-test("browser", function() {
- stop();
+if ( jQuery.get && !isLocal ) {
+ test("browser", function() {
+ stop();
+
+ jQuery.get("data/ua.txt", function(data){
+ var uas = data.split("\n");
+ expect( (uas.length - 1) * 2 );
+
+ jQuery.each(uas, function(){
+ var parts = this.split("\t");
+ if ( parts[2] ) {
+ var ua = jQuery.uaMatch( parts[2] );
+ equal( ua.browser, parts[0], "Checking browser for " + parts[2] );
+ equal( ua.version, parts[1], "Checking version string for " + parts[2] );
+ }
+ });
- jQuery.get("data/ua.txt", function(data){
- var uas = data.split("\n");
- expect( (uas.length - 1) * 2 );
-
- jQuery.each(uas, function(){
- var parts = this.split("\t");
- if ( parts[2] ) {
- var ua = jQuery.uaMatch( parts[2] );
- equal( ua.browser, parts[0], "Checking browser for " + parts[2] );
- equal( ua.version, parts[1], "Checking version string for " + parts[2] );
- }
+ start();
});
-
- start();
});
-});
}
test("noConflict", function() {
});
test("appendTo(String|Element|Array<Element>|jQuery)", function() {
- expect(17);
+ expect( 16 + ( jQuery.getScript ? 1 : 0 ) );
var defaultText = "Try them out:"
jQuery("<b>buga</b>").appendTo("#first");
QUnit.reset();
- stop();
- jQuery.getScript('data/test.js', function() {
- jQuery('script[src*="data\\/test\\.js"]').remove();
- start();
- });
+ if ( jQuery.getScript ) {
+ stop();
+ jQuery.getScript('data/test.js', function() {
+ jQuery('script[src*="data\\/test\\.js"]').remove();
+ start();
+ });
+ }
});
var testPrepend = function(val) {
ok( true, "IE8 does not crash" );
});
-var userAgent = window.navigator.userAgent;
+(function() {
-// These tests do not have to stay
-// They are here to help with upcoming support changes for 1.8
-if ( /chrome\/19\.0/i.test(userAgent) ) {
- test("Verify that the support tests resolve as expected per browser", function() {
- var i,
+ var userAgent = window.navigator.userAgent,
+ expected;
+
+ // These tests do not have to stay
+ // They are here to help with upcoming support changes for 1.8
+ if ( /chrome\/19\.0/i.test(userAgent) ) {
expected = {
"leadingWhitespace":true,
"tbody":true,
"cors":true,
"doesNotIncludeMarginInBodyOffset":true
};
- for ( i in expected ) {
- equal( jQuery.support[i], expected[i], "jQuery.support['" + i + "']: " + jQuery.support[i] + ", expected['" + i + "']: " + expected[i]);
- }
- });
-} else if ( /msie 8\.0/i.test(userAgent) ) {
- test("Verify that the support tests resolve as expected per browser", function() {
- var i,
+ } else if ( /msie 8\.0/i.test(userAgent) ) {
expected = {
"leadingWhitespace":false,
"tbody":true,
"cors":false,
"doesNotIncludeMarginInBodyOffset":true
};
- for ( i in expected ) {
- equal( jQuery.support[i], expected[i], "jQuery.support['" + i + "']: " + jQuery.support[i] + ", expected['" + i + "']: " + expected[i]);
- }
- });
-} else if ( /msie 7\.0/i.test(userAgent) ) {
- test("Verify that the support tests resolve as expected per browser", function() {
- var i,
+ } else if ( /msie 7\.0/i.test(userAgent) ) {
expected = {
"ajax": true,
"appendChecked": false,
"tbody": false,
"style": false
};
- for ( i in expected ) {
- equal( jQuery.support[i], expected[i], "jQuery.support['" + i + "']: " + jQuery.support[i] + ", expected['" + i + "']: " + expected[i]);
- }
- });
-} else if ( /msie 6\.0/i.test(userAgent) ) {
- test("Verify that the support tests resolve as expected per browser", function() {
- var i,
+ } else if ( /msie 6\.0/i.test(userAgent) ) {
expected = {
"leadingWhitespace":false,
"tbody":false,
"cors":false,
"doesNotIncludeMarginInBodyOffset":true
};
- for ( i in expected ) {
- equal( jQuery.support[i], expected[i], "jQuery.support['" + i + "']: " + jQuery.support[i] + ", expected['" + i + "']: " + expected[i]);
- }
- });
-} else if ( /5\.1\.1 safari/i.test(userAgent) ) {
- test("Verify that the support tests resolve as expected per browser", function() {
- var i,
+ } else if ( /5\.1\.1 safari/i.test(userAgent) ) {
expected = {
"leadingWhitespace":true,
"tbody":true,
"cors":true,
"doesNotIncludeMarginInBodyOffset":true
};
- for ( i in expected ) {
- equal( jQuery.support[i], expected[i], "jQuery.support['" + i + "']: " + jQuery.support[i] + ", expected['" + i + "']: " + expected[i]);
- }
- });
-} else if ( /firefox\/3\.6/i.test(userAgent) ) {
- test("Verify that the support tests resolve as expected per browser", function() {
- var i,
+ } else if ( /firefox\/3\.6/i.test(userAgent) ) {
expected = {
"leadingWhitespace":true,
"tbody":true,
"cors":true,
"doesNotIncludeMarginInBodyOffset":true
};
- for ( i in expected ) {
- equal( jQuery.support[i], expected[i], "jQuery.support['" + i + "']: " + jQuery.support[i] + ", expected['" + i + "']: " + expected[i]);
+ }
+
+ test("Verify that the support tests resolve as expected per browser", function() {
+ for ( var i in expected ) {
+ if ( jQuery.isAjax || i !== "ajax" && i !== "cors" ) {
+ equal( jQuery.support[i], expected[i], "jQuery.support['" + i + "']: " + jQuery.support[i] + ", expected['" + i + "']: " + expected[i]);
+ }
}
});
-}
+
+})();
+
+