]> source.dussan.org Git - archiva.git/blob
49387032f0d55b290b3b433a7460a043c680b85f
[archiva.git] /
1 package org.apache.archiva.web.test;
2
3 /*
4  * Licensed to the Apache Software Foundation (ASF) under one
5  * or more contributor license agreements.  See the NOTICE file
6  * distributed with this work for additional information
7  * regarding copyright ownership.  The ASF licenses this file
8  * to you under the Apache License, Version 2.0 (the
9  * "License"); you may not use this file except in compliance
10  * with the License.  You may obtain a copy of the License at
11  *
12  *   http://www.apache.org/licenses/LICENSE-2.0
13  *
14  * Unless required by applicable law or agreed to in writing,
15  * software distributed under the License is distributed on an
16  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17  * KIND, either express or implied.  See the License for the
18  * specific language governing permissions and limitations
19  * under the License.
20  */
21
22 import org.apache.archiva.web.test.parent.AbstractArchivaTest;
23 import org.testng.Assert;
24 import org.testng.annotations.AfterTest;
25 import org.testng.annotations.BeforeSuite;
26 import org.testng.annotations.BeforeTest;
27 import org.testng.annotations.Optional;
28 import org.testng.annotations.Parameters;
29 import org.testng.annotations.Test;
30
31 public class ArchivaAdminTest
32     extends AbstractArchivaTest
33 {
34
35     @Override
36     @AfterTest
37     public void close()
38         throws Exception
39     {
40         super.close();
41     }
42
43     @Override
44     @BeforeSuite
45     public void open()
46         throws Exception
47     {
48         super.open();
49     }
50
51     @BeforeTest
52     @Parameters( { "baseUrl", "browser", "maxWaitTimeInMs", "seleniumHost", "seleniumPort" } )
53     public void initializeArchiva( String baseUrl, String browser, int maxWaitTimeInMs,
54                                    @Optional( "localhost" ) String seleniumHost, @Optional( "4444" ) int seleniumPort )
55         throws Exception
56     {
57
58         super.open( baseUrl, browser, seleniumHost, seleniumPort, Integer.toString( maxWaitTimeInMs ) );
59
60         getSelenium().open( baseUrl );
61
62         waitPage();
63
64         // if not admin user created create one
65         if ( isElementVisible( "create-admin-link" ) )
66         {
67             Assert.assertFalse( getSelenium().isVisible( "login-link-a" ) );
68             Assert.assertFalse( getSelenium().isVisible( "register-link-a" ) );
69             clickLinkWithLocator( "create-admin-link-a", false );
70             assertCreateAdmin();
71             String fullname = getProperty( "ADMIN_FULLNAME" );
72             String username = getProperty( "ADMIN_USERNAME" );
73             String mail = getProperty( "ADMIN_EMAIL" );
74             String password = getProperty( "ADMIN_PASSWORD" );
75             submitAdminData( fullname, mail, password );
76             assertUserLoggedIn( username );
77             clickLinkWithLocator( "logout-link-a" );
78         }
79         else
80         {
81             Assert.assertTrue( getSelenium().isVisible( "login-link-a" ) );
82             Assert.assertTrue( getSelenium().isVisible( "register-link-a" ) );
83             login( getAdminUsername(), getAdminPassword() );
84         }
85
86     }
87
88     @Test( groups = { "about" }, alwaysRun = true )
89     public void testHome()
90     {
91         getSelenium().open( baseUrl );
92         assertPage( "Apache Archiva" );
93     }
94 }