});
test("jQuery()", function() {
- expect(12);
+ expect(15);
// Basic constructor's behavior
var code = jQuery("<code/>");
equals( code.length, 1, "Correct number of elements generated for code" );
+ equals( code.parent().length, 0, "Make sure that the generated HTML has no parent." );
var img = jQuery("<img/>");
equals( img.length, 1, "Correct number of elements generated for img" );
+ equals( img.parent().length, 0, "Make sure that the generated HTML has no parent." );
var div = jQuery("<div/><hr/><code/><b/>");
equals( div.length, 4, "Correct number of elements generated for div hr code b" );
+ equals( div.parent().length, 0, "Make sure that the generated HTML has no parent." );
equals( jQuery([1,2,3]).get(1), 2, "Test passing an array to the factory" );
});
test("isPlainObject", function() {
- expect(7);
+ expect(14);
stop();
// The use case that we want to match
ok(jQuery.isPlainObject({}), "{}");
+
+ // Not objects shouldn't be matched
+ ok(!jQuery.isPlainObject(""), "string");
+ ok(!jQuery.isPlainObject(0) && !jQuery.isPlainObject(1), "number");
+ ok(!jQuery.isPlainObject(true) && !jQuery.isPlainObject(false), "boolean");
+ ok(!jQuery.isPlainObject(null), "null");
+ ok(!jQuery.isPlainObject(undefined), "undefined");
+
+ // Arrays shouldn't be matched
+ ok(!jQuery.isPlainObject([]), "array");
// Instantiated objects shouldn't be matched
ok(!jQuery.isPlainObject(new Date), "new Date");
// DOM Element
ok(!jQuery.isPlainObject(document.createElement("div")), "DOM Element");
+
+ // Window
+ ok(!jQuery.isPlainObject(window), "window");
var iframe = document.createElement("iframe");
document.body.appendChild(iframe);