]> source.dussan.org Git - archiva.git/blob
0e1ae2511c3c6f88c94bd9e4a3589122e1e856d8
[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.AbstractArtifactManagementTest;
23 import org.testng.annotations.Test;
24
25 @Test( groups = { "artifactmanagement" }, dependsOnMethods = { "testWithCorrectUsernamePassword" } )
26 public class ArtifactManagementTest
27         extends AbstractArtifactManagementTest
28 {
29
30         
31         public void testAddArtifactNullValues()
32         {
33                 goToAddArtifactPage();
34                 clickButtonWithValue( "Submit" );
35                 assertTextPresent( "Please add a file to upload." );
36                 assertTextPresent( "Invalid version." );
37                 assertTextPresent( "You must enter a groupId." );
38                 assertTextPresent( "You must enter an artifactId." );
39                 assertTextPresent( "You must enter a version" );
40                 assertTextPresent( "You must enter a packaging" );
41         }
42         
43         @Test(dependsOnMethods = { "testAddArtifactNullValues" } )
44         public void testAddArtifactNoGroupId()
45         {
46                 addArtifact( " " , getArtifactId(), getVersion(), getPackaging() , getArtifactFilePath(), getRepositoryId() );
47                 assertTextPresent( "You must enter a groupId." );
48         }
49         
50         @Test(dependsOnMethods = { "testAddArtifactNoGroupId" } )
51         public void testAddArtifactNoArtifactId()
52         {
53                 
54                 addArtifact( getGroupId() , " ", getVersion(), getPackaging() , getArtifactFilePath(), getRepositoryId() );
55                 assertTextPresent( "You must enter an artifactId." );
56         }
57         
58         @Test(dependsOnMethods = { "testAddArtifactNoGroupId" } )
59         public void testAddArtifactNoVersion()
60         {
61                 addArtifact( getGroupId() , getArtifactId(), " ", getPackaging() , getArtifactFilePath(), getRepositoryId() );
62                 assertTextPresent( "You must enter a version." );
63         }
64         
65         @Test(dependsOnMethods = { "testAddArtifactNoGroupId" } )
66         public void testAddArtifactInvalidVersion()
67         {
68                 addArtifact( getGroupId() , getArtifactId(), "asdf", getPackaging() , getArtifactFilePath(), getRepositoryId() );
69                 assertTextPresent( "Invalid version." );
70         }
71         
72         @Test(dependsOnMethods = { "testAddArtifactNoGroupId" } )
73         public void testAddArtifactNoPackaging()
74         {
75                 addArtifact( getGroupId() , getArtifactId(), getVersion(), " " , getArtifactFilePath(), getRepositoryId() );
76                 assertTextPresent( "You must enter a packaging." );
77         }
78         
79         @Test(dependsOnMethods = { "testAddArtifactNoGroupId" } )
80         public void testAddArtifactNoFilePath()
81         {
82                 addArtifact( getGroupId() , getArtifactId(), getVersion(), getPackaging() , " ", getRepositoryId() );
83                 assertTextPresent( "Please add a file to upload." );
84         }
85         
86     @Test(groups = "requiresUpload")
87         public void testAddArtifactValidValues()
88         {
89         String groupId = getProperty( "VALIDARTIFACT_GROUPID" );
90         String artifactId = getProperty( "VALIDARTIFACT_ARTIFACTID" );
91         
92                 addArtifact( groupId , artifactId, getVersion(), getPackaging() , getArtifactFilePath(), getRepositoryId() );
93                 assertTextPresent( "Artifact '" + groupId + ":" + artifactId + ":" + getVersion() + "' was successfully deployed to repository 'internal'" );
94         }
95
96     @Test( groups = "requiresUpload" )
97     public void testDotNetTypes()
98     {
99         addArtifact( getGroupId(), "testDotNetTypes", getVersion(), "library", getArtifactFilePath(),
100                      getRepositoryId() );
101         assertTextPresent( "Artifact 'test:testDotNetTypes:1.0' was successfully deployed to repository 'internal'" );
102         getSelenium().open( baseUrl + "/browse/" + getGroupId() + "/testDotNetTypes/" + getVersion() );
103         waitPage();
104
105         assertTextPresent( "<type>library</type>" );
106         String basePath =
107             "/archiva/repository/internal/" + getGroupId() + "/testDotNetTypes/" + getVersion() + "/testDotNetTypes-" +
108                 getVersion();
109         assertLinkPresent( ".NET Library" );
110         assertElementPresent( "//a[@href='" + basePath + ".dll']" );
111         assertElementPresent( "//a[@href='" + basePath + ".pom']" );
112     }
113
114         //MRM-747
115     @Test(groups = "requiresUpload")
116         public void testAddArtifactBlockRedeployments()
117         {
118             addArtifact( getGroupId() , getArtifactId(), getVersion(), getPackaging() , getArtifactFilePath(), getRepositoryId() );
119             assertTextPresent( "Overwriting released artifacts in repository '" + getRepositoryId() + "' is not allowed." );
120         }
121         
122     @Test(groups = "requiresUpload")
123         public void testDeleteArtifact()
124         {
125                 //prep
126                 String groupId = getProperty( "GROUPID1" );
127                 String artifactId = getProperty( "ARTIFACTID1" );
128                 String version = getProperty( "VERSION1" );
129                 String packaging = getProperty( "PACKAGING1" );
130                 String repositoryId = getProperty( "REPOSITORYID1" );
131                 // TODO: do this differently as it only works in Firefox's chrome mode
132                 addArtifact( groupId , artifactId, version, packaging , getArtifactFilePath(), repositoryId );
133                 assertTextPresent( "Artifact 'delete:delete:1.0' was successfully deployed to repository 'internal'" );
134
135                 deleteArtifact( "delete", "delete", "1.0", "internal");
136                 assertTextPresent( "Artifact 'delete:delete:1.0' was successfully deleted from repository 'internal'" );
137         }
138         
139         public void testDeleteArtifactNoGroupId()
140         {
141                 deleteArtifact( " ", "delete", "1.0", "internal");
142                 assertTextPresent( "You must enter a groupId." );
143         }
144         
145         public void testDeleteArtifactNoArtifactId()
146         {
147                 deleteArtifact( "delete", " ", "1.0", "internal");
148                 assertTextPresent( "You must enter an artifactId." );
149         }
150         
151         public void testDeleteArtifactNoVersion()
152         {
153                 deleteArtifact( "delete", "delete", " ", "internal");
154                 assertTextPresent( "Invalid version." );
155                 assertTextPresent( "You must enter a version." );
156         }
157         
158         public void testDeleteArtifactInvalidVersion()
159         {
160                 deleteArtifact( "delete", "delete", "asdf", "internal");
161                 assertTextPresent( "Invalid version." );
162         }
163 }