2 * This document is a part of the source code and related artifacts
3 * for CollectionSpace, an open source collections management system
4 * for museums and related institutions:
6 * http://www.collectionspace.org
7 * http://wiki.collectionspace.org
9 * Copyright 2009 University of California at Berkeley
11 * Licensed under the Educational Community License (ECL), Version 2.0.
12 * You may not use this file except in compliance with this License.
14 * You may obtain a copy of the ECL 2.0 License at
16 * https://source.collectionspace.org/collection-space/LICENSE.txt
18 * Unless required by applicable law or agreed to in writing, software
19 * distributed under the License is distributed on an "AS IS" BASIS,
20 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21 * See the License for the specific language governing permissions and
22 * limitations under the License.
24 * This document is a part of the source code and related artifacts
25 * for CollectionSpace, an open source collections management system
26 * for museums and related institutions:
28 * http://www.collectionspace.org
29 * http://wiki.collectionspace.org
31 * Copyright 2009 University of California at Berkeley
33 * Licensed under the Educational Community License (ECL), Version 2.0.
34 * You may not use this file except in compliance with this License.
36 * You may obtain a copy of the ECL 2.0 License at
38 * https://source.collectionspace.org/collection-space/LICENSE.txt
40 * Unless required by applicable law or agreed to in writing, software
41 * distributed under the License is distributed on an "AS IS" BASIS,
42 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
43 * See the License for the specific language governing permissions and
44 * limitations under the License.
46 package org.collectionspace.services.authorization.test;
48 import org.slf4j.Logger;
49 import org.slf4j.LoggerFactory;
50 import java.util.ArrayList;
51 import org.collectionspace.services.authorization.ActionType;
52 import org.collectionspace.services.authorization.Permission;
53 import org.collectionspace.services.authorization.EffectType;
54 import org.collectionspace.services.authorization.PermissionAction;
55 import org.collectionspace.services.authorization.PermissionRole;
56 import org.collectionspace.services.authorization.PermissionsList;
57 import org.collectionspace.services.authorization.PermissionsRolesList;
58 import org.testng.annotations.Test;
64 public class AuthorizationGenTest extends AbstractAuthorizationTestImpl {
66 final Logger logger = LoggerFactory.getLogger(AuthorizationGenTest.class);
69 public void genPermissions() {
70 PermissionsList pcList = new PermissionsList();
71 ArrayList<Permission> apcList = new ArrayList<Permission>();
72 pcList.setPermission(apcList);
74 Permission accPerm = buildCommonPermission("1", "accounts");
76 Permission coPerm = buildCommonPermission("2", "collectionobjects");
78 toFile(pcList, PermissionsList.class, "./target/test-permissions.xml");
82 private Permission buildCommonPermission(String id, String resourceName) {
83 Permission perm = new Permission();
85 perm.setResourceName(resourceName);
86 perm.setEffect(EffectType.PERMIT);
88 ArrayList<PermissionAction> pas = new ArrayList<PermissionAction>();
91 PermissionAction pa = new PermissionAction();
92 pa.setName(ActionType.CREATE);
94 PermissionAction pa1 = new PermissionAction();
95 pa1.setName(ActionType.READ);
97 PermissionAction pa2 = new PermissionAction();
98 pa2.setName(ActionType.UPDATE);
100 PermissionAction pa3 = new PermissionAction();
101 pa3.setName(ActionType.DELETE);
107 public void genPermissionsRoles() {
108 PermissionsRolesList psrsl = new PermissionsRolesList();
109 ArrayList<PermissionRole> prl = buildCommonPermissionRoles("1");
110 prl.addAll(buildCommonPermissionRoles("2"));
111 psrsl.setPermissionRole(prl);
112 toFile(psrsl, PermissionsRolesList.class, "./target/test-permissions-roles.xml");
115 private ArrayList<PermissionRole> buildCommonPermissionRoles(String id) {
116 ArrayList<PermissionRole> prl = new ArrayList<PermissionRole>();
117 PermissionRole pr = new PermissionRole();
118 pr.setPermissionId(id);
119 pr.setRoleName("ROLE_USERS");
121 PermissionRole pr1 = new PermissionRole();
122 pr1.setPermissionId(id);
123 pr1.setRoleName("ROLE_ADMINISTRATOR");