You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@continuum.apache.org by ev...@apache.org on 2005/08/03 20:30:18 UTC

svn commit: r227244 - in /maven/continuum/trunk/continuum-web-test: ./ src/test/java/ src/test/java/org/ src/test/java/org/apache/ src/test/java/org/apache/maven/ src/test/java/org/apache/maven/continuum/ src/test/java/org/apache/maven/continuum/web/ s...

Author: evenisse
Date: Wed Aug  3 11:29:20 2005
New Revision: 227244

URL: http://svn.apache.org/viewcvs?rev=227244&view=rev
Log:
[CONTINUUM-262] Use jwebunit instead of slimdog.
With jwebunit, we'll can write more functional tests.

Added:
    maven/continuum/trunk/continuum-web-test/pom.xml   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/
    maven/continuum/trunk/continuum-web-test/src/test/java/org/
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AbstractIntegrationWebTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AbstractPlexusWebTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveAntProjectTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveMavenOneProjectTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveMavenTwoProjectTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveShellProjectTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/HomepageTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithExtendElementTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoBuildElementTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoNagEmailElementTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoNameElementTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoRepositoryElementTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoCimElementTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoConnectionElementTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoNotifiersElementTest.java   (with props)
    maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoScmElementTest.java   (with props)
Removed:
    maven/continuum/trunk/continuum-web-test/slimdog.sh
    maven/continuum/trunk/continuum-web-test/src/test/slimdog/
Modified:
    maven/continuum/trunk/continuum-web-test/   (props changed)

Propchange: maven/continuum/trunk/continuum-web-test/
------------------------------------------------------------------------------
--- svn:ignore (added)
+++ svn:ignore Wed Aug  3 11:29:20 2005
@@ -0,0 +1,3 @@
+target
+.project
+.classpath

Added: maven/continuum/trunk/continuum-web-test/pom.xml
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/pom.xml?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/pom.xml (added)
+++ maven/continuum/trunk/continuum-web-test/pom.xml Wed Aug  3 11:29:20 2005
@@ -0,0 +1,22 @@
+<project>
+  <modelVersion>4.0.0</modelVersion>
+  <parent>
+    <groupId>org.apache.maven.continuum</groupId>
+    <artifactId>continuum-parent</artifactId>
+    <version>1.0-beta-1-SNAPSHOT</version>
+  </parent>
+  <artifactId>continuum-web-test</artifactId>
+  <version>1.0-beta-1-SNAPSHOT</version>
+  <name>Continuum Web Test</name>
+  <dependencies>
+    <dependency>
+      <groupId>org.apache.maven.continuum</groupId>
+      <artifactId>continuum-plexus-application</artifactId>
+    </dependency>
+    <dependency>
+      <groupId>jwebunit</groupId>
+      <artifactId>jwebunit</artifactId>
+      <version>1.2</version>
+    </dependency>
+  </dependencies>
+</project>

