... | ... |
@@ -5,7 +5,6 @@ |
5 | 5 |
|
6 | 6 |
# Parameters |
7 | 7 |
my $op = param('op') || ''; |
8 |
- my $mode = param('mode') || ''; |
|
9 | 8 |
my $user = param('user'); |
10 | 9 |
|
11 | 10 |
my $reset_password_conf_on = app->config->{admin}{reset_password}; |
... | ... |
@@ -65,7 +65,7 @@ note 'Start page'; |
65 | 65 |
; |
66 | 66 |
} |
67 | 67 |
|
68 |
-note 'Login as admin user'; |
|
68 |
+note 'Admin pages'; |
|
69 | 69 |
{ |
70 | 70 |
unlink $db_file; |
71 | 71 |
|
... | ... |
@@ -198,4 +198,73 @@ note 'Login as admin user'; |
198 | 198 |
|
199 | 199 |
; |
200 | 200 |
} |
201 |
+ |
|
202 |
+ note 'logout'; |
|
203 |
+ $t->get_ok('/_logout') |
|
204 |
+ ->get_ok('/_admin') |
|
205 |
+ ->content_like(qr/Users/); |
|
206 |
+} |
|
207 |
+ |
|
208 |
+note 'Reset password'; |
|
209 |
+{ |
|
210 |
+ unlink $db_file; |
|
211 |
+ |
|
212 |
+ my $app = Gitprep->new; |
|
213 |
+ my $t = Test::Mojo->new($app); |
|
214 |
+ $t->ua->max_redirects(3); |
|
215 |
+ |
|
216 |
+ # Create admin user |
|
217 |
+ $t->post_ok('/_start?op=create', form => {password => 'a', password2 => 'a'}) |
|
218 |
+ ->content_like(qr/Login Page/); |
|
219 |
+ ; |
|
220 |
+ |
|
221 |
+ # Not loing user can't access |
|
222 |
+ $t->get_ok('/reset-password') |
|
223 |
+ ->content_like(qr/Users/); |
|
224 |
+ |
|
225 |
+ # Cnahge password(reset_password conf on) |
|
226 |
+ $app->config->{admin}{reset_password} = 1; |
|
227 |
+ $t->get_ok('/reset-password') |
|
228 |
+ ->content_like(qr/Reset Password/); |
|
229 |
+ $t->post_ok('/reset-password?op=reset', form => {password => 'b', password2 => 'b'}) |
|
230 |
+ ->content_like(qr/Success.*changed/) |
|
231 |
+ ; |
|
232 |
+ $app->config->{admin}{reset_password} = 0; |
|
233 |
+ |
|
234 |
+ # Login success |
|
235 |
+ $t->post_ok('/_login?op=login', form => {id => 'admin', password => 'b'}) |
|
236 |
+ ->content_like(qr/Admin/) |
|
237 |
+ ; |
|
238 |
+ |
|
239 |
+ # Create user |
|
240 |
+ $t->post_ok('/_admin/user/create?op=create', form => {id => 'kimoto1', password => 'a', password2 => 'a'}) |
|
241 |
+ ->content_like(qr/kimoto1/); |
|
242 |
+ $t->post_ok('/_admin/user/create?op=create', form => {id => 'kimoto2', password => 'a', password2 => 'a'}) |
|
243 |
+ ->content_like(qr/kimoto2/); |
|
244 |
+ |
|
245 |
+ # Logout |
|
246 |
+ $t->get_ok('/_logout'); |
|
247 |
+ |
|
248 |
+ # Login as kimoto |
|
249 |
+ $t->post_ok('/_login?op=login', form => {id => 'kimoto1', password => 'a'}); |
|
250 |
+ $t->get_ok('/')->content_like(qr/kimoto1/); |
|
251 |
+ |
|
252 |
+ # Don't change other user password |
|
253 |
+ $t->get_ok('/reset-password?user=kimoto2') |
|
254 |
+ ->content_like(qr/Users/) |
|
255 |
+ ; |
|
256 |
+ $t->post_ok('/reset-password?user=kimoto2&op=reset', form => {password => 'b', password2 => 'b'}) |
|
257 |
+ ->content_like(qr/Users/) |
|
258 |
+ ; |
|
259 |
+ |
|
260 |
+ # Reset password |
|
261 |
+ $t->get_ok('/reset-password?user=kimoto1') |
|
262 |
+ ->content_like(qr/Reset Password/) |
|
263 |
+ ; |
|
264 |
+ $t->post_ok('/reset-password?user=kimoto1&op=reset', form => {password => 'b', password2 => 'b'}); |
|
265 |
+ |
|
266 |
+ # Login as kimoto |
|
267 |
+ $t->get_ok('/_logout'); |
|
268 |
+ $t->post_ok('/_login?op=login', form => {id => 'kimoto1', password => 'b'}); |
|
269 |
+ $t->get_ok('/')->content_like(qr/kimoto1/); |
|
201 | 270 |
} |