Author: oching
Date: Mon Nov 16 08:33:59 2009
New Revision: 880666

URL: http://svn.apache.org/viewvc?rev=880666&view=rev
Log:
[MRM-1277] Create Selenium test for advanced search feature
o added webapp tests for searching non existing artifacts and when no search 
criteria is specified in advanced search

Modified:
    
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/testng/org/apache/archiva/web/test/SearchTest.java
    
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/testng/org/apache/archiva/web/test/parent/AbstractSearchTest.java

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/testng/org/apache/archiva/web/test/SearchTest.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/testng/org/apache/archiva/web/test/SearchTest.java?rev=880666&r1=880665&r2=880666&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/testng/org/apache/archiva/web/test/SearchTest.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/testng/org/apache/archiva/web/test/SearchTest.java
 Mon Nov 16 08:33:59 2009
@@ -54,6 +54,24 @@
                assertPage( "Apache Archiva \\ Browse Repository" );
     }
        
-       
+       public void testSearchNonExistingArtifactInAdvancedSearch()
+    {
+        searchForArtifactAdvancedSearch( null, getProperty( 
"SEARCH_BAD_ARTIFACT"), null, null, null, null );
+        assertTextPresent( "No results found" );
+    }
 
+    public void testSearchNoSearchCriteriaSpecifiedInAdvancedSearch()
+    {
+        searchForArtifactAdvancedSearch( null, null, null, null, null, null );
+        assertTextPresent( "Advanced Search - At least one search criteria 
must be provided." );
+    }
+
+   /* public void testSearchExistingArtifactUsingAdvancedSearchArtifactId()
+    {
+        searchForArtifactAdvancedSearch( null, getProperty( 
"ARTIFACT_ARTIFACTID" ), null, null, null, null );
+               assertTextPresent( "Results" );
+               assertTextPresent( "Hits: 1 to 1 of 1" );
+               assertLinkPresent( "test" );   
+    }*/
 }
+

Modified: 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/testng/org/apache/archiva/web/test/parent/AbstractSearchTest.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/testng/org/apache/archiva/web/test/parent/AbstractSearchTest.java?rev=880666&r1=880665&r2=880666&view=diff
==============================================================================
--- 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/testng/org/apache/archiva/web/test/parent/AbstractSearchTest.java
 (original)
+++ 
archiva/trunk/archiva-modules/archiva-web/archiva-webapp-test/src/test/testng/org/apache/archiva/web/test/parent/AbstractSearchTest.java
 Mon Nov 16 08:33:59 2009
@@ -25,8 +25,13 @@
        //Search
        public void goToSearchPage()
        {
-               clickLinkWithText( "Search" );
-               assertSearchPage();
+        if ( !"Apache Archiva \\ Quick Search".equals( 
getSelenium().getTitle() ) )
+        {
+            clickLinkWithText( "Search" );
+            getSelenium().waitForPageToLoad( maxWaitTimeInMs );
+
+            assertPage( "Apache Archiva \\ Quick Search" );
+        }
        }
        
        public void assertSearchPage()
@@ -42,16 +47,66 @@
        
        public void searchForArtifact( String artifactId )
     {
-        if ( !"Apache Archiva \\ Quick Search".equals( 
getSelenium().getTitle() ) )
-        {
-            clickLinkWithText( "Search" );
-            
-            getSelenium().waitForPageToLoad( maxWaitTimeInMs );
-            
-            assertPage( "Apache Archiva \\ Quick Search" );
-        }
+        goToSearchPage();
 
         getSelenium().type( "dom=document.forms[1].elements[0]", artifactId );
         clickButtonWithValue( "Search" );
     }
+
+    public void searchForArtifactAdvancedSearch( String groupId, String 
artifactId, String version, String repositoryId,
+                                                 String className, String 
rowCount )
+    {
+        goToSearchPage();
+
+        clickLinkWithXPath( "//d...@id='contentArea']/div[1]/a[1]/strong", 
false );
+        assertElementPresent( "filteredSearch_searchField" );
+        assertElementPresent( "filteredSearch_repositoryId" );
+
+        if ( groupId != null )
+        {
+            selectValue( "filteredSearch_searchField", "Group ID" );
+            clickLinkWithLocator( "//a...@id='filteredSearch_']/img", false );
+
+            assertElementPresent( "groupId" );
+            setFieldValue( "groupId", groupId );
+        }
+
+        if ( artifactId != null )
+        {
+            selectValue( "filteredSearch_searchField", "Artifact ID" );
+            clickLinkWithLocator( "//a...@id='filteredSearch_']/img", false );
+
+            assertElementPresent( "artifactId" );
+            setFieldValue( "artifactId", artifactId );
+        }
+
+        if ( version != null )
+        {
+            selectValue( "filteredSearch_searchField", "Version" );
+            clickLinkWithLocator( "//a...@id='filteredSearch_']/img", false );
+
+            assertElementPresent( "version" );
+            setFieldValue( "version", version );
+        }
+
+        if ( className != null )
+        {
+            selectValue( "filteredSearch_searchField", "Class/Package Name" );
+            clickLinkWithLocator( "//a...@id='filteredSearch_']/img", false );
+
+            assertElementPresent( "className" );
+            setFieldValue( "className", className );
+        }
+
+        if ( rowCount != null )
+        {
+            selectValue( "filteredSearch_searchField", "Row Count" );
+            clickLinkWithLocator( "//a...@id='filteredSearch_']/img", false );
+
+            assertElementPresent( "rowCount" );
+            setFieldValue( "rowCount", rowCount );
+        }
+
+        clickSubmitWithLocator( "filteredSearch_0" );
+    }
 }
\ No newline at end of file


Reply via email to