UNPKG

@qooxdoo/framework

Version:

The JS Framework for Coders

147 lines (109 loc) 3.86 kB
/* ************************************************************************ qooxdoo - the new era of web development http://qooxdoo.org Copyright: 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: * Christopher Zuendorf (czuendorf) ************************************************************************ */ qx.Class.define("qx.test.mobile.container.Carousel", { extend: qx.test.mobile.MobileTestCase, members: { testInit() { var carousel = new qx.ui.mobile.container.Carousel(0.4); this.getRoot().add(carousel); carousel.destroy(); }, testAddCarouselPage() { var carousel = new qx.ui.mobile.container.Carousel(); var carouselPage = new qx.ui.mobile.container.Composite(); carousel.add(carouselPage); this.getRoot().add(carousel); carousel.destroy(); carouselPage.destroy(); }, testRemoveCarouselPage() { var carousel = new qx.ui.mobile.container.Carousel(); var carouselPage = new qx.ui.mobile.container.Composite(); carousel.add(carouselPage); carousel.removePageByIndex(0); this.getRoot().add(carousel); carousel.destroy(); carouselPage.destroy(); }, testPageSwitch() { var carousel = new qx.ui.mobile.container.Carousel(); var carouselPage1 = new qx.ui.mobile.container.Composite(); carousel.add(carouselPage1); var carouselPage2 = new qx.ui.mobile.container.Composite(); carousel.add(carouselPage2); this.getRoot().add(carousel); this.assertEquals(0, carousel.getCurrentIndex()); carousel.nextPage(); this.assertEquals(1, carousel.getCurrentIndex()); // OVERFLOW carousel.nextPage(); this.assertEquals(1, carousel.getCurrentIndex()); carousel.previousPage(); this.assertEquals(0, carousel.getCurrentIndex()); // OVERFLOW carousel.previousPage(); this.assertEquals(0, carousel.getCurrentIndex()); carousel.destroy(); carouselPage1.destroy(); carouselPage2.destroy(); }, testPageSwitchEvent() { var carousel = new qx.ui.mobile.container.Carousel(); var carouselPage1 = new qx.ui.mobile.container.Composite(); carousel.add(carouselPage1); var carouselPage2 = new qx.ui.mobile.container.Composite(); carousel.add(carouselPage2); this.getRoot().add(carousel); this.assertEventFired( carousel, "changeCurrentIndex", function () { carousel.nextPage(); }, function (e) { this.assertEquals(1, e.getData()); this.assertEquals(0, e.getOldData()); }.bind(this) ); this.assertEventFired( carousel, "changeCurrentIndex", function () { carousel.previousPage(); }, function (e) { this.assertEquals(0, e.getData()); this.assertEquals(1, e.getOldData()); }.bind(this) ); carousel.destroy(); carouselPage1.destroy(); carouselPage2.destroy(); }, testScrollToPage() { var carousel = new qx.ui.mobile.container.Carousel(); var carouselPage1 = new qx.ui.mobile.container.Composite(); carousel.add(carouselPage1); var carouselPage2 = new qx.ui.mobile.container.Composite(); carousel.add(carouselPage2); this.getRoot().add(carousel); this.assertEquals(0, carousel.getCurrentIndex()); carousel.setCurrentIndex(1); this.assertEquals(1, carousel.getCurrentIndex()); window.setTimeout(function () { carousel.destroy(); carouselPage1.destroy(); carouselPage2.destroy(); }, 600); } } });