source code formatting.
[utils] / security / src / test / java / org / wamblee / usermgt / UsermgtTestUtils.java
1 /*
2  * Copyright 2005 the original author or authors.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 package org.wamblee.usermgt;
17
18 import org.wamblee.security.encryption.Md5HexMessageDigester;
19
20 import org.wamblee.usermgt.UserMgtException.Reason;
21
22
23 /**
24  * User management test utilities.
25  *
26  * @author Erik Brakkee
27  */
28 public class UsermgtTestUtils {
29     /**
30      * DOCUMENT ME!
31      */
32     private static final String DUMMY_GROUP = "dummygroup";
33
34     /**
35      * DOCUMENT ME!
36      */
37     private static final String DUMMY_PASSWD = "dummypasswd";
38
39     /**
40      * DOCUMENT ME!
41      *
42      * @param aName DOCUMENT ME!
43      *
44      * @return DOCUMENT ME!
45      */
46     public static Group createGroup(String aName) {
47         return new Group(aName);
48     }
49
50     /**
51      * DOCUMENT ME!
52      *
53      * @param aUsername DOCUMENT ME!
54      *
55      * @return DOCUMENT ME!
56      *
57      * @throws UserMgtException DOCUMENT ME!
58      */
59     public static User createUser(String aUsername) throws UserMgtException {
60         return createUser(aUsername, DUMMY_GROUP);
61     }
62
63     /**
64      * DOCUMENT ME!
65      *
66      * @param aUsername DOCUMENT ME!
67      * @param aGroup DOCUMENT ME!
68      *
69      * @return DOCUMENT ME!
70      *
71      * @throws UserMgtException DOCUMENT ME!
72      */
73     public static User createUser(String aUsername, String aGroup)
74         throws UserMgtException {
75         return createUser(aUsername, createGroup(aGroup));
76     }
77
78     /**
79      * DOCUMENT ME!
80      *
81      * @param aUsername DOCUMENT ME!
82      * @param aGroup DOCUMENT ME!
83      *
84      * @return DOCUMENT ME!
85      *
86      * @throws UserMgtException DOCUMENT ME!
87      */
88     public static User createUser(String aUsername, Group aGroup)
89         throws UserMgtException {
90         return createUser(aUsername, DUMMY_PASSWD, aGroup);
91     }
92
93     /**
94      * DOCUMENT ME!
95      *
96      * @param aName DOCUMENT ME!
97      * @param aPassword DOCUMENT ME!
98      * @param aGroup DOCUMENT ME!
99      *
100      * @return DOCUMENT ME!
101      *
102      * @throws UserMgtException DOCUMENT ME!
103      */
104     public static User createUser(String aName, String aPassword, Group aGroup)
105         throws UserMgtException {
106         return new User(aName, aPassword, aGroup,
107             new RegexpNameValidator(RegexpNameValidator.PASSWORD_PATTERN,
108                 Reason.INVALID_PASSWORD, "Password must be at least 6 chars"),
109             new Md5HexMessageDigester());
110     }
111
112     /**
113      * DOCUMENT ME!
114      *
115      * @param aUser DOCUMENT ME!
116      * @param aGroup DOCUMENT ME!
117      *
118      * @throws UserMgtException DOCUMENT ME!
119      */
120     public static void addUserToGroup(User aUser, Group aGroup)
121         throws UserMgtException {
122         aUser.addGroup(aGroup);
123     }
124
125     /**
126      * DOCUMENT ME!
127      *
128      * @param aUser DOCUMENT ME!
129      * @param aGroup DOCUMENT ME!
130      *
131      * @throws UserMgtException DOCUMENT ME!
132      */
133     public static void removeUserFromGroup(User aUser, Group aGroup)
134         throws UserMgtException {
135         aUser.removeGroup(aGroup);
136     }
137 }