1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.apache.struts2;
22
23 import junit.framework.TestCase;
24
25 import org.apache.struts2.dispatcher.Dispatcher;
26 import org.testng.TestListenerAdapter;
27 import org.testng.TestNG;
28 import org.testng.annotations.Test;
29
30 import com.opensymphony.xwork2.config.ConfigurationManager;
31
32 public class TestNGStrutsTestCaseTest extends TestCase {
33
34 public void testSimpleTest() throws Exception {
35 TestListenerAdapter tla = new TestListenerAdapter();
36 TestNG testng = new TestNG();
37 testng.setTestClasses(new Class[] { RunTest.class });
38 testng.addListener(tla);
39 try {
40 testng.run();
41 assertEquals(1, tla.getPassedTests().size());
42 assertEquals(0, tla.getFailedTests().size());
43 assertTrue(RunTest.ran);
44 assertNotNull(RunTest.mgr);
45 assertNotNull(RunTest.du);
46 assertNull(Dispatcher.getInstance());
47 } finally {
48 RunTest.mgr = null;
49 }
50 }
51
52 @Test
53 public static class RunTest extends TestNGStrutsTestCase {
54 public static boolean ran = false;
55 public static ConfigurationManager mgr;
56 public static Dispatcher du;
57
58 public void testRun() {
59 ran = true;
60 mgr = this.configurationManager;
61 du = Dispatcher.getInstance();
62 }
63 }
64 }
65