KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > netbeans > modules > j2ee > oc4j > test > RegisterServerTest


1 package org.netbeans.modules.j2ee.oc4j.test;
2
3 import org.netbeans.junit.NbTestSuite;
4 import org.netbeans.jellytools.JellyTestCase;
5 import org.netbeans.jellytools.RuntimeTabOperator;
6 import org.netbeans.jellytools.modules.j2ee.nodes.J2eeServerNode;
7 import org.netbeans.jellytools.nodes.Node;
8 import org.netbeans.jemmy.JemmyProperties;
9 import org.netbeans.jemmy.operators.JButtonOperator;
10 import org.netbeans.jemmy.operators.JComboBoxOperator;
11 import org.netbeans.jemmy.operators.JDialogOperator;
12 import org.netbeans.jemmy.operators.JPasswordFieldOperator;
13 import org.netbeans.jemmy.operators.JTextFieldOperator;
14
15 /**
16  * A Test based on JellyTestCase. JellyTestCase redirects Jemmy output
17  * to a log file provided by NbTestCase. It can be inspected in results.
18  * It also sets timeouts necessary for NetBeans GUI testing.
19  *
20  * Any JemmyException (which is normally thrown as a result of an unsuccessful
21  * operation in Jemmy) going from a test is treated by JellyTestCase as a test
22  * failure; any other exception - as a test error.
23  *
24  * Additionally it:
25  * - closes all modal dialogs at the end of the test case (property jemmy.close.modal - default true)
26  * - generates component dump (XML file containing components information) in case of test failure (property jemmy.screen.xmldump - default false)
27  * - captures screen into a PNG file in case of test failure (property jemmy.screen.capture - default true)
28  * - waits at least 1000 ms between test cases (property jelly.wait.no.event - default true)
29  *
30  * @author pblaha
31  * Created on January 19, 2007, 3:38 PM
32  */

33 public class RegisterServerTest extends JellyTestCase {
34     
35     static final String JavaDoc OC4J_HOME = "/space/oc4j";
36     static final String JavaDoc USER = "oc4jadmin";
37     static final String JavaDoc PASSWD = "oc4jadmin";
38     
39     
40     private static final String JavaDoc OC4J_LABEL = "OC4J 10g J2EE Container";
41     
42     /** Constructor required by JUnit */
43     public RegisterServerTest(String JavaDoc name) {
44         super(name);
45     }
46     
47     /** Creates suite from particular test cases. You can define order of testcases here. */
48     public static NbTestSuite suite() {
49         NbTestSuite suite = new NbTestSuite();
50         suite.addTest(new RegisterServerTest("testRegisterServer"));
51         suite.addTest(new RegisterServerTest("testStartServer"));
52         suite.addTest(new RegisterServerTest("testStopServer"));
53         return suite;
54     }
55     
56     /* Method allowing test execution directly from the IDE. */
57     public static void main(java.lang.String JavaDoc[] args) {
58         // run whole suite
59
junit.textui.TestRunner.run(suite());
60         // run only selected test case
61
//junit.textui.TestRunner.run(new RegisterServerTest("test1"));
62
}
63     
64     /** Called before every test case. */
65     public void setUp() {
66         System.out.println("######## "+getName()+" #######");
67     }
68     
69     /** Called after every test case. */
70     public void tearDown() {
71     }
72     
73     // Add test methods here, they have to start with 'test' name.
74

75     /** Test case 1. */
76     public void testRegisterServer() {
77         RuntimeTabOperator runtimeOp = new RuntimeTabOperator();
78         Node serverNode = new Node(runtimeOp.tree(),
79                 org.netbeans.jellytools.Bundle.getStringTrimmed("org.netbeans.modules.j2ee.deployment.impl.ui.Bundle", "SERVER_REGISTRY_NODE"));
80         serverNode.callPopup().pushMenuNoBlock(
81                 org.netbeans.jellytools.Bundle.getStringTrimmed("org.netbeans.modules.j2ee.deployment.impl.ui.actions.Bundle", "LBL_Add_Server_Instance"));
82         JDialogOperator addDialogOp = new JDialogOperator(
83                 org.netbeans.jellytools.Bundle.getStringTrimmed("org.netbeans.modules.j2ee.deployment.impl.ui.wizard.Bundle", "LBL_ASIW_Title"));
84         JComboBoxOperator chooseServerComboOp = new JComboBoxOperator(addDialogOp);
85         chooseServerComboOp.selectItem(OC4J_LABEL);
86         new JButtonOperator(addDialogOp,
87                 org.netbeans.jellytools.Bundle.getStringTrimmed("org.openide.Bundle", "CTL_NEXT")).push();
88         
89         String JavaDoc path = System.getProperty("oc4j.home", OC4J_HOME);
90         new JTextFieldOperator(addDialogOp).setText(path);
91         new JButtonOperator(addDialogOp,
92                 org.netbeans.jellytools.Bundle.getStringTrimmed("org.openide.Bundle", "CTL_NEXT")).push();
93         String JavaDoc user = System.getProperty("oc4j.user", USER);
94         String JavaDoc passwd = System.getProperty("oc4j.passwd", PASSWD);
95         new JTextFieldOperator(addDialogOp, 3).setText(user);
96         new JPasswordFieldOperator(addDialogOp).setText(passwd);
97         new JButtonOperator(addDialogOp,
98                 org.netbeans.jellytools.Bundle.getStringTrimmed("org.openide.Bundle", "CTL_FINISH")).push();
99         Node oc4jNode = new Node(runtimeOp.tree(),
100                 org.netbeans.jellytools.Bundle.getStringTrimmed("org.netbeans.modules.j2ee.deployment.impl.ui.Bundle", "SERVER_REGISTRY_NODE")
101                 + "|" + OC4J_LABEL);
102     }
103     
104     public void testStartServer() {
105         JemmyProperties.setCurrentTimeout("Waiter.WaitingTime", 240000);
106         J2eeServerNode node = new J2eeServerNode(OC4J_LABEL);
107         node.start();
108     }
109     
110     public void testStopServer() {
111         JemmyProperties.setCurrentTimeout("Waiter.WaitingTime", 240000);
112         J2eeServerNode node = new J2eeServerNode(OC4J_LABEL);
113         node.stop();
114     }
115     
116 }
117
Popular Tags