X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=test%2Funit%2Fcore.js;h=d8aba16db0d856efb8a39950fac358161000f976;hb=5c111a028a2c86f2392d987951db3a980900f1bd;hp=a61f8ba0f23348ac2a45bff44b9e2267fe3bc14a;hpb=ea9e0ed841f0f2851162e01d5199052872ba7483;p=jquery.git diff --git a/test/unit/core.js b/test/unit/core.js index a61f8ba..d8aba16 100644 --- a/test/unit/core.js +++ b/test/unit/core.js @@ -25,7 +25,7 @@ test("jQuery()", function() { equals( jQuery(obj).selector, "div", "jQuery(jQueryObj) == jQueryObj" ); // can actually yield more than one, when iframes are included, the window is an array as well - equals( 1, jQuery(window).length, "Correct number of elements generated for jQuery(window)" ); + equals( jQuery(window).length, 1, "Correct number of elements generated for jQuery(window)" ); var main = jQuery("#main"); @@ -805,3 +805,30 @@ test("jQuery.proxy", function(){ // Use the string shortcut jQuery.proxy( thisObject, "method" )(); }); + +test("jQuery.parseJSON", function(){ + expect(8); + + equals( jQuery.parseJSON(), null, "Nothing in, null out." ); + equals( jQuery.parseJSON( null ), null, "Nothing in, null out." ); + equals( jQuery.parseJSON( "" ), null, "Nothing in, null out." ); + + same( jQuery.parseJSON("{}"), {}, "Plain object parsing." ); + same( jQuery.parseJSON('{"test":1}'), {"test":1}, "Plain object parsing." ); + + same( jQuery.parseJSON('\n{"test":1}'), {"test":1}, "Make sure leading whitespaces are handled." ); + + try { + jQuery.parseJSON("{a:1}"); + ok( false, "Test malformed JSON string." ); + } catch( e ) { + ok( true, "Test malformed JSON string." ); + } + + try { + jQuery.parseJSON("{'a':1}"); + ok( false, "Test malformed JSON string." ); + } catch( e ) { + ok( true, "Test malformed JSON string." ); + } +});