Add test for bug #3116

This commit is contained in:
timmywil 2011-03-25 10:40:46 -04:00
parent 47c80c2050
commit 3892df207d
2 changed files with 13 additions and 5 deletions

View file

@ -330,7 +330,7 @@ jQuery.extend({
// Check form objects in IE (multiple bugs related) // Check form objects in IE (multiple bugs related)
if ( isFormObjects ) { if ( isFormObjects ) {
// Returns undefined for empty string, which is the blank nodeValue in IE // Return undefined for empty string, which is the blank nodeValue in IE
ret = elem.getAttributeNode( name ).nodeValue || undefined; ret = elem.getAttributeNode( name ).nodeValue || undefined;
} else { } else {
ret = elem.getAttribute( name ); ret = elem.getAttribute( name );

View file

@ -160,7 +160,7 @@ test("attr(Hash)", function() {
}); });
test("attr(String, Object)", function() { test("attr(String, Object)", function() {
expect(28); expect(29);
var div = jQuery("div").attr("foo", "bar"), var div = jQuery("div").attr("foo", "bar"),
fail = false; fail = false;
@ -220,9 +220,9 @@ test("attr(String, Object)", function() {
jQuery("#name").attr('someAttr', '0'); jQuery("#name").attr('someAttr', '0');
equals( jQuery("#name").attr('someAttr'), '0', 'Set attribute to a string of "0"' ); equals( jQuery("#name").attr('someAttr'), '0', 'Set attribute to a string of "0"' );
jQuery("#name").attr('someAttr', 0); jQuery("#name").attr('someAttr', 0);
equals( jQuery("#name").attr('someAttr'), 0, 'Set attribute to the number 0' ); equals( jQuery("#name").attr('someAttr'), '0', 'Set attribute to the number 0' );
jQuery("#name").attr('someAttr', 1); jQuery("#name").attr('someAttr', 1);
equals( jQuery("#name").attr('someAttr'), 1, 'Set attribute to the number 1' ); equals( jQuery("#name").attr('someAttr'), '1', 'Set attribute to the number 1' );
// using contents will get comments regular, text, and comment nodes // using contents will get comments regular, text, and comment nodes
var j = jQuery("#nonnodes").contents(); var j = jQuery("#nonnodes").contents();
@ -233,6 +233,7 @@ test("attr(String, Object)", function() {
QUnit.reset(); QUnit.reset();
// Type
var type = jQuery("#check2").attr('type'); var type = jQuery("#check2").attr('type');
var thrown = false; var thrown = false;
try { try {
@ -272,6 +273,13 @@ test("attr(String, Object)", function() {
} }
ok( thrown, "Exception thrown when trying to change type property" ); ok( thrown, "Exception thrown when trying to change type property" );
equals( "button", button.attr('type'), "Verify that you can't change the type of a button element" ); equals( "button", button.attr('type'), "Verify that you can't change the type of a button element" );
// Setting attributes on svg elements (bug #3116)
var $svg = jQuery('<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" baseProfile="full" width="3000" height="3000">'
+ '<circle cx="200" cy="200" r="150" />'
+ '</svg>').appendTo('body');
equals( $svg.attr('cx', 100).attr('cx'), "100", "Set attribute on svg element" );
$svg.remove();
}); });
test("attr(jquery_method)", function(){ test("attr(jquery_method)", function(){