}
test("noConflict", function() {
- expect(6);
+ expect(7);
var $$ = jQuery;
equals( jQuery.noConflict(true), $$, "noConflict returned the jQuery object" );
equals( jQuery, originaljQuery, "Make sure jQuery was reverted." );
equals( $, original$, "Make sure $ was reverted." );
+ ok( $$("#main").html("test"), "Make sure that jQuery still works." );
jQuery = $$;
});
equals( jQuery.trim( false ), "false", "Boolean" );
});
+test("type", function() {
+ expect(18);
+
+ equals( jQuery.type(null), "null", "null" );
+ equals( jQuery.type(undefined), "undefined", "undefined" );
+ equals( jQuery.type(true), "boolean", "Boolean" );
+ equals( jQuery.type(false), "boolean", "Boolean" );
+ equals( jQuery.type(Boolean(true)), "boolean", "Boolean" );
+ equals( jQuery.type(0), "number", "Number" );
+ equals( jQuery.type(1), "number", "Number" );
+ equals( jQuery.type(Number(1)), "number", "Number" );
+ equals( jQuery.type(""), "string", "String" );
+ equals( jQuery.type("a"), "string", "String" );
+ equals( jQuery.type(String("a")), "string", "String" );
+ equals( jQuery.type({}), "object", "Object" );
+ equals( jQuery.type(/foo/), "regexp", "RegExp" );
+ equals( jQuery.type(new RegExp("asdf")), "regexp", "RegExp" );
+ equals( jQuery.type([1]), "array", "Array" );
+ equals( jQuery.type(new Date()), "date", "Date" );
+ equals( jQuery.type(new Function("return;")), "function", "Function" );
+ equals( jQuery.type(function(){}), "function", "Function" );
+});
+
test("isPlainObject", function() {
expect(14);
});
}
+test("isWindow", function() {
+ expect( 12 );
+
+ ok( jQuery.isWindow(window), "window" );
+ ok( !jQuery.isWindow(), "empty" );
+ ok( !jQuery.isWindow(null), "null" );
+ ok( !jQuery.isWindow(undefined), "undefined" );
+ ok( !jQuery.isWindow(document), "document" );
+ ok( !jQuery.isWindow(document.documentElement), "documentElement" );
+ ok( !jQuery.isWindow(""), "string" );
+ ok( !jQuery.isWindow(1), "number" );
+ ok( !jQuery.isWindow(true), "boolean" );
+ ok( !jQuery.isWindow({}), "object" );
+ // HMMM
+ // ok( !jQuery.isWindow({ setInterval: function(){} }), "fake window" );
+ ok( !jQuery.isWindow(/window/), "regexp" );
+ ok( !jQuery.isWindow(function(){}), "function" );
+});
+
test("jQuery('html')", function() {
expect(15);
});
test("jQuery.extend(Object, Object)", function() {
- expect(27);
+ expect(28);
var settings = { xnumber1: 5, xnumber2: 7, xstring1: "peter", xstring2: "pan" },
options = { xnumber2: 1, xstring2: "x", xxx: "newstring" },
same( deep2.foo, deep2copy.foo, "Check if not deep2: options must not be modified" );
equals( deep1.foo2, document, "Make sure that a deep clone was not attempted on the document" );
- ok( jQuery.extend(true, [], arr) !== arr, "Deep extend of array must clone array" );
ok( jQuery.extend(true, {}, nestedarray).arr !== arr, "Deep extend of object must clone child array" );
+
+ // #5991
+ ok( jQuery.isArray( jQuery.extend(true, { arr: {} }, nestedarray).arr ), "Cloned array heve to be an Array" );
+ ok( jQuery.isPlainObject( jQuery.extend(true, { arr: arr }, { arr: {} }).arr ), "Cloned object heve to be an plain object" );
var empty = {};
var optionsWithLength = { foo: { length: -1 } };