01: /*
02: jGuard is a security framework based on top of jaas (java authentication and authorization security).
03: it is written for web applications, to resolve simply, access control problems.
04: version $Name$
05: http://sourceforge.net/projects/jguard/
06:
07: Copyright (C) 2004 Charles GAY
08:
09: This library is free software; you can redistribute it and/or
10: modify it under the terms of the GNU Lesser General Public
11: License as published by the Free Software Foundation; either
12: version 2.1 of the License, or (at your option) any later version.
13:
14: This library is distributed in the hope that it will be useful,
15: but WITHOUT ANY WARRANTY; without even the implied warranty of
16: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17: Lesser General Public License for more details.
18:
19: You should have received a copy of the GNU Lesser General Public
20: License along with this library; if not, write to the Free Software
21: Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22:
23:
24: jGuard project home page:
25: http://sourceforge.net/projects/jguard/
26:
27: */
28: package net.sf.jguard.core.authorization.permissions;
29:
30: import java.net.URISyntaxException;
31: import java.security.Permission;
32:
33: import net.sf.jguard.core.authorization.permissions.JGPermissionCollection;
34: import net.sf.jguard.core.authorization.permissions.JGPositivePermissionCollection;
35: import net.sf.jguard.core.authorization.permissions.URLPermission;
36:
37: import junit.framework.TestCase;
38:
39: public class JGPermissionCollectionTest extends TestCase {
40:
41: public void testGetPermission() throws URISyntaxException,
42: NoSuchPermissionException {
43:
44: JGPermissionCollection jgperm = new JGPositivePermissionCollection();
45: Permission p1 = new URLPermission("mock_perm_1",
46: "http://someuri_1.do?param1=any¶m2=bla,description_1");
47: Permission p2 = new URLPermission("mock_perm_2",
48: "http://someuri_2.do?param1=any¶m2=bla");
49:
50: jgperm.add(p1);
51: jgperm.add(p2);
52:
53: assertEquals(jgperm.getPermission("mock_perm_1"), p1);
54: assertEquals(jgperm.getPermission("mock_perm_2"), p2);
55: try {
56: jgperm.getPermission("some_permission");
57: fail("NoSuchPermissionException should be catched");
58: } catch (NoSuchPermissionException e) {
59: }
60:
61: }
62:
63: public void testRemovePermission() throws NoSuchPermissionException {
64:
65: JGPermissionCollection jgperm = new JGPositivePermissionCollection();
66: Permission p = new URLPermission("mock_perm_1");
67: jgperm.add(p);
68:
69: assertNotNull(jgperm.getPermission("mock_perm_1"));
70: jgperm.removePermission(p);
71: try {
72: jgperm.getPermission("mock_perm_1");
73: fail("NoSuchPermissionException should be catched");
74: } catch (NoSuchPermissionException e) {
75: }
76:
77: }
78:
79: }
|