KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > jboss > ejb3 > test > ejbthree655 > unit > ServiceManagementUnitTestCase


1 /*
2  * JBoss, Home of Professional Open Source
3  * Copyright 2005, JBoss Inc., and individual contributors as indicated
4  * by the @authors tag. See the copyright.txt in the distribution for a
5  * full listing of individual contributors.
6  *
7  * This is free software; you can redistribute it and/or modify it
8  * under the terms of the GNU Lesser General Public License as
9  * published by the Free Software Foundation; either version 2.1 of
10  * the License, or (at your option) any later version.
11  *
12  * This software is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  * Lesser General Public License for more details.
16  *
17  * You should have received a copy of the GNU Lesser General Public
18  * License along with this software; if not, write to the Free
19  * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
20  * 02110-1301 USA, or see the FSF site: http://www.fsf.org.
21  */

22 package org.jboss.ejb3.test.ejbthree655.unit;
23
24 import javax.management.MBeanServerConnection JavaDoc;
25 import javax.management.ObjectName JavaDoc;
26 import javax.naming.NameNotFoundException JavaDoc;
27
28 import junit.framework.Test;
29
30 import org.jboss.ejb3.test.ejbthree655.AbstractStateChecker;
31 import org.jboss.ejb3.test.ejbthree655.MyService;
32 import org.jboss.test.JBossTestCase;
33
34 /**
35  * Comment
36  *
37  * @author <a HREF="mailto:carlo.dewolf@jboss.com">Carlo de Wolf</a>
38  * @version $Revision: $
39  */

40 public class ServiceManagementUnitTestCase extends JBossTestCase
41 {
42    public ServiceManagementUnitTestCase(String JavaDoc name)
43    {
44       super(name);
45    }
46
47    public void testHasCreateBeenCalled() throws Exception JavaDoc
48    {
49       MyService session = (MyService) getInitialContext().lookup("MyServiceBean/remote");
50       session.sayHelloTo("me");
51       
52       AbstractStateChecker.State expected = AbstractStateChecker.State.STARTED;
53       assertEquals(expected, session.getState());
54    }
55    
56    public void test2() throws Exception JavaDoc
57    {
58       MyService session = (MyService) getInitialContext().lookup("MyManagedServiceBean/remote");
59       session.sayHelloTo("me");
60       
61       AbstractStateChecker.State expected = AbstractStateChecker.State.STARTED;
62       assertEquals(expected, session.getState());
63    }
64    
65    public void testRestartContainer() throws Exception JavaDoc
66    {
67       MBeanServerConnection JavaDoc server = getServer();
68       ObjectName JavaDoc name = new ObjectName JavaDoc("jboss.j2ee:jar=ejbthree655.jar,name=MyManagedServiceBean,service=EJB3,type=ManagementInterface");
69       Object JavaDoc params[] = { };
70       String JavaDoc signature[] = { };
71       server.invoke(name, "stop", params, signature);
72       
73       {
74          AbstractStateChecker.State expected = AbstractStateChecker.State.STOPPED;
75          assertEquals(expected, server.getAttribute(name, "State"));
76       }
77       
78       try
79       {
80          MyService session = (MyService) getInitialContext().lookup("MyManagedServiceBean/remote");
81          session.sayHelloTo("me");
82          
83          fail("should have failed");
84       }
85       catch(NameNotFoundException JavaDoc e)
86       {
87          String JavaDoc expected = "MyManagedServiceBean not bound";
88          assertEquals(expected, e.getMessage());
89       }
90       
91       server.invoke(name, "start", params, signature);
92       
93       {
94          AbstractStateChecker.State expected = AbstractStateChecker.State.STARTED;
95          assertEquals(expected, server.getAttribute(name, "State"));
96       }
97    }
98    
99    public static Test suite() throws Exception JavaDoc
100    {
101       return getDeploySetup(ServiceManagementUnitTestCase.class, "ejbthree655.jar");
102    }
103 }
104
Popular Tags