X-Git-Url: http://git.asbjorn.it/?a=blobdiff_plain;f=test%2Funit%2Fcore.js;h=ce70be6887efd92379be6e5cc927a8367c3ce7b8;hb=4b8f6cdc86c395fb92c7d50e8642118963232af4;hp=229ad2ac494b2143738439e6ca4d6c7285f07aa5;hpb=5e99807271ebe194b7f0278a929b053b4dd46c81;p=jquery.git diff --git a/test/unit/core.js b/test/unit/core.js index 229ad2a..ce70be6 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'); @@ -410,6 +418,15 @@ test("jQuery.css(elem, 'height') doesn't clear radio buttons (bug #1095)", funct ok( ! $(":checkbox:last", $checkedtest).attr("checked"), "Check last checkbox still NOT checked." ); }); +test("width()", function() { + expect(2); + + $("#nothiddendiv").width(30); + equals($("#nothiddendiv").width(), 30, "Test set to 30 correctly"); + $("#nothiddendiv").width(-1); // handle negative numbers by ignoring #1599 + equals($("#nothiddendiv").width(), 30, "Test negative width ignored"); +}); + test("text()", function() { expect(1); var expected = "This link has class=\"blog\": Simon Willison's Weblog"; @@ -820,7 +837,7 @@ test("is(String)", function() { }); test("$.extend(Object, Object)", function() { - expect(14); + expect(15); var settings = { xnumber1: 5, xnumber2: 7, xstring1: "peter", xstring2: "pan" }, options = { xnumber2: 1, xstring2: "x", xxx: "newstring" }, @@ -856,6 +873,9 @@ 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 defaults = { xnumber1: 5, xnumber2: 7, xstring1: "peter", xstring2: "pan" }, defaultsCopy = { xnumber1: 5, xnumber2: 7, xstring1: "peter", xstring2: "pan" }, options1 = { xnumber2: 1, xstring2: "x" }, @@ -872,9 +892,11 @@ test("$.extend(Object, Object)", function() { }); test("val()", function() { - expect(2); + expect(3); ok( $("#text1").val() == "Test", "Check for value of input element" ); ok( !$("#text1").val() == "", "Check for value of input element" ); + // ticket #1714 this caused a JS error in IE + ok( $("#first").val() == "", "Check a paragraph element to see if it has a value" ); }); test("val(String)", function() {