X-Git-Url: http://git.asbjorn.it/?a=blobdiff_plain;f=test%2Funit%2Fcore.js;h=252c9f99dad0ab63bd24360444c494d86c074854;hb=4e9fed3b16ed9612ed373d14a89294e98054f4dd;hp=0640cf5ce24052c6c1137c1d6d41999c1dff04b1;hpb=17955cacf4e8c618ca5c2b09b0d2f43df353f683;p=jquery.git diff --git a/test/unit/core.js b/test/unit/core.js index 0640cf5..252c9f9 100644 --- a/test/unit/core.js +++ b/test/unit/core.js @@ -16,7 +16,7 @@ test("jQuery()", function() { // Basic constructor's behavior - equals( jQuery().length, 1, "jQuery() === jQuery(document)" ); + equals( jQuery().length, 0, "jQuery() === jQuery([])" ); equals( jQuery(undefined).length, 0, "jQuery(undefined) === jQuery([])" ); equals( jQuery(null).length, 0, "jQuery(null) === jQuery([])" ); equals( jQuery("").length, 0, "jQuery('') === jQuery([])" ); @@ -200,6 +200,51 @@ test("trim", function() { equals( jQuery.trim(" " + nbsp + "hello " + nbsp + " "), "hello", " " ); }); +test("isPlainObject", function() { + expect(7); + + stop(); + + // The use case that we want to match + ok(jQuery.isPlainObject({}), "{}"); + + // Instantiated objects shouldn't be matched + ok(!jQuery.isPlainObject(new Date), "new Date"); + + var fn = function(){}; + + // Functions shouldn't be matched + ok(!jQuery.isPlainObject(fn), "fn"); + + // Again, instantiated objects shouldn't be matched + ok(!jQuery.isPlainObject(new fn), "new fn (no methods)"); + + // Makes the function a little more realistic + // (and harder to detect, incidentally) + fn.prototype = {someMethod: function(){}}; + + // Again, instantiated objects shouldn't be matched + ok(!jQuery.isPlainObject(new fn), "new fn"); + + // DOM Element + ok(!jQuery.isPlainObject(document.createElement("div")), "DOM Element"); + + var iframe = document.createElement("iframe"); + document.body.appendChild(iframe); + + window.iframeDone = function(otherObject){ + // Objects from other windows should be matched + ok(jQuery.isPlainObject(new otherObject), "new otherObject"); + document.body.removeChild( iframe ); + start(); + }; + + var doc = iframe.contentDocument || iframe.contentWindow.document; + doc.open(); + doc.write(""); + doc.close(); +}); + test("isFunction", function() { expect(19);