KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > test > javax > management > MBeanServerPermissionTest


1 /*
2  * Copyright (C) The MX4J Contributors.
3  * All rights reserved.
4  *
5  * This software is distributed under the terms of the MX4J License version 1.0.
6  * See the terms of the MX4J License in the documentation provided with this software.
7  */

8
9 package test.javax.management;
10
11 import java.io.ByteArrayInputStream JavaDoc;
12 import java.io.ByteArrayOutputStream JavaDoc;
13 import java.io.ObjectInputStream JavaDoc;
14 import java.io.ObjectOutputStream JavaDoc;
15
16 import javax.management.MBeanServerPermission JavaDoc;
17
18 /**
19  * @version $Revision: 1.9 $
20  */

21 public class MBeanServerPermissionTest extends PermissionTestCase
22 {
23    public MBeanServerPermissionTest(String JavaDoc s)
24    {
25       super(s);
26    }
27
28    public void testInvalid() throws Exception JavaDoc
29    {
30       try
31       {
32          new MBeanServerPermission JavaDoc(null);
33          fail("Invalid MBeanServerPermission");
34       }
35       catch (NullPointerException JavaDoc ignored)
36       {
37       }
38
39       try
40       {
41          new MBeanServerPermission JavaDoc("");
42          fail("Invalid MBeanServerPermission");
43       }
44       catch (IllegalArgumentException JavaDoc ignored)
45       {
46       }
47
48       try
49       {
50          new MBeanServerPermission JavaDoc(" ");
51          fail("Invalid MBeanServerPermission");
52       }
53       catch (IllegalArgumentException JavaDoc ignored)
54       {
55       }
56
57       try
58       {
59          new MBeanServerPermission JavaDoc(" , ");
60          fail("Invalid MBeanServerPermission");
61       }
62       catch (IllegalArgumentException JavaDoc ignored)
63       {
64       }
65
66       try
67       {
68          new MBeanServerPermission JavaDoc("invalid");
69          fail("Invalid MBeanServerPermission");
70       }
71       catch (IllegalArgumentException JavaDoc ignored)
72       {
73       }
74
75       try
76       {
77          new MBeanServerPermission JavaDoc("*", "invalid");
78          fail("Invalid MBeanServerPermission");
79       }
80       catch (IllegalArgumentException JavaDoc ignored)
81       {
82       }
83    }
84
85    public void testValid() throws Exception JavaDoc
86    {
87       new MBeanServerPermission JavaDoc("*");
88       new MBeanServerPermission JavaDoc("*", "");
89       new MBeanServerPermission JavaDoc("createMBeanServer");
90       new MBeanServerPermission JavaDoc("releaseMBeanServer, findMBeanServer");
91       new MBeanServerPermission JavaDoc("newMBeanServer, *");
92    }
93
94    public void testShuffledAreEquals() throws Exception JavaDoc
95    {
96       MBeanServerPermission JavaDoc mbsp1 = new MBeanServerPermission JavaDoc("createMBeanServer, releaseMBeanServer");
97       MBeanServerPermission JavaDoc mbsp2 = new MBeanServerPermission JavaDoc("releaseMBeanServer, createMBeanServer");
98
99       shouldBeEqual(mbsp1, mbsp2);
100
101       MBeanServerPermission JavaDoc mbsp3 = new MBeanServerPermission JavaDoc("*");
102       MBeanServerPermission JavaDoc mbsp4 = new MBeanServerPermission JavaDoc("releaseMBeanServer, *");
103
104       shouldBeEqual(mbsp3, mbsp4);
105    }
106
107    public void testCreateImpliesNew() throws Exception JavaDoc
108    {
109       shouldImply(new MBeanServerPermission JavaDoc("createMBeanServer"), new MBeanServerPermission JavaDoc("newMBeanServer"));
110    }
111
112    public void testImplies() throws Exception JavaDoc
113    {
114       shouldImply(new MBeanServerPermission JavaDoc("*"), new MBeanServerPermission JavaDoc("createMBeanServer"));
115       shouldImply(new MBeanServerPermission JavaDoc("*"), new MBeanServerPermission JavaDoc("newMBeanServer"));
116       shouldImply(new MBeanServerPermission JavaDoc("*"), new MBeanServerPermission JavaDoc("findMBeanServer"));
117       shouldImply(new MBeanServerPermission JavaDoc("*"), new MBeanServerPermission JavaDoc("releaseMBeanServer"));
118       shouldImply(new MBeanServerPermission JavaDoc("*"), new MBeanServerPermission JavaDoc("createMBeanServer, releaseMBeanServer"));
119       shouldImply(new MBeanServerPermission JavaDoc("createMBeanServer, releaseMBeanServer"), new MBeanServerPermission JavaDoc("createMBeanServer"));
120       shouldImply(new MBeanServerPermission JavaDoc("createMBeanServer, releaseMBeanServer"), new MBeanServerPermission JavaDoc("releaseMBeanServer"));
121    }
122
123    public void testNotImplies()
124    {
125       shouldNotImply(new MBeanServerPermission JavaDoc("createMBeanServer"), new MBeanServerPermission JavaDoc("releaseMBeanServer"));
126       shouldNotImply(new MBeanServerPermission JavaDoc("createMBeanServer"), new MBeanServerPermission JavaDoc("newMBeanServer, releaseMBeanServer"));
127    }
128
129    public void testSerializationDeserialization() throws Exception JavaDoc
130    {
131       MBeanServerPermission JavaDoc permission = new MBeanServerPermission JavaDoc("newMBeanServer, *");
132
133       ByteArrayOutputStream JavaDoc baos = new ByteArrayOutputStream JavaDoc();
134       ObjectOutputStream JavaDoc oos = new ObjectOutputStream JavaDoc(baos);
135       oos.writeObject(permission);
136       oos.close();
137
138       ByteArrayInputStream JavaDoc bais = new ByteArrayInputStream JavaDoc(baos.toByteArray());
139       ObjectInputStream JavaDoc ois = new ObjectInputStream JavaDoc(bais);
140       MBeanServerPermission JavaDoc deserialized = (MBeanServerPermission JavaDoc)ois.readObject();
141       ois.close();
142
143       if (!(deserialized.equals(permission))) fail("Serialization/Deserialization failed");
144    }
145 }
146
Popular Tags