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");
});
test("trim", function() {
- expect(4);
+ expect(9);
- var nbsp = String.fromCharCode(160);
+ 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", " " );
+ 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", " " );
+
+ equals( jQuery.trim(), "", "Nothing in." );
+ equals( jQuery.trim( undefined ), "", "Undefined" );
+ equals( jQuery.trim( null ), "", "Null" );
+ equals( jQuery.trim( 5 ), "5", "Number" );
+ equals( jQuery.trim( false ), "false", "Boolean" );
});
test("isPlainObject", function() {
var doc = iframe.contentDocument || iframe.contentWindow.document;
doc.open();
- doc.write("<body onload='window.top.iframeDone(Object);'>");
+ doc.write("<body onload='window.parent.iframeDone(Object);'>");
doc.close();
});
// 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." );
+ }
+});