Clover coverage report - JFCUnit Test Coverage
Coverage timestamp: Mon Dec 20 2004 23:38:10 MST
file stats: LOC: 150   Methods: 4
NCLOC: 41   Classes: 1
 
 Source file Conditionals Statements Methods TOTAL
RobotTestHelperT.java 50% 78.9% 75% 72.4%
coverage coverage
 1   
 package junit.extensions.jfcunit;
 2   
 
 3   
 import java.text.MessageFormat;
 4   
 import java.text.ParseException;
 5   
 
 6   
 import java.awt.AWTException;
 7   
 
 8   
 import junit.swingui.TestRunner;
 9   
 
 10   
 /**
 11   
  * Title:        RobotTestHelperT
 12   
  * Description:  Unit tests for the {@link RobotTestHelper} class and it's methods.
 13   
  *               Designed to work with JUnit v3.7 or later.
 14   
  *
 15   
  * @author <a href="mailto:vraravam@thoughtworks.com">Vijay Aravamudhan : ThoughtWorks Inc.</a>
 16   
  */
 17   
 public class RobotTestHelperT extends AbstractTestHelperBase {
 18   
 
 19   
     /**
 20   
      * Constructor.
 21   
      *
 22   
      * @param name Test case name.
 23   
      */
 24  40
     public RobotTestHelperT(final String name) {
 25  40
         super(name);
 26   
     }
 27   
 
 28   
     /**
 29   
      * Setup the test case.
 30   
      *
 31   
      * @exception  Exception   An instance of java.lang.Exception can be thrown
 32   
      */
 33  40
     public void setUp() throws Exception {
 34  40
         super.setUp();
 35  40
         if (getHelper() == null) {
 36  40
             try {
 37  40
               setHelper(new RobotTestHelper());
 38   
             } catch (AWTException ex) {
 39  0
               throw new RuntimeException("Could not create the robot" + ex);
 40   
             }
 41   
         }
 42  40
         setSleepTimer(300);
 43   
     }
 44   
 
 45   
     /**
 46   
      * Run the test case.
 47   
      *
 48   
      * @param args Command line arguments.
 49   
      */
 50  0
     public static void main(final String[] args) {
 51  0
         TestRunner.run(RobotTestHelperT.class);
 52   
     }
 53   
 
 54   
     /*
 55   
     // Uncomment for testing individual methods.
 56   
     public static junit.framework.Test suite() {
 57   
         junit.framework.TestSuite suite = new junit.framework.TestSuite();
 58   
         suite.addTest(new RobotTestHelperT("testEnterJTreeClickAndLeave"));
 59   
         suite.addTest(new RobotTestHelperT("testEnterDropDownClickAndLeaveByIndex"));
 60   
         suite.addTest(new RobotTestHelperT("testEnterDropDownClickAndLeaveByElement"));
 61   
         suite.addTest(new RobotTestHelperT("testEnterJListClickAndLeaveByIndex"));
 62   
         suite.addTest(new RobotTestHelperT("testEnterJListClickAndLeaveByElement"));
 63   
         suite.addTest(new RobotTestHelperT("testSendString_LowerCaseLetters"));
 64   
         suite.addTest(new RobotTestHelperT("testSendString_UpperCaseLetters"));
 65   
         suite.addTest(new RobotTestHelperT("testSendString_LowerAndUpperCaseLetters"));
 66   
         suite.addTest(new RobotTestHelperT("testSendString_AllUppercaseCharacters"));
 67   
         suite.addTest(new RobotTestHelperT("testSendString_AllLowercaseCharacters"));
 68   
         suite.addTest(new RobotTestHelperT("testSendString_null"));
 69   
         suite.addTest(new RobotTestHelperT("testSendString_notReady"));
 70   
         suite.addTest(new RobotTestHelperT("testSendString_SpecialCharacters"));
 71   
         suite.addTest(new RobotTestHelperT("testSendKeyAction_JTextField"));
 72   
         suite.addTest(new RobotTestHelperT("testSendKeyAction_JButton"));
 73   
         suite.addTest(new RobotTestHelperT("testSendKeyAction_SHIFT"));
 74   
         suite.addTest(new RobotTestHelperT("testSendKeyAction_CTRL"));
 75   
         suite.addTest(new RobotTestHelperT("testSendKeyAction_CTRL_SHIFT"));
 76   
         suite.addTest(new RobotTestHelperT("testSendKeyAction_ALTGR"));
 77   
         suite.addTest(new RobotTestHelperT("testSendKeyAction_ALT"));
 78   
         suite.addTest(new RobotTestHelperT("testSendKeyAction_META"));
 79   
         suite.addTest(new RobotTestHelperT("testSendKeyAction_null"));
 80   
         suite.addTest(new RobotTestHelperT("testSendKeyAction_notReady"));
 81   
         suite.addTest(new RobotTestHelperT("testEnterClickAndLeave_null"));
 82   
         suite.addTest(new RobotTestHelperT("testEnterJTableClickAndLeave"));
 83   
         suite.addTest(new RobotTestHelperT("testEnterJTableHeaderClickAndLeave"));
 84   
         suite.addTest(new RobotTestHelperT("testEnterJTableHeaderDragAndLeave"));
 85   
         suite.addTest(new RobotTestHelperT("testEnterJTableHeaderDragAndLeaveByPercentage"));
 86   
         suite.addTest(new RobotTestHelperT("testEnterJTableHeaderMoveDragAndLeave"));
 87   
         suite.addTest(new RobotTestHelperT("testEnterJTableHeaderResizeDragAndLeave"));
 88   
         suite.addTest(new RobotTestHelperT("testEnterJTableHeaderResizeDragAndLeaveByPercentage"));
 89   
         suite.addTest(new RobotTestHelperT("testEnterClickAndLeave_JRadioButton"));
 90   
         suite.addTest(new RobotTestHelperT("testEnterClickAndLeave_JCheckBox"));
 91   
         suite.addTest(new RobotTestHelperT("testEnterClickAndLeave_JToggleButton"));
 92   
         suite.addTest(new RobotTestHelperT("testEnterJTabbedPaneClickAndLeave"));
 93   
         suite.addTest(new RobotTestHelperT("testTraversingMenu"));
 94   
         suite.addTest(new RobotTestHelperT("testOverlappingKeyCodeBug"));
 95   
         suite.addTest(new RobotTestHelperT("testJTextComponentEnterClickAndLeave"));
 96   
         suite.addTest(new RobotTestHelperT("testJTextComponentDrag"));
 97   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_LowerCaseLetters"));
 98   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_UpperCaseLetters"));
 99   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_LowerAndUpperCaseLetters"));
 100   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_AllUppercaseCharacters"));
 101   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_AllLowercaseCharacters"));
 102   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_SpecialCharacters1"));
 103   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_sendKeyAction_JTextField"));
 104   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testEnterJTreeClickAndLeave"));
 105   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testEnterDropDownClickAndLeaveByIndex"));
 106   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testEnterDropDownClickAndLeaveByElement"));
 107   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testEnterJListClickAndLeaveByIndex"));
 108   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testEnterJListClickAndLeaveByElement"));
 109   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testEnterJTableClickAndLeave"));
 110   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testEnterJTableHeaderClickAndLeave"));
 111   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testEnterJTabbedPaneClickAndLeave"));
 112   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testEnterClickAndLeave_JToggleButton"));
 113   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testEnterClickAndLeave_JRadioButton"));
 114   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testEnterClickAndLeave_JCheckBox"));
 115   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testJTextComponentEnterClickAndLeave"));
 116   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testJTextComponentDrag"));
 117   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testEnterJTableHeaderMoveDragAndLeave"));
 118   
         suite.addTest(new RobotTestHelperT("testJFCEventManager_testEnterJTableHeaderResizeDragAndLeave"));
 119   
         suite.addTest(new RobotTestHelperT("testMouseWheel"));
 120   
         return suite;
 121   
     }
 122   
     */
 123   
 
 124   
    /**
 125   
     * Valid Platform checks to see if the current executing
 126   
     * platform is XP if so then the 1.3 version of the robot
 127   
     * will not work properly. Must use 1.4 robot for testing.
 128   
     *
 129   
     * @return false if XP and 1.3.
 130   
     */
 131  41
    protected boolean validPlatform() {
 132  41
      String version = System.getProperty("java.version");
 133  41
      String platform = System.getProperty("os.name");
 134  41
      if ("Windows XP".equals(platform)) {
 135  41
        MessageFormat mf = new MessageFormat("{0}.{1}.{2}");
 136  41
        try {
 137  41
          Object[] args = mf.parse(version);
 138  41
          int ver = Integer.parseInt((String) args[1]);
 139  41
          if (ver < 4) {
 140  0
            return false;
 141   
          }
 142   
        } catch (ParseException ex) {
 143  0
          return true;
 144   
        }
 145   
 
 146   
      }
 147  41
      return true;
 148   
    }
 149   
 }
 150