X-Git-Url: http://git.asbjorn.it/?a=blobdiff_plain;ds=sidebyside;f=test%2Funit%2Fcore.js;h=a1ebb1ba428d111a38e93a5e7576c98f7d4c00ea;hb=5039a4bc5b951b9d28659f6f42f73c59e2e560fc;hp=e71de2dba3393321587289c1cb9690e3409b7bc2;hpb=5c6c99361f315bfbc5829be3af94499c3a107f5d;p=jquery.git diff --git a/test/unit/core.js b/test/unit/core.js index e71de2d..a1ebb1b 100644 --- a/test/unit/core.js +++ b/test/unit/core.js @@ -276,7 +276,7 @@ test("attr(Hash)", function() { }); test("attr(String, Object)", function() { - expect(13); + expect(16); var div = $("div"); div.attr("foo", "bar"); var pass = true; @@ -302,6 +302,14 @@ test("attr(String, Object)", function() { $("#name").attr('maxLength', '10'); ok( document.getElementById('name').maxLength == '10', 'Set maxlength attribute' ); + // for #1070 + $("#name").attr('someAttr', '0'); + equals( $("#name").attr('someAttr'), '0', 'Set attribute to a string of "0"' ); + $("#name").attr('someAttr', 0); + equals( $("#name").attr('someAttr'), 0, 'Set attribute to the number 0' ); + $("#name").attr('someAttr', 1); + equals( $("#name").attr('someAttr'), 1, 'Set attribute to the number 1' ); + reset(); var type = $("#check2").attr('type'); @@ -829,7 +837,7 @@ test("is(String)", function() { }); test("$.extend(Object, Object)", function() { - expect(14); + expect(17); var settings = { xnumber1: 5, xnumber2: 7, xstring1: "peter", xstring2: "pan" }, options = { xnumber2: 1, xstring2: "x", xxx: "newstring" }, @@ -865,6 +873,17 @@ test("$.extend(Object, Object)", function() { var ret = jQuery.extend(true, { foo: "1,2,3" }, { foo: [1, 2, 3] } ); ok( typeof ret.foo != "string", "Check to make sure values equal with coersion (but not actually equal) overwrite correctly" ); + var ret = jQuery.extend(true, { foo:"bar" }, { foo:null } ); + ok( typeof ret.foo !== 'undefined', "Make sure a null value doesn't crash with deep extend, for #1908" ); + + var obj = { foo:null }; + jQuery.extend(true, obj, { foo:"notnull" } ); + equals( obj.foo, "notnull", "Make sure a null value can be overwritten" ); + + function func() {} + jQuery.extend(func, { key: "value" } ); + equals( func.key, "value", "Verify a function can be extended" ); + var defaults = { xnumber1: 5, xnumber2: 7, xstring1: "peter", xstring2: "pan" }, defaultsCopy = { xnumber1: 5, xnumber2: 7, xstring1: "peter", xstring2: "pan" }, options1 = { xnumber2: 1, xstring2: "x" },