X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;ds=inline;f=test%2Funit%2Fcore.js;h=df610eb2065f5a5c6860662d1c36982a3f803fc7;hb=841f9ff7a1815b521044aeeb39ccbe70fa688201;hp=4b1da5167269b6978c25589ab5ea50ffb18f103d;hpb=b256a3a266721f04d38dca59e56b37b9a682b2f2;p=jquery.git diff --git a/test/unit/core.js b/test/unit/core.js index 4b1da51..df610eb 100644 --- a/test/unit/core.js +++ b/test/unit/core.js @@ -189,6 +189,62 @@ test("noConflict", function() { jQuery = $$; }); +test("trim", function() { + expect(4); + + var nbsp = String.fromCharCode(160); + + equals( jQuery.trim("hello "), "hello", "trailing space" ); + equals( jQuery.trim(" hello"), "hello", "leading space" ); + equals( jQuery.trim(" hello "), "hello", "space on both sides" ); + 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); @@ -310,7 +366,7 @@ test("isXMLDoc - XML", function() { } test("jQuery('html')", function() { - expect(13); + expect(15); reset(); jQuery.foo = false; @@ -339,6 +395,9 @@ test("jQuery('html')", function() { ok( j.length >= 2, "Check node,textnode,comment creation (some browsers delete comments)" ); ok( !jQuery("")[0].selected, "Make sure that options are auto-selected #2050" ); + + ok( jQuery("")[0], "Create a div with closing tag." ); + ok( jQuery("