Propchange: maven/continuum/trunk/continuum-web-test/pom.xml
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/pom.xml
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AbstractIntegrationWebTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AbstractIntegrationWebTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AbstractIntegrationWebTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AbstractIntegrationWebTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,213 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import org.codehaus.plexus.context.Context;
+
+import com.meterware.httpunit.WebTable;
+import com.meterware.httpunit.TableCell;
+
+import java.io.File;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.text.DateFormat;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import junit.framework.TestCase;
+
+import net.sourceforge.jwebunit.WebTestCase;
+
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import org.w3c.dom.Text;
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public abstract class AbstractIntegrationWebTest
+    extends AbstractPlexusWebTest
+{
+    private static final DateFormat progressDateFormat = new SimpleDateFormat( "yyyy.MM.dd HH:mm:ss" );
+
+    private Date startTime;
+
+    // ----------------------------------------------------------------------
+    //
+    // ----------------------------------------------------------------------
+
+    public void setUp()
+        throws Exception
+    {
+        startTime = new Date();
+
+        super.setUp();
+    }
+
+    public void tearDown()
+        throws Exception
+    {
+        Date endTime = new Date();
+
+        super.tearDown();
+
+        long diff = endTime.getTime() - startTime.getTime();
+
+        progress( "Used " + diff + "ms" );
+    }
+
+    public String getBaseUrl()
+    {
+        return "http://localhost:8080/continuum/servlet/continuum";
+    }
+
+    // ----------------------------------------------------------------------
+    // Logging
+    // ----------------------------------------------------------------------
+
+    public static void progress( String message )
+    {
+        System.out.println( "[" + progressDateFormat.format( new Date() ) + "] " + message );
+    }
+
+    // ----------------------------------------------------------------------
+    //
+    // ----------------------------------------------------------------------
+
+    public void addAntProject( String targets, String executable, String projectName, String scmUrl, String version )
+    {
+        beginAt( "/" );
+        clickLinkWithText( "Add Ant Project" );
+        assertTitleEquals( "Add Project" );
+        assertTextPresent( "Targets" );
+        setFormElement( "project.targets", targets );
+        setFormElement( "project.executable", executable );
+        setFormElement( "project.name", projectName );
+        setFormElement( "projectScmUrl", scmUrl );
+        setFormElement( "project.version", version );
+        submit();
+    }
+
+    public void addMavenOneProject( String pomUrl )
+    {
+        beginAt( "/" );
+        clickLinkWithText( "Add M1 Project" );
+        assertTitleEquals( "Add Project" );
+        assertTextPresent( "M1 POM Url" );
+        setFormElement( "m1PomUrl", pomUrl );
+        submit();
+    }
+
+    public void addMavenTwoProject( String pomUrl )
+    {
+        beginAt( "/" );
+        clickLinkWithText( "Add M2 Project" );
+        assertTitleEquals( "Add Project" );
+        assertTextPresent( "M2 POM Url" );
+        setFormElement( "m2PomUrl", pomUrl );
+        submit();
+    }
+
+    public void addShellProject( String executable, String projectName, String scmUrl, String version )
+    {
+        beginAt( "/" );
+        clickLinkWithText( "Add Shell Project" );
+        assertTitleEquals( "Add Project" );
+        assertTextPresent( "Executable" );
+        assertTextNotPresent( "Targets" );
+        setFormElement( "project.executable", executable );
+        setFormElement( "project.name", projectName );
+        setFormElement( "projectScmUrl", scmUrl );
+        setFormElement( "project.version", version );
+        submit();
+    }
+
+    public void uploadMavenOneProject( String pomUrl )
+    {
+        beginAt( "/" );
+        clickLinkWithText( "Upload M1 Project" );
+        assertTitleEquals( "Add Project" );
+        assertTextPresent( "M1 POM Url" );
+        setFormElement( "m1PomUrl", pomUrl );
+        submit();
+    }
+
+    public void uploadMavenTwoProject( String pomUrl )
+    {
+        beginAt( "/" );
+        clickLinkWithText( "Upload M2 Project" );
+        assertTitleEquals( "Add Project" );
+        assertTextPresent( "M2 POM Url" );
+        setFormElement( "m2PomUrl", pomUrl );
+        submit();
+    }
+
+    // ----------------------------------------------------------------------
+    //
+    // ----------------------------------------------------------------------
+
+	protected String getNodeHtml(Node node) {
+		String nodeHtml = "";
+		NodeList children = node.getChildNodes();
+		for (int i = 0; i < children.getLength(); i++) {
+			Node child = children.item(i);
+			if (child.getNodeType() == Node.ELEMENT_NODE) {
+				nodeHtml += "<" + child.getNodeName() + ">";
+			}
+			if (child.hasChildNodes()) {
+				nodeHtml += getNodeHtml(child);
+			} else {
+				nodeHtml += child.getNodeValue();
+			}
+			if (child.getNodeType() == Node.ELEMENT_NODE) {
+				nodeHtml += "</" + child.getNodeName() + ">";
+			}
+		}
+		return getTestContext().toEncodedString(nodeHtml);
+	}
+
+	/**
+	 * Return the text (without any markup) of the tree rooted at node.
+	 */
+	protected String getNodeText(Node node) {
+		String nodeText = "";
+		NodeList children = node.getChildNodes();
+		for (int i = 0; i < children.getLength(); i++) {
+			Node child = children.item(i);
+			if (child.hasChildNodes()) {
+				nodeText += getNodeText(child);
+			} else if (child.getNodeType() == Node.TEXT_NODE) {
+				nodeText += ((Text) child).getData();
+			}
+		}
+		return nodeText;
+	}
+
+    public void assertTextInTable( String tableSummaryOrId, String text, int row, int column )
+    {
+		WebTable table = getDialog().getWebTableBySummaryOrId( tableSummaryOrId );
+		assertNotNull( "table [" + tableSummaryOrId + "] doesn't exist", table );
+		TableCell cell = table.getTableCell( row, column );
+		assertNotNull( "cell [" + row + "," + column + "] in table [" + tableSummaryOrId + "] doesn't exist", table );
+		if ( cell != null )
+		{
+			String cellHtml = getNodeHtml( cell.getDOM() );
+			assertEquals( "Invalid text in cell [" + row + "," + column + "] in table " + tableSummaryOrId, text, cellHtml );
+		}
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AbstractIntegrationWebTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AbstractIntegrationWebTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AbstractPlexusWebTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AbstractPlexusWebTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AbstractPlexusWebTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AbstractPlexusWebTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,249 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import java.io.File;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+
+import junit.framework.TestCase;
+
+import net.sourceforge.jwebunit.WebTestCase;
+
+import org.codehaus.plexus.DefaultPlexusContainer;
+import org.codehaus.plexus.PlexusContainer;
+import org.codehaus.plexus.context.Context;
+
+/**
+ * @author <a href="mailto:jason@maven.org">Jason van Zyl</a>
+ * @author <a href="mailto:trygvis@inamo.no">Trygve Laugst&oslash;l</a>
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public abstract class AbstractPlexusWebTest
+    extends WebTestCase
+{
+    protected PlexusContainer container;
+
+    private static String basedir;
+
+    public AbstractPlexusWebTest()
+    {
+    }
+
+    protected void setUp()
+        throws Exception
+    {
+        InputStream configuration = null;
+
+        try
+        {
+            configuration = getCustomConfiguration();
+
+            if ( configuration == null )
+            {
+                configuration = getConfiguration();
+            }
+        }
+        catch ( Exception e )
+        {
+            System.out.println( "Error with configuration:" );
+
+            System.out.println( "configuration = " + configuration );
+
+            fail( e.getMessage() );
+        }
+
+        basedir = getBasedir();
+
+        container = createContainerInstance();
+
+        container.addContextValue( "basedir", getBasedir() );
+
+        customizeContext( getContext() );
+
+        boolean hasPlexusHome = getContext().contains( "plexus.home" );
+
+        if ( !hasPlexusHome )
+        {
+            File f = getTestFile( "target/plexus-home" );
+
+            if ( !f.isDirectory() )
+            {
+                f.mkdir();
+            }
+
+            getContext().put( "plexus.home", f.getAbsolutePath() );
+        }
+
+        if ( configuration != null )
+        {
+            container.setConfigurationResource( new InputStreamReader( configuration ) );
+        }
+
+        container.initialize();
+
+        container.start();
+
+        getTestContext().setBaseUrl( getBaseUrl() );
+    }
+
+    protected PlexusContainer createContainerInstance()
+    {
+        return new DefaultPlexusContainer();
+    }
+
+    private Context getContext()
+    {
+        return container.getContext();
+    }
+
+    protected void customizeContext( Context context )
+        throws Exception
+    {
+    }
+
+    protected InputStream getCustomConfiguration()
+        throws Exception
+    {
+        return null;
+    }
+
+    protected void tearDown()
+        throws Exception
+    {
+        container.dispose();
+
+        container = null;
+    }
+
+    protected PlexusContainer getContainer()
+    {
+        return container;
+    }
+
+    protected InputStream getConfiguration()
+        throws Exception
+    {
+        return getConfiguration( null );
+    }
+
+    protected InputStream getConfiguration( String subname )
+        throws Exception
+    {
+        String className = getClass().getName();
+
+        String base = className.substring( className.lastIndexOf( "." ) + 1 );
+
+        String config = null;
+
+        if ( subname == null || subname.equals( "" ) )
+        {
+            config = base + ".xml";
+        }
+        else
+        {
+            config = base + "-" + subname + ".xml";
+        }
+        
+        InputStream configStream = getResourceAsStream( config );
+
+        return configStream;
+    }
+
+    protected InputStream getResourceAsStream( String resource )
+    {
+        return getClass().getResourceAsStream( resource );
+    }
+
+    protected ClassLoader getClassLoader()
+    {
+        return getClass().getClassLoader();
+    }
+
+    // ----------------------------------------------------------------------
+    // Container access
+    // ----------------------------------------------------------------------
+
+    protected Object lookup( String componentKey )
+        throws Exception
+    {
+        return getContainer().lookup( componentKey );
+    }
+
+    protected Object lookup( String role, String id )
+        throws Exception
+    {
+        return getContainer().lookup( role, id );
+    }
+
+    protected void release( Object component )
+        throws Exception
+    {
+        getContainer().release( component );
+    }
+
+    // ----------------------------------------------------------------------
+    // Helper methods for sub classes
+    // ----------------------------------------------------------------------
+
+    public static File getTestFile( String path )
+    {
+        return new File( getBasedir(), path );
+    }
+
+    public static File getTestFile( String basedir, String path )
+    {
+        File basedirFile = new File( basedir );
+
+        if ( ! basedirFile.isAbsolute() )
+        {
+            basedirFile = getTestFile( basedir );
+        }
+
+        return new File( basedirFile, path );
+    }
+
+    public static String getTestPath( String path )
+    {
+        return getTestFile( path ).getAbsolutePath();
+    }
+
+    public static String getTestPath( String basedir, String path )
+    {
+        return getTestFile( basedir, path ).getAbsolutePath();
+    }
+
+    public static String getBasedir()
+    {
+        if ( basedir != null )
+        {
+            return basedir;
+        }
+
+        basedir = System.getProperty( "basedir" );
+
+        if ( basedir == null )
+        {
+            basedir = new File( "" ).getAbsolutePath();
+        }
+
+        return basedir;
+    }
+
+    public abstract String getBaseUrl();
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AbstractPlexusWebTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AbstractPlexusWebTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveAntProjectTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveAntProjectTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveAntProjectTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveAntProjectTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,42 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public class AddRemoveAntProjectTest
+    extends AbstractIntegrationWebTest
+{
+    public void testAddRemove()
+    {
+        addAntProject( "build", "ant", "Ant Test Project", "scm:svn:http://svn.apache.org/repos/asf/maven/continuum/trunk/continuum-test-projects/ant", "1.0" );
+
+        assertTextInTable( "projectSummaryTable", "New", 1, 0 );
+
+        assertTextInTable( "projectSummaryTable", "Ant Test Project", 1, 1 );
+
+        assertTextInTable( "projectSummaryTable", "1.0", 1, 2 );
+
+        clickLinkWithText( "Delete" );
+
+        assertTextPresent( "Are you sure you want to delete this project?" );
+
+        submit( "deleteEntry" );
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveAntProjectTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveAntProjectTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveMavenOneProjectTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveMavenOneProjectTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveMavenOneProjectTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveMavenOneProjectTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,42 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public class AddRemoveMavenOneProjectTest
+    extends AbstractIntegrationWebTest
+{
+    public void testAddRemove()
+    {
+        addMavenOneProject( "http://svn.apache.org/repos/asf/maven/continuum/trunk/continuum-test-projects/m1/project.xml" );
+
+        assertTextInTable( "projectSummaryTable", "New", 1, 0 );
+
+        assertTextInTable( "projectSummaryTable", "Maven 1 Project", 1, 1 );
+
+        assertTextInTable( "projectSummaryTable", "1.0", 1, 2 );
+
+        clickLinkWithText( "Delete" );
+
+        assertTextPresent( "Are you sure you want to delete this project?" );
+
+        submit( "deleteEntry" );
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveMavenOneProjectTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveMavenOneProjectTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveMavenTwoProjectTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveMavenTwoProjectTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveMavenTwoProjectTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveMavenTwoProjectTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,42 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public class AddRemoveMavenTwoProjectTest
+    extends AbstractIntegrationWebTest
+{
+    public void testAddRemove()
+    {
+        addMavenTwoProject( "http://svn.apache.org/repos/asf/maven/continuum/trunk/continuum-test-projects/m2/pom.xml" );
+
+        assertTextInTable( "projectSummaryTable", "New", 1, 0 );
+
+        assertTextInTable( "projectSummaryTable", "Maven 2 Test Project", 1, 1 );
+
+        assertTextInTable( "projectSummaryTable", "2.0-SNAPSHOT", 1, 2 );
+
+        clickLinkWithText( "Delete" );
+
+        assertTextPresent( "Are you sure you want to delete this project?" );
+
+        submit( "deleteEntry" );
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveMavenTwoProjectTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveMavenTwoProjectTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveShellProjectTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveShellProjectTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveShellProjectTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveShellProjectTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,42 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public class AddRemoveShellProjectTest
+    extends AbstractIntegrationWebTest
+{
+    public void testAddRemove()
+    {
+        addShellProject( "script.sh", "Shell Test Project", "scm:svn:http://svn.apache.org/repos/asf/maven/continuum/trunk/continuum-test-projects/shell", "1.0" );
+
+        assertTextInTable( "projectSummaryTable", "New", 1, 0 );
+
+        assertTextInTable( "projectSummaryTable", "Shell Test Project", 1, 1 );
+
+        assertTextInTable( "projectSummaryTable", "1.0", 1, 2 );
+
+        clickLinkWithText( "Delete" );
+
+        assertTextPresent( "Are you sure you want to delete this project?" );
+
+        submit( "deleteEntry" );
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveShellProjectTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/AddRemoveShellProjectTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/HomepageTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/HomepageTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/HomepageTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/HomepageTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,40 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public class HomepageTest
+    extends AbstractIntegrationWebTest
+{
+    public void testHomepage()
+    {
+        beginAt( "/" );
+
+        assertTablePresent( "projectSummaryTable" );
+
+        assertTextPresent( "Continuum Projects" );
+
+        assertTextPresent( "Status" );
+
+        assertTextPresent( "Name" );
+
+        assertTextPresent( "Version" );
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/HomepageTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/HomepageTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithExtendElementTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithExtendElementTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithExtendElementTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithExtendElementTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,32 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public class MavenOnePomWithExtendElementTest
+    extends AbstractIntegrationWebTest
+{
+    public void testAddBadPom()
+    {
+        addMavenOneProject( "http://svn.apache.org/repos/asf/maven/continuum/trunk/continuum-test-projects/m1-test-poms/project-with-extend-element.xml" );
+
+        assertTextPresent( "Cannot use a POM with an 'extend' element." );
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithExtendElementTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithExtendElementTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoBuildElementTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoBuildElementTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoBuildElementTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoBuildElementTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,32 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public class MavenOnePomWithNoBuildElementTest
+    extends AbstractIntegrationWebTest
+{
+    public void testAddBadPom()
+    {
+        addMavenOneProject( "http://svn.apache.org/repos/asf/maven/continuum/trunk/continuum-test-projects/m1-test-poms/project-with-no-build-element.xml" );
+
+        assertTextPresent( "Missing 'build' element in the POM." );
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoBuildElementTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoBuildElementTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoNagEmailElementTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoNagEmailElementTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoNagEmailElementTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoNagEmailElementTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,32 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public class MavenOnePomWithNoNagEmailElementTest
+    extends AbstractIntegrationWebTest
+{
+    public void testAddBadPom()
+    {
+        addMavenOneProject( "http://svn.apache.org/repos/asf/maven/continuum/trunk/continuum-test-projects/m1-test-poms/project-with-no-nag-email-element.xml" );
+
+        assertTextPresent( "Missing 'nagEmailAddress' element in the 'build' element in the POM." );
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoNagEmailElementTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoNagEmailElementTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoNameElementTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoNameElementTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoNameElementTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoNameElementTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,32 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public class MavenOnePomWithNoNameElementTest
+    extends AbstractIntegrationWebTest
+{
+    public void testAddBadPom()
+    {
+        addMavenOneProject( "http://svn.apache.org/repos/asf/maven/continuum/trunk/continuum-test-projects/m1-test-poms/project-with-no-name-element.xml" );
+
+        assertTextPresent( "Missing 'name' element in POM." );
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoNameElementTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoNameElementTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoRepositoryElementTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoRepositoryElementTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoRepositoryElementTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoRepositoryElementTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,32 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public class MavenOnePomWithNoRepositoryElementTest
+    extends AbstractIntegrationWebTest
+{
+    public void testAddBadPom()
+    {
+        addMavenOneProject( "http://svn.apache.org/repos/asf/maven/continuum/trunk/continuum-test-projects/m1-test-poms/project-with-no-repository-element.xml" );
+
+        assertTextPresent( "Missing 'repository' element in the POM." );
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoRepositoryElementTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenOnePomWithNoRepositoryElementTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoCimElementTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoCimElementTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoCimElementTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoCimElementTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,32 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public class MavenTwoPomWithNoCimElementTest
+    extends AbstractIntegrationWebTest
+{
+    public void testAddBadPom()
+    {
+        addMavenTwoProject( "http://svn.apache.org/repos/asf/maven/continuum/trunk/continuum-test-projects/m2-test-poms/pom-with-no-cim-element.xml" );
+
+        assertTextPresent( "Missing 'ciManagement' element in the POM." );
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoCimElementTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoCimElementTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoConnectionElementTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoConnectionElementTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoConnectionElementTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoConnectionElementTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,32 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public class MavenTwoPomWithNoConnectionElementTest
+    extends AbstractIntegrationWebTest
+{
+    public void testAddBadPom()
+    {
+        addMavenTwoProject( "http://svn.apache.org/repos/asf/maven/continuum/trunk/continuum-test-projects/m2-test-poms/pom-with-no-connection-element.xml" );
+
+        assertTextPresent( "Missing 'connection' element in the 'scm' element in the POM." );
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoConnectionElementTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoConnectionElementTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoNotifiersElementTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoNotifiersElementTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoNotifiersElementTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoNotifiersElementTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,32 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public class MavenTwoPomWithNoNotifiersElementTest
+    extends AbstractIntegrationWebTest
+{
+    public void testAddBadPom()
+    {
+        addMavenTwoProject( "http://svn.apache.org/repos/asf/maven/continuum/trunk/continuum-test-projects/m2-test-poms/pom-with-no-notifiers-element.xml" );
+
+        assertTextPresent( "Missing 'notifiers' element in the 'ciManagement' element in the POM." );
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoNotifiersElementTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoNotifiersElementTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"

Added: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoScmElementTest.java
URL: http://svn.apache.org/viewcvs/maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoScmElementTest.java?rev=227244&view=auto
==============================================================================
--- maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoScmElementTest.java (added)
+++ maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoScmElementTest.java Wed Aug  3 11:29:20 2005
@@ -0,0 +1,32 @@
+package org.apache.maven.continuum.web.it;
+
+/*
+ * Copyright 2004-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * @author <a href="mailto:evenisse@apache.org">Emmanuel Venisse</a>
+ * @version $Id$
+ */
+public class MavenTwoPomWithNoScmElementTest
+    extends AbstractIntegrationWebTest
+{
+    public void testAddBadPom()
+    {
+        addMavenTwoProject( "http://svn.apache.org/repos/asf/maven/continuum/trunk/continuum-test-projects/m2-test-poms/pom-with-no-scm-element.xml" );
+
+        assertTextPresent( "Missing 'scm' element in the POM." );
+    }
+}

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoScmElementTest.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: maven/continuum/trunk/continuum-web-test/src/test/java/org/apache/maven/continuum/web/it/MavenTwoPomWithNoScmElementTest.java
------------------------------------------------------------------------------
    svn:keywords = "Author Date Id Revision"