From 3a80de1c7a67fc48908b37cfbd8806a265488723 Mon Sep 17 00:00:00 2001 From: Ariel Flesler Date: Sun, 3 May 2009 15:57:25 +0000 Subject: [PATCH] jquery core: $() -> $(document) and $(undefined) -> $([]). Removed a duplicated block. --- src/core.js | 8 +------- test/unit/core.js | 20 +++++++++++++------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/core.js b/src/core.js index 86c9982..23b4a57 100644 --- a/src/core.js +++ b/src/core.js @@ -18,7 +18,7 @@ var window = this, jQuery = window.jQuery = window.$ = function( selector, context ) { // The jQuery object is actually just the init constructor 'enhanced' - return selector === undefined ? + return arguments.length === 0 ? rootjQuery : new jQuery.fn.init( selector, context ); }, @@ -36,12 +36,6 @@ var window = this, // Save a reference to the core toString method toString = Object.prototype.toString; -// Define the main jQuery method -jQuery = window.jQuery = window.$ = function( selector, context ) { - // The jQuery object is actually just the init constructor 'enhanced' - return new jQuery.fn.init( selector, context ); -}; - jQuery.fn = jQuery.prototype = { init: function( selector, context ) { var match, elem, ret; diff --git a/test/unit/core.js b/test/unit/core.js index 939e1b8..c51f053 100644 --- a/test/unit/core.js +++ b/test/unit/core.js @@ -12,8 +12,19 @@ test("Basic requirements", function() { }); test("jQuery()", function() { - expect(8); - + expect(11); + + // Basic constructor's behavior + + equals( jQuery().length, 1, "jQuery() === jQuery(document)" ); + equals( jQuery(undefined).length, 0, "jQuery(undefined) === jQuery([])" ); + equals( jQuery(null).length, 0, "jQuery(null) === jQuery([])" ); + equals( jQuery("").length, 0, "jQuery('') === jQuery([])" ); + + // 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)" ); + + var main = jQuery("#main"); isSet( jQuery("div p", main).get(), q("sndp", "en", "sap"), "Basic selector with jQuery object as context" ); @@ -42,11 +53,6 @@ test("jQuery()", function() { var div = jQuery("

"); equals( div.length, 4, "Correct number of elements generated for div hr code b" ); - // can actually yield more than one, when iframes are included, the window is an array as well - equals( jQuery(window).length, 1, "Correct number of elements generated for window" ); - - equals( jQuery(document).length, 1, "Correct number of elements generated for document" ); - equals( jQuery([1,2,3]).get(1), 2, "Test passing an array to the factory" ); equals( jQuery(document.body).get(0), jQuery('body').get(0), "Test passing an html node to the factory" ); -- 1.7.10.4