]> source.dussan.org Git - archiva.git/blob
57fd5fd3e40d06fb40445c6db2acb56bce294876
[archiva.git] /
1 package org.apache.archiva.web.test.parent;
2
3 import org.junit.runner.RunWith;
4 import org.junit.runners.BlockJUnit4ClassRunner;
5
6 import java.io.File;
7 import java.io.IOException;
8
9 /*
10  * Licensed to the Apache Software Foundation (ASF) under one
11  * or more contributor license agreements.  See the NOTICE file
12  * distributed with this work for additional information
13  * regarding copyright ownership.  The ASF licenses this file
14  * to you under the Apache License, Version 2.0 (the
15  * "License"); you may not use this file except in compliance
16  * with the License.  You may obtain a copy of the License at
17  *
18  *   http://www.apache.org/licenses/LICENSE-2.0
19  *
20  * Unless required by applicable law or agreed to in writing,
21  * software distributed under the License is distributed on an
22  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
23  * KIND, either express or implied.  See the License for the
24  * specific language governing permissions and limitations
25  * under the License.
26  */
27
28 @RunWith( BlockJUnit4ClassRunner.class )
29 public abstract class AbstractArchivaTest
30     extends AbstractSeleniumTest
31 {
32
33     protected String username;
34
35     protected String fullname;
36
37     public String getUserEmail()
38     {
39         String email = getProperty( "USERROLE_EMAIL" );
40         return email;
41     }
42
43     public String getUserRolePassword()
44     {
45         String password = getProperty( "USERROLE_PASSWORD" );
46         return password;
47     }
48
49     public String getUserRoleNewPassword()
50     {
51         String password_new = getProperty( "NEW_USERROLE_PASSWORD" );
52         return password_new;
53     }
54
55     public String getBasedir()
56     {
57         String basedir = System.getProperty( "basedir" );
58
59         if ( basedir == null )
60         {
61             basedir = new File( "" ).getAbsolutePath();
62         }
63
64         return basedir;
65     }
66
67
68     public void submitUserData( String username, String password, boolean rememberme, boolean success )
69     {
70
71         setFieldValue( "username", username );
72         setFieldValue( "password", password );
73         if ( rememberme )
74         {
75             checkField( "rememberMe" );
76         }
77
78         submit();
79         if ( success )
80         {
81             assertUserLoggedIn( username );
82         }
83         else
84         {
85             assertLoginModal();
86         }
87     }
88
89     // User Management
90
91     public void createUser( String userName, String fullName, String email, String password, boolean valid )
92     {
93         createUser( userName, fullName, email, password, password, valid );
94     }
95
96     private void createUser( String userName, String fullName, String emailAd, String password, String confirmPassword,
97                              boolean valid )
98     {
99
100         clickLinkWithLocator( "menu-users-list-a", true );
101         clickLinkWithLocator( "users-view-tabs-li-user-edit-a", true );
102
103         assertCreateUserPage();
104         setFieldValue( "username", userName );
105         setFieldValue( "fullname", fullName );
106         setFieldValue( "email", emailAd );
107         setFieldValue( "password", password );
108         setFieldValue( "confirmPassword", confirmPassword );
109
110         clickLinkWithLocator( "user-create-form-register-button", true );
111
112         assertTextPresent( "User " + userName + " created." );
113         assertElementPresent( "users-grid-user-id-" + userName );
114
115         if ( valid )
116         {
117             //String[] columnValues = { userName, fullName, emailAd };
118             //assertElementPresent( XPathExpressionUtil.getTableRow( columnValues ) );
119
120         }
121         else
122         {
123             assertCreateUserPage();
124         }
125     }
126
127     public void deleteUser( String userName, String fullName, String emailAdd )
128     {
129         deleteUser( userName, fullName, emailAdd, false, false );
130     }
131
132     public void deleteUser( String userName, String fullName, String emailAd, boolean validated, boolean locked )
133     {
134         clickLinkWithLocator( "menu-users-list-a", true );
135         assertTextPresent( userName );
136         assertTextPresent( fullName );
137
138         clickLinkWithLocator( "users-grid-delete-" + userName );
139
140         clickLinkWithLocator( "dialog-confirm-modal-ok" );
141         assertTextPresent( "User " + userName + " deleted." );
142
143         clickLinkWithLocator( "alert-message-success-close-a" );
144
145         assertElementNotPresent( "users-grid-user-id-" + userName );
146         assertTextNotPresent( fullName );
147
148
149     }
150
151     // User Roles
152
153
154     public void assertCreateUserPage()
155     {
156         assertTextPresent( "Username" );
157         assertElementPresent( "username" );
158         assertTextPresent( "Full Name" );
159         assertElementPresent( "fullname" );
160         assertTextPresent( "Email Address" );
161         assertElementPresent( "email" );
162         assertTextPresent( "Password" );
163         assertElementPresent( "password" );
164         assertTextPresent( "Confirm Password" );
165         assertElementPresent( "confirmPassword" );
166         assertButtonWithIdPresent( "user-create-form-register-button" );
167
168     }
169
170     public void goToHomePage()
171     {
172         getSelenium().open( baseUrl );
173     }
174
175     protected void logout()
176     {
177         clickLinkWithText( "Logout" );
178         assertTextNotPresent( "Current User:" );
179         assertLinkNotVisible( "Edit Details" );
180         assertLinkNotVisible( "Logout" );
181         assertLinkVisible( "Login" );
182     }
183
184     protected String getAdminUserName()
185     {
186         return getProperty( "ADMIN_FULLNAME" );
187     }
188 }