module("effects");
test("show()", function() {
- expect(16);
+ expect(23);
var pass = true, div = jQuery("#main div");
div.show().each(function(){
if ( this.style.display == "none" ) pass = false;
});
ok( pass, "Show" );
- pass = true;
- div.hide().show(null).each(function() {
- if ( this.style.display == "none" ) pass = false;
+ var speeds = {
+ "null speed": null,
+ "undefined speed": undefined,
+ "empty string speed": "",
+ "false speed": false
+ };
+
+ jQuery.each(speeds, function(name, speed) {
+ pass = true;
+ div.hide().show(speed).each(function() {
+ if ( this.style.display == "none" ) pass = false;
+ });
+ ok( pass, "Show with " + name);
+ });
+
+
+ jQuery.each(speeds, function(name, speed) {
+ pass = true;
+ div.hide().show(speed, function() {
+ pass = false;
+ });
+ ok( pass, "Show with " + name + " does not call animate callback" );
});
- ok( pass, "Show will null speed");
jQuery("#main").append('<div id="show-tests"><div><p><a href="#"></a></p><code></code><pre></pre><span></span></div><table><thead><tr><th></th></tr></thead><tbody><tr><td></td></tr></tbody></table><ul><li></li></ul></div>');
test("show(Number) - other displays", function() {
expect(15);
- reset();
+ QUnit.reset();
stop();
jQuery("#main").append('<div id="show-tests"><div><p><a href="#"></a></p><code></code><pre></pre><span></span></div><table><thead><tr><th></th></tr></thead><tbody><tr><td></td></tr></tbody></table><ul><li></li></ul></div>');
*/
test("animate with no properties", function() {
- expect(1);
+ expect(2);
var divs = jQuery("div"), count = 0;
});
equals( divs.length, count, "Make sure that callback is called for each element in the set." );
+
+ stop();
+
+ var foo = jQuery("#foo");
+
+ foo.animate({});
+ foo.animate({top: 10}, 100, function(){
+ ok( true, "Animation was properly dequeued." );
+ start();
+ });
});
test("animate duration 0", function() {
"CSS Auto": function(elem,prop){
jQuery(elem).addClass("auto" + prop)
.text("This is a long string of text.");
- return "";
+ return prop == "opacity" ? 1 : "";
},
"JS Auto": function(elem,prop){
jQuery(elem).css(prop,"auto")
.text("This is a long string of text.");
- return "";
+ return prop == "opacity" ? 1 : "";
},
"CSS 100": function(elem,prop){
jQuery(elem).addClass("large" + prop);
- return "";
+ return prop == "opacity" ? 1 : "";
},
"JS 100": function(elem,prop){
jQuery(elem).css(prop,prop == "opacity" ? 1 : "100px");
},
"CSS 50": function(elem,prop){
jQuery(elem).addClass("med" + prop);
- return "";
+ return prop == "opacity" ? 0.5 : "";
},
"JS 50": function(elem,prop){
jQuery(elem).css(prop,prop == "opacity" ? 0.50 : "50px");
},
"CSS 0": function(elem,prop){
jQuery(elem).addClass("no" + prop);
- return "";
+ return prop == "opacity" ? 0 : "";
},
"JS 0": function(elem,prop){
jQuery(elem).css(prop,prop == "opacity" ? 0 : "0px");
equals( this.style.display, "block", "Showing, display should block: " + this.style.display);
if ( t_w == "hide"||t_w == "show" )
- equals(this.style.width.indexOf(f_w), 0, "Width must be reset to " + f_w + ": " + this.style.width);
+ ok(f_w === "" ? this.style.width === f_w : this.style.width.indexOf(f_w) === 0, "Width must be reset to " + f_w + ": " + this.style.width);
if ( t_h == "hide"||t_h == "show" )
- equals(this.style.height.indexOf(f_h), 0, "Height must be reset to " + f_h + ": " + this.style.height);
+ ok(f_h === "" ? this.style.height === f_h : this.style.height.indexOf(f_h) === 0, "Height must be reset to " + f_h + ": " + this.style.height);
var cur_o = jQuery.style(this, "opacity");
- if ( cur_o !== "" ) cur_o = parseFloat( cur_o );
+
+ if ( cur_o !== "" ) {
+ cur_o = jQuery.css(this, "opacity");
+ }
- if ( t_o == "hide"||t_o == "show" )
+ if ( t_o == "hide" || t_o == "show" )
equals(cur_o, f_o, "Opacity must be reset to " + f_o + ": " + cur_o);
if ( t_w == "hide" )
if ( t_o.constructor == Number ) {
equals(cur_o, t_o, "Final opacity should be " + t_o + ": " + cur_o);
- ok(jQuery.curCSS(this, "opacity") != "" || cur_o == t_o, "Opacity should be explicitly set to " + t_o + ", is instead: " + cur_o);
+ ok(jQuery.css(this, "opacity") != "" || cur_o == t_o, "Opacity should be explicitly set to " + t_o + ", is instead: " + cur_o);
}
if ( t_w.constructor == Number ) {
}
if ( t_h == "show" ) {
- var old_h = jQuery.curCSS(this, "height");
- jQuery(elem).append("<br/>Some more text<br/>and some more...");
- ok(old_h != jQuery.css(this, "height" ), "Make sure height is auto.");
+ var old_h = jQuery.css(this, "height");
+ jQuery(this).append("<br/>Some more text<br/>and some more...");
+ notEqual(jQuery.css(this, "height"), old_h, "Make sure height is auto.");
}
start();
var self = this;
self.save = {};
jQuery.each(check, function(i,c){
- self.save[c] = jQuery.css(self,c);
+ self.save[c] = self.style[ c ] || jQuery.css(self,c);
});
});
};
jQuery.checkState = function(){
var self = this;
jQuery.each(this.save, function(c,v){
- var cur = jQuery.css(self,c);
- equals( v, cur, "Make sure that " + c + " is reset (Old: " + v + " Cur: " + cur + ")");
+ var cur = self.style[ c ] || jQuery.css(self, c);
+ equals( cur, v, "Make sure that " + c + " is reset (Old: " + v + " Cur: " + cur + ")");
});
start();
}