Clover coverage report - JFCUnit Test Coverage
Coverage timestamp: Mon Dec 20 2004 23:38:10 MST
file stats: LOC: 180   Methods: 9
NCLOC: 116   Classes: 1
 
 Source file Conditionals Statements Methods TOTAL
DialogFinderTagHandlerT.java - 100% 100% 100%
coverage
 1   
 package junit.extensions.jfcunit.finder;
 2   
 
 3   
 import javax.swing.JDialog;
 4   
 
 5   
 import org.w3c.dom.Element;
 6   
 import junit.extensions.jfcunit.AbstractTestCase;
 7   
 import junit.extensions.jfcunit.xml.JFCXMLTestCase;
 8   
 import junit.extensions.xml.XMLException;
 9   
 import junit.extensions.xml.XMLTagResourceBundle;
 10   
 import junit.extensions.xml.elements.AbstractTagHandler;
 11   
 import junit.extensions.xml.elements.ElementFixture;
 12   
 
 13   
 /**
 14   
  * Test the DialogFinderTagHandler.
 15   
  * @author Kevin Wilson not attributable
 16   
  * @version 1.0
 17   
  */
 18   
 public class DialogFinderTagHandlerT
 19   
     extends AbstractTestCase {
 20   
 
 21   
     /**
 22   
      * Test Fixture.
 23   
      */
 24   
     private ElementFixture m_fixture;
 25   
 
 26   
     /**
 27   
      * Constructor.
 28   
      * @param name Name of the test case.
 29   
      */
 30  4
     public DialogFinderTagHandlerT(final String name) {
 31  4
         super(name);
 32   
     }
 33   
 
 34   
     /**
 35   
      * Setup the test.
 36   
      * @throws Exception may be thrown.
 37   
      */
 38  4
     protected void setUp() throws Exception {
 39  4
         super.setUp();
 40  4
         m_fixture = new ElementFixture(this);
 41  4
         m_fixture.setUp();
 42   
     }
 43   
 
 44   
     /**
 45   
      * Tesr down the test.
 46   
      * @throws Exception may be thrown.
 47   
      */
 48  4
     protected void tearDown() throws Exception {
 49  4
         m_fixture.tearDown();
 50  4
         m_fixture = null;
 51  4
         super.tearDown();
 52   
     }
 53   
 
 54   
     /**
 55   
      * Test process element.
 56   
      * @throws XMLException may be thrown.
 57   
      */
 58  1
     public void testProcessElement() throws XMLException {
 59   
 
 60  1
         JDialog dialog = this.createJDialog(null, "Test Dialog");
 61   
 
 62  1
         this.packAndShow(dialog);
 63  1
         setWindow(dialog);
 64   
 
 65  1
         JFCXMLTestCase tc = m_fixture.getJFCTestCase();
 66  1
         Element e = m_fixture.newElement("find", new String[] {
 67   
                                          "finder", "DialogFinder",
 68   
                                          "title", "Test Dialog",
 69   
                                          "id", "dialog",
 70   
                                          "index", "0",
 71   
                                          "wait", "35"
 72   
         });
 73  1
         AbstractTagHandler h = XMLTagResourceBundle.getTagHandler(e, tc, "find");
 74  1
         h.processElement();
 75   
 
 76  1
         Object o = tc.getProperty("dialog");
 77  1
         assertNotNull(o);
 78   
     }
 79   
 
 80   
     /**
 81   
      * Test processing zero wait.
 82   
      * @throws XMLException may be thrown.
 83   
      */
 84  1
     public void testProcessZeroWait() throws XMLException {
 85   
 
 86  1
         JDialog dialog = this.createJDialog(null, "Test Dialog");
 87  1
         this.packAndShow(dialog);
 88  1
         setWindow(dialog);
 89   
 
 90  1
         JFCXMLTestCase tc = m_fixture.getJFCTestCase();
 91  1
         Element e = m_fixture.newElement("find", new String[] {
 92   
                                          "finder", "DialogFinder",
 93   
                                          "title", "Test Dialog",
 94   
                                          "id", "dialog",
 95   
                                          "index", "0",
 96   
                                          "wait", "0"
 97   
         });
 98  1
         AbstractTagHandler h = XMLTagResourceBundle.getTagHandler(e, tc, "find");
 99  1
         h.processElement();
 100   
 
 101  1
         Object o = tc.getProperty("dialog");
 102  1
         assertNotNull(o);
 103   
     }
 104   
 
 105   
     /**
 106   
      * Test process slow to show dialogs.
 107   
      * @throws XMLException may be thrown.
 108   
      */
 109  1
     public void testProcessSlowToShow() throws XMLException {
 110   
 
 111  1
         JDialog dialog = this.createJDialog(null, "Test Dialog");
 112  1
         setWindow(dialog);
 113   
 
 114  1
         JFCXMLTestCase tc = m_fixture.getJFCTestCase();
 115  1
         Element e = m_fixture.newElement("find", new String[] {
 116   
                                          "finder", "DialogFinder",
 117   
                                          "title", "Test Dialog",
 118   
                                          "id", "dialog",
 119   
                                          "index", "0",
 120   
                                          "wait", "30"
 121   
         });
 122  1
         final AbstractTagHandler h = XMLTagResourceBundle.getTagHandler(e, tc,
 123   
             "find");
 124   
 
 125  1
         Thread th = new Thread(new Runnable() {
 126  1
             public void run() {
 127  1
                 h.processElement();
 128   
             }
 129   
         });
 130  1
         th.start();
 131   
 
 132  1
         try {
 133  1
             Thread.currentThread().sleep(5000);
 134  1
             packAndShow(dialog);
 135  1
             th.join();
 136   
         } catch (InterruptedException ex) {
 137   
         }
 138  1
         Object o = tc.getProperty("dialog");
 139  1
         assertNotNull(o);
 140   
     }
 141   
 
 142   
     /**
 143   
      * Process too slow to show.
 144   
      * @throws XMLException may be thrown.
 145   
      */
 146  1
     public void testProcessTooSlowToShow() throws XMLException {
 147   
 
 148  1
         JDialog dialog = this.createJDialog(null, "Test Dialog");
 149  1
         setWindow(dialog);
 150   
 
 151  1
         JFCXMLTestCase tc = m_fixture.getJFCTestCase();
 152  1
         Element e = m_fixture.newElement("find", new String[] {
 153   
                                          "finder", "DialogFinder",
 154   
                                          "title", "Test Dialog",
 155   
                                          "id", "dialog",
 156   
                                          "index", "0",
 157   
                                          "wait", "3"
 158   
         });
 159  1
         final AbstractTagHandler h = XMLTagResourceBundle.getTagHandler(e, tc,
 160   
             "find");
 161   
 
 162  1
         Thread th = new Thread(new Runnable() {
 163  1
             public void run() {
 164  1
                 h.processElement();
 165   
             }
 166   
         });
 167  1
         th.start();
 168   
 
 169  1
         try {
 170  1
             Thread.currentThread().sleep(5000);
 171  1
             packAndShow(dialog);
 172  1
             th.join();
 173   
         } catch (InterruptedException ex) {
 174   
         }
 175  1
         Object o = tc.getProperty("dialog");
 176  1
         assertNull(o);
 177   
     }
 178   
 
 179   
 }
 180