1ef39d40dSAndrew Rist /************************************************************** 2cdf0e10cSrcweir * 3ef39d40dSAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one 4ef39d40dSAndrew Rist * or more contributor license agreements. See the NOTICE file 5ef39d40dSAndrew Rist * distributed with this work for additional information 6ef39d40dSAndrew Rist * regarding copyright ownership. The ASF licenses this file 7ef39d40dSAndrew Rist * to you under the Apache License, Version 2.0 (the 8ef39d40dSAndrew Rist * "License"); you may not use this file except in compliance 9ef39d40dSAndrew Rist * with the License. You may obtain a copy of the License at 10ef39d40dSAndrew Rist * 11ef39d40dSAndrew Rist * http://www.apache.org/licenses/LICENSE-2.0 12ef39d40dSAndrew Rist * 13ef39d40dSAndrew Rist * Unless required by applicable law or agreed to in writing, 14ef39d40dSAndrew Rist * software distributed under the License is distributed on an 15ef39d40dSAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 16ef39d40dSAndrew Rist * KIND, either express or implied. See the License for the 17ef39d40dSAndrew Rist * specific language governing permissions and limitations 18ef39d40dSAndrew Rist * under the License. 19ef39d40dSAndrew Rist * 20ef39d40dSAndrew Rist *************************************************************/ 21ef39d40dSAndrew Rist 22ef39d40dSAndrew Rist 23cdf0e10cSrcweir 24cdf0e10cSrcweir package ifc.awt; 25cdf0e10cSrcweir 26cdf0e10cSrcweir import lib.MultiMethodTest; 27cdf0e10cSrcweir 28cdf0e10cSrcweir import com.sun.star.awt.SpinEvent; 29cdf0e10cSrcweir import com.sun.star.awt.XSpinField; 30cdf0e10cSrcweir import com.sun.star.awt.XSpinListener; 31cdf0e10cSrcweir import com.sun.star.lang.EventObject; 32cdf0e10cSrcweir 33cdf0e10cSrcweir /** 34cdf0e10cSrcweir * Testing <code>com.sun.star.awt.XSpinField</code> 35cdf0e10cSrcweir * interface methods : 36cdf0e10cSrcweir * <ul> 37cdf0e10cSrcweir * <li><code> addSpinListener()</code></li> 38cdf0e10cSrcweir * <li><code> removeSpinListener()</code></li> 39cdf0e10cSrcweir * <li><code> up()</code></li> 40cdf0e10cSrcweir * <li><code> down()</code></li> 41cdf0e10cSrcweir * <li><code> first()</code></li> 42cdf0e10cSrcweir * <li><code> last()</code></li> 43cdf0e10cSrcweir * <li><code> enableRepeat()</code></li> 44cdf0e10cSrcweir * </ul> <p> 45cdf0e10cSrcweir * Test is <b> NOT </b> multithread compilant. <p> 46cdf0e10cSrcweir * @see com.sun.star.awt.XSpinField 47cdf0e10cSrcweir */ 48cdf0e10cSrcweir public class _XSpinField extends MultiMethodTest { 49cdf0e10cSrcweir 50cdf0e10cSrcweir public XSpinField oObj = null; 51cdf0e10cSrcweir 52cdf0e10cSrcweir /** 53cdf0e10cSrcweir * Listener implementation which set flags on appropriate 54cdf0e10cSrcweir * listener methods calls. 55cdf0e10cSrcweir */ 56cdf0e10cSrcweir protected class TestListener implements XSpinListener { 57cdf0e10cSrcweir public boolean upFl = false ; 58cdf0e10cSrcweir public boolean downFl = false ; 59cdf0e10cSrcweir public boolean firstFl = false ; 60cdf0e10cSrcweir public boolean lastFl = false ; 61cdf0e10cSrcweir up(SpinEvent e)62cdf0e10cSrcweir public void up(SpinEvent e) { 63cdf0e10cSrcweir upFl = true ; 64cdf0e10cSrcweir } down(SpinEvent e)65cdf0e10cSrcweir public void down(SpinEvent e) { 66cdf0e10cSrcweir downFl = true ; 67cdf0e10cSrcweir } first(SpinEvent e)68cdf0e10cSrcweir public void first(SpinEvent e) { 69cdf0e10cSrcweir firstFl = true ; 70cdf0e10cSrcweir } last(SpinEvent e)71cdf0e10cSrcweir public void last(SpinEvent e) { 72cdf0e10cSrcweir lastFl = true ; 73cdf0e10cSrcweir } disposing(EventObject e)74cdf0e10cSrcweir public void disposing(EventObject e) {} 75cdf0e10cSrcweir } 76cdf0e10cSrcweir 77cdf0e10cSrcweir private TestListener listener = new TestListener() ; 78cdf0e10cSrcweir 79cdf0e10cSrcweir /** 80cdf0e10cSrcweir * Just adds a listener. <p> 81*bb6af6bcSPedro Giffuni * Has <b>OK</b> status if no runtime exceptions occurred. 82cdf0e10cSrcweir */ _addSpinListener()83cdf0e10cSrcweir public void _addSpinListener() { 84cdf0e10cSrcweir oObj.addSpinListener(listener) ; 85cdf0e10cSrcweir 86cdf0e10cSrcweir tRes.tested("addSpinListener()", true) ; 87cdf0e10cSrcweir } 88cdf0e10cSrcweir 89cdf0e10cSrcweir /** 90cdf0e10cSrcweir * Calls the method. <p> 91cdf0e10cSrcweir * Has <b>OK</b> status if the appropriate listener method 92cdf0e10cSrcweir * was called. <p> 93cdf0e10cSrcweir * The following method tests are to be completed successfully before : 94cdf0e10cSrcweir * <ul> 95cdf0e10cSrcweir * <li> <code> addSpinListener </code> </li> 96cdf0e10cSrcweir * </ul> 97cdf0e10cSrcweir */ _up()98cdf0e10cSrcweir public void _up() { 99cdf0e10cSrcweir requiredMethod("addSpinListener()") ; 100cdf0e10cSrcweir 101cdf0e10cSrcweir oObj.up() ; 102cdf0e10cSrcweir shortWait(); 103cdf0e10cSrcweir 104cdf0e10cSrcweir tRes.tested("up()", listener.upFl) ; 105cdf0e10cSrcweir } 106cdf0e10cSrcweir 107cdf0e10cSrcweir /** 108cdf0e10cSrcweir * Calls the method. <p> 109cdf0e10cSrcweir * Has <b>OK</b> status if the appropriate listener method 110cdf0e10cSrcweir * was called. <p> 111cdf0e10cSrcweir * The following method tests are to be completed successfully before : 112cdf0e10cSrcweir * <ul> 113cdf0e10cSrcweir * <li> <code> addSpinListener </code> </li> 114cdf0e10cSrcweir * </ul> 115cdf0e10cSrcweir */ _down()116cdf0e10cSrcweir public void _down() { 117cdf0e10cSrcweir requiredMethod("addSpinListener()") ; 118cdf0e10cSrcweir 119cdf0e10cSrcweir oObj.down() ; 120cdf0e10cSrcweir shortWait(); 121cdf0e10cSrcweir 122cdf0e10cSrcweir tRes.tested("down()", listener.downFl) ; 123cdf0e10cSrcweir } 124cdf0e10cSrcweir 125cdf0e10cSrcweir /** 126cdf0e10cSrcweir * Calls the method. <p> 127cdf0e10cSrcweir * Has <b>OK</b> status if the appropriate listener method 128cdf0e10cSrcweir * was called.<p> 129cdf0e10cSrcweir * The following method tests are to be completed successfully before : 130cdf0e10cSrcweir * <ul> 131cdf0e10cSrcweir * <li> <code> addSpinListener </code> </li> 132cdf0e10cSrcweir * </ul> 133cdf0e10cSrcweir */ _first()134cdf0e10cSrcweir public void _first() { 135cdf0e10cSrcweir requiredMethod("addSpinListener()") ; 136cdf0e10cSrcweir 137cdf0e10cSrcweir oObj.first() ; 138cdf0e10cSrcweir shortWait(); 139cdf0e10cSrcweir 140cdf0e10cSrcweir tRes.tested("first()", listener.firstFl) ; 141cdf0e10cSrcweir } 142cdf0e10cSrcweir 143cdf0e10cSrcweir /** 144cdf0e10cSrcweir * Calls the method. <p> 145cdf0e10cSrcweir * Has <b>OK</b> status if the appropriate listener method 146cdf0e10cSrcweir * was called.<p> 147cdf0e10cSrcweir * The following method tests are to be completed successfully before : 148cdf0e10cSrcweir * <ul> 149cdf0e10cSrcweir * <li> <code> addSpinListener </code> </li> 150cdf0e10cSrcweir * </ul> 151cdf0e10cSrcweir */ _last()152cdf0e10cSrcweir public void _last() { 153cdf0e10cSrcweir requiredMethod("addSpinListener()") ; 154cdf0e10cSrcweir 155cdf0e10cSrcweir oObj.last() ; 156cdf0e10cSrcweir shortWait(); 157cdf0e10cSrcweir 158cdf0e10cSrcweir tRes.tested("last()", listener.lastFl) ; 159cdf0e10cSrcweir } 160cdf0e10cSrcweir 161cdf0e10cSrcweir /** 162cdf0e10cSrcweir * Removes the listener, then calls <code>up</code> method and 163cdf0e10cSrcweir * checks if te listener wasn't called. <p> 164cdf0e10cSrcweir * Has <b>OK</b> status if listener wasn't called. <p> 165cdf0e10cSrcweir * The following method tests are to be completed successfully before : 166cdf0e10cSrcweir * <ul> 167cdf0e10cSrcweir * <li> <code> addSpinListener </code> </li> 168cdf0e10cSrcweir * <li> <code> up </code> </li> 169cdf0e10cSrcweir * <li> <code> down </code> </li> 170cdf0e10cSrcweir * <li> <code> first </code> </li> 171cdf0e10cSrcweir * <li> <code> last </code> </li> 172cdf0e10cSrcweir * </ul> 173cdf0e10cSrcweir */ _removeSpinListener()174cdf0e10cSrcweir public void _removeSpinListener() { 175cdf0e10cSrcweir requiredMethod("addSpinListener()") ; 176cdf0e10cSrcweir executeMethod("up()") ; 177cdf0e10cSrcweir executeMethod("down()") ; 178cdf0e10cSrcweir executeMethod("first()") ; 179cdf0e10cSrcweir executeMethod("last()") ; 180cdf0e10cSrcweir 181cdf0e10cSrcweir listener.upFl = false ; 182cdf0e10cSrcweir 183cdf0e10cSrcweir oObj.removeSpinListener(listener) ; 184cdf0e10cSrcweir 185cdf0e10cSrcweir oObj.up() ; 186cdf0e10cSrcweir 187cdf0e10cSrcweir tRes.tested("removeSpinListener()", !listener.upFl) ; 188cdf0e10cSrcweir } 189cdf0e10cSrcweir 190cdf0e10cSrcweir /** 191cdf0e10cSrcweir * Enables then disables repeating. <p> 192*bb6af6bcSPedro Giffuni * Has <b>OK</b> status if no runtime exceptions occurred. 193cdf0e10cSrcweir */ _enableRepeat()194cdf0e10cSrcweir public void _enableRepeat() { 195cdf0e10cSrcweir oObj.enableRepeat(true) ; 196cdf0e10cSrcweir oObj.enableRepeat(false) ; 197cdf0e10cSrcweir 198cdf0e10cSrcweir tRes.tested("enableRepeat()", true) ; 199cdf0e10cSrcweir } 200cdf0e10cSrcweir 201cdf0e10cSrcweir /** 202cdf0e10cSrcweir * Waits for 0.5 sec to allow listener to be called. 203cdf0e10cSrcweir */ shortWait()204cdf0e10cSrcweir private void shortWait() { 205cdf0e10cSrcweir try { 206cdf0e10cSrcweir Thread.sleep(500); 207cdf0e10cSrcweir } 208cdf0e10cSrcweir catch (InterruptedException ex) { 209cdf0e10cSrcweir } 210cdf0e10cSrcweir 211cdf0e10cSrcweir } 212cdf0e10cSrcweir } 213