]> source.dussan.org Git - archiva.git/blob
a82a8f5849256e24457a9eb8b5ffd39d1aa5e416
[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 java.io.File;
23
24 import org.apache.archiva.web.test.parent.AbstractBrowseTest;
25 import org.testng.annotations.Test;
26
27 @Test( groups = { "browse" }, dependsOnMethods = { "testAddArtifactNullValues" } )
28 public class BrowseTest 
29         extends AbstractBrowseTest
30 {
31         
32         public void testBrowseArtifact()
33         {
34                 goToBrowsePage();
35                 assertBrowsePage();
36         }
37         
38         public void testClickArtifactFromBrowse()
39         {
40                 goToBrowsePage();
41                 assertBrowsePage();
42                 clickLinkWithText( getProperty( "ARTIFACT_ARTIFACTID" ) + "/" );
43                 assertPage( "Apache Archiva \\ Browse Repository" );
44                 assertTextPresent( "Artifacts" );
45         }
46
47     // MRM-1278
48     @Test(groups = {"requiresUpload"})
49     public void testCorrectRepositoryInBrowse()
50     {
51         String releasesRepo = getProperty( "RELEASES_REPOSITORY" );
52         
53         // create releases repository first
54         goToRepositoriesPage();
55         clickLinkWithText( "Add" );
56         addManagedRepository( getProperty( "RELEASES_REPOSITORY" ), "Releases Repository",
57                               new File( getBasedir(), "target/repository/releases" ).getPath(), "", "Maven 2.x Repository",
58                               "0 0 * * * ?", "", "" );        
59         assertTextPresent( "Releases Repository" );
60         
61         String snapshotsRepo = getProperty( "SNAPSHOTS_REPOSITORY" );
62
63         String path = "src/test/it-resources/snapshots/org/apache/maven/archiva/web/test/foo-bar/1.0-SNAPSHOT/foo-bar-1.0-SNAPSHOT.jar";
64         // TODO: do this differently as uploading doesn't work on browsers other than *chrome (below as well)
65         // upload a snapshot artifact to repository 'releases'        
66         addArtifact( "archiva", "archiva-webapp", "1.0-SNAPSHOT", "jar", path, releasesRepo );
67         assertTextPresent( "Artifact 'archiva:archiva-webapp:1.0-SNAPSHOT' was successfully deployed to repository '" + releasesRepo + "'" );
68
69         goToBrowsePage();
70         assertBrowsePage();
71         assertGroupsPage( "archiva/" );
72         assertArtifactsPage( "archiva-webapp/" );
73         assertArtifactInfoPage( "1.0-SNAPSHOT/", releasesRepo, "archiva", "archiva-webapp", "1.0-SNAPSHOT", "jar" );
74
75         // upload a snapshot artifact to repository 'snapshots'        
76         addArtifact( "continuum", "continuum-core", "1.0-SNAPSHOT", "jar", path, snapshotsRepo );
77         assertTextPresent( "Artifact 'continuum:continuum-core:1.0-SNAPSHOT' was successfully deployed to repository '" + snapshotsRepo + "'" );
78
79         goToBrowsePage();
80         assertBrowsePage();
81         assertGroupsPage( "continuum/" );
82         assertArtifactsPage( "continuum-core/" );
83         assertArtifactInfoPage( "1.0-SNAPSHOT/", snapshotsRepo, "continuum", "continuum-core", "1.0-SNAPSHOT", "jar" );
84     }
85
86     private void assertArtifactInfoPage( String version, String artifactInfoRepositoryId, String artifactInfoGroupId,
87                                          String artifactInfoArtifactId, String artifactInfoVersion, String artifactInfoPackaging )
88     {
89         clickLinkWithText( version );
90         assertPage( "Apache Archiva \\ Browse Repository" );
91         assertTextPresent( artifactInfoRepositoryId );
92         assertTextPresent( artifactInfoGroupId );
93         assertTextPresent( artifactInfoArtifactId );
94         assertTextPresent( artifactInfoVersion );
95         assertTextPresent( artifactInfoPackaging );
96     }
97
98     private void assertArtifactsPage( String artifactId )
99     {
100         clickLinkWithText( artifactId );
101         assertPage( "Apache Archiva \\ Browse Repository" );
102         assertTextPresent( "Versions" );
103     }
104
105     private void assertGroupsPage( String groupId )
106     {
107         clickLinkWithText( groupId );
108         assertPage( "Apache Archiva \\ Browse Repository" );
109         assertTextPresent( "Artifacts" );
110     }
111 }