UNPKG

@qooxdoo/framework

Version:

The JS Framework for Coders

101 lines (82 loc) 2.37 kB
/* ************************************************************************ qooxdoo - the new era of web development http://qooxdoo.org Copyright: 2004-2012 1&1 Internet AG, Germany, http://www.1und1.de License: MIT: https://opensource.org/licenses/MIT See the LICENSE file in the project's top-level directory for details. Authors: * Martin Wittemann (wittemann) ************************************************************************ */ qx.Class.define("qx.test.bom.element.AnimationJs", { extend: qx.dev.unit.TestCase, include: qx.dev.unit.MMock, members: { __el: null, testStop() { var el = qx.dom.Element.create("div"); var handle = qx.bom.element.AnimationJs.animate(el, { duration: 100, keyFrames: { 0: { opacity: 1 }, 100: { opacity: 0 } }, delay: 200 }); var spy = this.spy(); handle.on("start", spy); handle.stop(); this.wait( 500, function () { this.assertNotCalled(spy); }, this ); }, setUp() { this.__el = qx.dom.Element.create("img"); qx.bom.element.Style.setStyles(this.__el, { width: "200px", height: "200px" }); document.body.appendChild(this.__el); }, tearDown() { document.body.removeChild(this.__el); this.__el = null; }, "test animate properties which are CSS properties and element attributes"() { // known to fail in chrome if (qx.core.Environment.get("browser.name") == "chrome") { throw new qx.dev.unit.RequirementError(); } if (qx.core.Environment.get("browser.name") == "safari") { throw new qx.dev.unit.RequirementError(); } var handle = qx.bom.element.Animation.animate(this.__el, { duration: 100, keyFrames: { 0: { width: "200px", height: "200px" }, 100: { width: "400px", height: "400px" } }, keep: 100 }); this.wait( 500, function () { this.assertEquals( "400px", qx.bom.element.Style.get(this.__el, "width") ); this.assertEquals( "400px", qx.bom.element.Style.get(this.__el, "height") ); }, this ); } } });