Author: rdonkin
Date: Sat Nov 29 09:12:55 2008
New Revision: 721691

URL: http://svn.apache.org/viewvc?rev=721691&view=rev
Log:
Outline ant task

Added:
    james/protocol-tester/trunk/antlib/src/main/java/org/
    james/protocol-tester/trunk/antlib/src/main/java/org/apache/
    james/protocol-tester/trunk/antlib/src/main/java/org/apache/james/
    james/protocol-tester/trunk/antlib/src/main/java/org/apache/james/mpt/
    james/protocol-tester/trunk/antlib/src/main/java/org/apache/james/mpt/ant/
    
james/protocol-tester/trunk/antlib/src/main/java/org/apache/james/mpt/ant/MailProtocolTestTask.java
   (with props)
    james/protocol-tester/trunk/antlib/src/main/resources/
    james/protocol-tester/trunk/antlib/src/main/resources/org/
    james/protocol-tester/trunk/antlib/src/main/resources/org/apache/
    james/protocol-tester/trunk/antlib/src/main/resources/org/apache/james/
    james/protocol-tester/trunk/antlib/src/main/resources/org/apache/james/mpt/
    
james/protocol-tester/trunk/antlib/src/main/resources/org/apache/james/mpt/ant/
    
james/protocol-tester/trunk/antlib/src/main/resources/org/apache/james/mpt/ant/antlib.xml
   (with props)
    james/protocol-tester/trunk/antlib/src/site/
    james/protocol-tester/trunk/antlib/src/site/resources/
    james/protocol-tester/trunk/antlib/src/site/resources/images/
    james/protocol-tester/trunk/antlib/src/site/site.xml   (contents, props 
changed)
      - copied, changed from r721659, 
james/protocol-tester/trunk/main/src/site/site.xml
    james/protocol-tester/trunk/antlib/src/site/xdoc/
    james/protocol-tester/trunk/antlib/src/site/xdoc/index.xml   (contents, 
props changed)
      - copied, changed from r721673, 
james/protocol-tester/trunk/main/src/site/xdoc/index.xml
    james/protocol-tester/trunk/antlib/src/test/resources/
    james/protocol-tester/trunk/antlib/src/test/resources/build.xml
Modified:
    james/protocol-tester/trunk/antlib/pom.xml

Modified: james/protocol-tester/trunk/antlib/pom.xml
URL: 
http://svn.apache.org/viewvc/james/protocol-tester/trunk/antlib/pom.xml?rev=721691&r1=721690&r2=721691&view=diff
==============================================================================
--- james/protocol-tester/trunk/antlib/pom.xml (original)
+++ james/protocol-tester/trunk/antlib/pom.xml Sat Nov 29 09:12:55 2008
@@ -57,5 +57,45 @@
       <artifactId>jmock</artifactId>
       <scope>test</scope>
     </dependency>   
+    <dependency>
+      <groupId>org.apache.ant</groupId>
+      <artifactId>ant-antunit</artifactId>
+      <scope>test</scope>
+    </dependency>
   </dependencies>
+
+  <build>
+    <plugins>
+      <plugin>
+        <artifactId>maven-antrun-plugin</artifactId>
+        <executions>
+          <execution>
+            <phase>test</phase>
+            <goals>
+              <goal>run</goal>
+            </goals>
+            <configuration>
+              <tasks>
+                <ant antfile="src/test/resources/build.xml" inheritAll="false" 
inheritRefs="false">
+                  <property name="jar.name" 
location="${project.build.outputDirectory}"/>
+                  <property name="base.dir" location="${basedir}"/>
+                  <property name="test.skipped" value="${maven.test.skip}"/>
+                  <property name="test.classpath" refid="maven.test.classpath" 
/>
+                </ant>
+              </tasks>
+            </configuration>
+          </execution>
+        </executions>
+        <dependencies>
+          <!-- AntUnit require Ant 1.7+ -->
+          <dependency>
+            <groupId>org.apache.ant</groupId>
+            <artifactId>ant</artifactId>
+            <version>1.7.1</version>
+          </dependency>
+        </dependencies>
+      </plugin>
+    </plugins>
+  </build>
+  
 </project>

Added: 
james/protocol-tester/trunk/antlib/src/main/java/org/apache/james/mpt/ant/MailProtocolTestTask.java
URL: 
http://svn.apache.org/viewvc/james/protocol-tester/trunk/antlib/src/main/java/org/apache/james/mpt/ant/MailProtocolTestTask.java?rev=721691&view=auto
==============================================================================
--- 
james/protocol-tester/trunk/antlib/src/main/java/org/apache/james/mpt/ant/MailProtocolTestTask.java
 (added)
+++ 
james/protocol-tester/trunk/antlib/src/main/java/org/apache/james/mpt/ant/MailProtocolTestTask.java
 Sat Nov 29 09:12:55 2008
@@ -0,0 +1,251 @@
+/****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one   *
+ * or more contributor license agreements.  See the NOTICE file *
+ * distributed with this work for additional information        *
+ * regarding copyright ownership.  The ASF licenses this file   *
+ * to you 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.                                           *
+ ****************************************************************/
+
+package org.apache.james.mpt.ant;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+
+import org.apache.tools.ant.BuildException;
+import org.apache.tools.ant.Task;
+import org.apache.tools.ant.types.Resource;
+import org.apache.tools.ant.types.ResourceCollection;
+import org.apache.tools.ant.types.resources.Union;
+
+/**
+ * Task executes MPT scripts against a server
+ * running on a given port and host.
+ */
+public class MailProtocolTestTask extends Task {
+
+    private File script;
+    private Union scripts;
+    private int port = 0;
+    private String host = "127.0.0.1";
+    private boolean skip = false;
+    private Collection users = new ArrayList();
+    
+    /**
+     * Should the execution be skipped?
+     * @return true if exection should be skipped, 
+     * otherwise false
+     */
+    public boolean isSkip() {
+        return skip;
+    }
+
+    /**
+     * Sets execution skipping.
+     * @param skip true to skip excution
+     */
+    public void setSkip(boolean skip) {
+        this.skip = skip;
+    }
+
+    /**
+     * Gets the host (either name or number) against which this
+     * test will run.
+     * @return host, not null
+     */
+    public String getHost() {
+        return host;
+    }
+
+    /**
+     * Sets the host (either name or number) against which this
+     * test will run.
+     * @param host not null
+     */
+    public void setHost(String host) {
+        this.host = host;
+    }
+
+    /**
+     * Gets the port against which this test will run.
+     * @return port number
+     */
+    public int getPort() {
+        return port;
+    }
+
+    /**
+     * Sets the port aginst which this test will run.
+     * @param port port number
+     */
+    public void setPort(int port) {
+        this.port = port;
+    }
+
+    /**
+     * Gets the script to execute.
+     * @return file containing test script
+     */
+    public File getScript() {
+        return script;
+    }
+
+    /**
+     * Sets the script to execute.
+     * @param script not null
+     */
+    public void setScript(File script) {
+        this.script = script;
+    }
+
+    //@Override
+    public void execute() throws BuildException {
+        if (port <= 0) {
+            throw new BuildException("Port must be set to a positive integer");
+        }
+        
+        if (scripts == null && script == null) {
+            throw new BuildException("Scripts must be specified as an embedded 
resource collection"); 
+        }
+        
+        if (scripts != null && script != null) {
+            throw new BuildException("Scripts can be specified either by the 
script attribute or as resource collections but not both."); 
+        }
+        
+        for(final Iterator it=users.iterator();it.hasNext();) {
+            final AddUser user = (AddUser) it.next();
+            user.validate();
+        }
+        
+        if(skip) {
+            log("Skipping excution");
+        } else {
+            doExecute();
+        }
+    }
+
+    public void add(ResourceCollection resources) {
+        if (scripts == null) {
+            scripts = new Union();
+        }
+        scripts.add(resources);
+    }
+    
+    private void doExecute() {
+        super.execute();
+    }
+    
+    public AddUser createAddUser() {
+        final AddUser result = new AddUser();
+        users.add(result);
+        return result;
+    }
+
+    /**
+     * 
+     */
+    public static class AddUser {
+        private int port;
+        private String user;
+        private String passwd;
+        private File script;
+
+        /**
+         * Gets the port against which the user addition
+         * script should be executed.
+         * @return port number
+         */
+        public int getPort() {
+            return port;
+        }
+
+        /**
+         * Sets the port against which the user addition
+         * script should be executed.
+         * @param port port number
+         */
+        public void setPort(int port) {
+            this.port = port;
+        }
+
+        /**
+         * Gets the password for the user.
+         * @return password not null
+         */
+        public String getPasswd() {
+            return passwd;
+        }
+
+        /**
+         * Sets the password for the user.
+         * This will be passed in the user creation script.
+         * @param passwd not null
+         */
+        public void setPasswd(String passwd) {
+            this.passwd = passwd;
+        }
+
+        /**
+         * Gets the name of the user to be created.
+         * @return user name, not null
+         */
+        public String getUser() {
+            return user;
+        }
+
+        /**
+         * Sets the name of the user to be created.
+         * @param user not null
+         */
+        public void setUser(String user) {
+            this.user = user;
+        }
+
+        /**
+         * Gets the file containing the user creation script.
+         * @return not null
+         */
+        public File getScript() {
+            return script;
+        }
+
+        /**
+         * Sets the file containing the user creation script.
+         * @param script not null
+         */
+        public void setScript(File script) {
+            this.script = script;
+        }
+        
+        /**
+         * Validates mandatory fields have been filled.
+         */
+        void validate() throws BuildException {
+            if (script == null) {
+                throw new BuildException("'script' attribute must be set on 
AddUser to the file containing the user creations script.");
+            }
+            if (user == null) {
+                throw new BuildException("'user' attribute must be set on 
AddUser to the name of the user to be created.");
+            }
+            if (passwd == null) {
+                throw new BuildException("'passwd' attribute must be set on 
AddUser to the password to be set for the user created");
+            }
+            if (port <= 0) {
+                throw new BuildException("'port' attribute must be set on 
AddUser to the port against which the script should run.");
+            }
+            
+        }
+    }
+}

Propchange: 
james/protocol-tester/trunk/antlib/src/main/java/org/apache/james/mpt/ant/MailProtocolTestTask.java
------------------------------------------------------------------------------
    svn:mergeinfo = 

Added: 
james/protocol-tester/trunk/antlib/src/main/resources/org/apache/james/mpt/ant/antlib.xml
URL: 
http://svn.apache.org/viewvc/james/protocol-tester/trunk/antlib/src/main/resources/org/apache/james/mpt/ant/antlib.xml?rev=721691&view=auto
==============================================================================
--- 
james/protocol-tester/trunk/antlib/src/main/resources/org/apache/james/mpt/ant/antlib.xml
 (added)
+++ 
james/protocol-tester/trunk/antlib/src/main/resources/org/apache/james/mpt/ant/antlib.xml
 Sat Nov 29 09:12:55 2008
@@ -0,0 +1,26 @@
+<?xml version='1.0'?>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one   *
+ or more contributor license agreements.  See the NOTICE file *
+ distributed with this work for additional information        *
+ regarding copyright ownership.  The ASF licenses this file   *
+ to you 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.                                           *
+
+-->
+
+<antlib>
+  <typedef name="mpt"
+    classname="org.apache.james.mpt.ant.MailProtocolTestTask"/>
+</antlib>
\ No newline at end of file

Propchange: 
james/protocol-tester/trunk/antlib/src/main/resources/org/apache/james/mpt/ant/antlib.xml
------------------------------------------------------------------------------
    svn:mergeinfo = 

Copied: james/protocol-tester/trunk/antlib/src/site/site.xml (from r721659, 
james/protocol-tester/trunk/main/src/site/site.xml)
URL: 
http://svn.apache.org/viewvc/james/protocol-tester/trunk/antlib/src/site/site.xml?p2=james/protocol-tester/trunk/antlib/src/site/site.xml&p1=james/protocol-tester/trunk/main/src/site/site.xml&r1=721659&r2=721691&rev=721691&view=diff
==============================================================================
--- james/protocol-tester/trunk/main/src/site/site.xml (original)
+++ james/protocol-tester/trunk/antlib/src/site/site.xml Sat Nov 29 09:12:55 
2008
@@ -32,7 +32,7 @@
 
   <body>
 
-    <menu name="Mail Protocol Tester">
+    <menu name="MPT AntLib">
       <item name="Overview" href="index.html"/>
       <item 
        name="DOAP" 

Propchange: james/protocol-tester/trunk/antlib/src/site/site.xml
------------------------------------------------------------------------------
    svn:mergeinfo = 

Copied: james/protocol-tester/trunk/antlib/src/site/xdoc/index.xml (from 
r721673, james/protocol-tester/trunk/main/src/site/xdoc/index.xml)
URL: 
http://svn.apache.org/viewvc/james/protocol-tester/trunk/antlib/src/site/xdoc/index.xml?p2=james/protocol-tester/trunk/antlib/src/site/xdoc/index.xml&p1=james/protocol-tester/trunk/main/src/site/xdoc/index.xml&r1=721673&r2=721691&rev=721691&view=diff
==============================================================================
--- james/protocol-tester/trunk/main/src/site/xdoc/index.xml (original)
+++ james/protocol-tester/trunk/antlib/src/site/xdoc/index.xml Sat Nov 29 
09:12:55 2008
@@ -22,7 +22,7 @@
 
  <properties>
   <title>Overview</title>
-  <author email="[email protected]">Mail Protocol Tester</author>
+  <author email="[email protected]">Mail Protocol Tester 
AntLib</author>
  </properties>
 
 <body>
@@ -31,53 +31,103 @@
 Apache James Mail Protocol Tester (MTP) is a library providing a framework for 
the 
 scritable functional testing of ASCII based line protocols.</p>
 <p>
-This contains a lightweight scripting framework suitable for the
-functional testing of the ASCII line based protocols common in mail.
-A script contains a list of client requests and templated server
-responses. The framework runs the client lines against a host system
-and then compares the server lines received in response against the
-template responses. 
+An antlib defines a suite of extensions for <a 
href='http://ant.apache.org'>Apache Ant</a>.
+This antlib defines a suite of functional testing tools particularly suitable 
for 
+use with ASCII based line protocols (as are common in mail).
 </p>
 </section>
-<section name='Using MPT'>
-<subsection name='Host System'>
+<section name='Usage'>
 <p>
-MPT is a lightweight, flexible framework which is capable of being used
-in a variety of ways. <code>HostSystem</code> is pivotal, defining the 
-interface between the framework and the server system under test.
+See: 
 </p>
 <ul>
-<li>
-The <code>ExternalHostSystem</code> implementation connects to a port on a 
server. 
-This is typically used to test a complete running server (including the 
sockets).
-<a href='../antlib'>MPT AntLib</a> provides an
-<a href='http://ant.apache.org' rel='tag'>Ant</a> task suitable for this use 
case.
-</li>
-<li>
-When performing in-JVM testing (without a live server socket) a custom 
implementation
-must be created connecting the framework to the components under test. This 
use case
-is typically developed as a <a href='http://www.junit.org'>JUnit</a> test case.
-</li>
+<li>Apache Ant <a 
href='http://ant.apache.org/manual/CoreTypes/antlib.html'>manual</a></li>
+<li><a 
href='http://www.onjava.com/pub/a/onjava/2006/08/09/ant-1-7-using-antlibs.html'>Using
 AntLibs</a> (article)</li>
+<li><a 
href='http://www.oracle.com/technology/pub/articles/bodewig_taskwriters.html'>Ant
 1.6 for Task Writers</a> (article)</li>
 </ul>
-</subsection>
-<subsection name='With JUnit'>
+</section>
+<section name='Tasks'>
+<subsection name='mpt'>
 <p>
-In-JVM JUnit testing is a typical use case. The framework provides
-abstract superclasses which setup up appropriate fixtures. 
+Executes <a href='../main'>MPT</a> scripts against a running independent 
server.
+If these scripts require users then these can be added by script by using the 
<code>AddUser</code>
+element.
 </p>
+<subsection name='Parameters'>
+<table> 
+<tr>
+       <td><strong>Attribute</strong></td> 
<td><strong>Description</strong></td> <td><strong>Required</strong></td>
+</tr> 
+<tr>
+       <td>port</td> 
+       <td>Port number that the scripts should be executed against</td> 
+       <td>Yes</td>
+</tr>
+<tr>
+       <td>host</td> 
+       <td>Host name or IP address of the server against which the scripts 
should be executed</td> 
+       <td>No (Defaults to <code>127.0.0.1</code>)</td>
+</tr> 
+<tr>
+       <td>script</td> 
+       <td>File containing a script to be executed. To execute multiple 
scripts, 
+       use a <a href='#Any Resource Collection'>Resource Collection</a></td> 
+       <td>When no resource collections elements exist</td>
+</tr> 
+<tr>
+       <td>skip</td> 
+       <td>Skips execution of scripts. For simple conditional execution</td> 
+       <td>No</td>
+</tr> 
+</table>
 </subsection>
-</section>
-<section name="Script Features">
-<subsection name='Regex Matching Of Server Responses'>
+</subsection>
+
+<subsection name='Nested Elements'>
+<subsection name='Any Resource Collection'>
 <p>
-The server responses in the script support regex matching.
+<a 
href='http://ant.apache.org/manual/CoreTypes/resources.html#collection'>Resource
 Collection</a>s
+are used to specify a group of scripts to execute. When resource collections 
are set, attribute <code>
+</code>
 </p>
 </subsection>
-<subsection name='Variable Substitution'>
+<subsection name='AddUser'>
 <p>
-Variables of form <code>${<em>variable-name</em>}</code> may be substituted by 
values
-passed into the script builder before interpretation.
+Allows scripted addition of any users required by the tests. 
+The port can vary but the host is inherited.
 </p>
+<table> 
+<tr>
+       <td><strong>Attribute</strong></td> 
<td><strong>Description</strong></td> <td><strong>Required</strong></td>
+</tr> 
+<tr>
+       <td>port</td> 
+       <td>Port number that the user addition script should be executed 
against</td> 
+       <td>Yes</td>
+</tr>
+
+<tr>
+       <td>passwd</td> 
+       <td>Password to be set for user created. Will be passed to the 
script.</td> 
+       <td>Yes</td>
+</tr> 
+
+<tr>
+       <td>user</td> 
+       <td>Name of the user to be created. Will be passed to the script.</td> 
+       <td>Yes</td>
+</tr> 
+
+<tr>
+       <td>script</td> 
+       <td>File containing the user creation script</td> 
+       <td>Yes</td>
+</tr> 
+</table>
+</subsection>
+<subsection name='Example'>
+<p>TODO:</p>
+</subsection>
 </subsection>
 </section>
 </body>

Propchange: james/protocol-tester/trunk/antlib/src/site/xdoc/index.xml
------------------------------------------------------------------------------
    svn:mergeinfo = 

Added: james/protocol-tester/trunk/antlib/src/test/resources/build.xml
URL: 
http://svn.apache.org/viewvc/james/protocol-tester/trunk/antlib/src/test/resources/build.xml?rev=721691&view=auto
==============================================================================
--- james/protocol-tester/trunk/antlib/src/test/resources/build.xml (added)
+++ james/protocol-tester/trunk/antlib/src/test/resources/build.xml Sat Nov 29 
09:12:55 2008
@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  Licensed to the Apache Software Foundation (ASF) under one
+  or more contributor license agreements.  See the NOTICE file
+  distributed with this work for additional information
+  regarding copyright ownership.  The ASF licenses this file
+  to you 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.    
+-->
+<project 
+       name="tests" default="all"
+         xmlns:au="antlib:org.apache.ant.antunit"
+         xmlns:mpt="antlib:org.apache.james.mpt.ant">
+       
+    <taskdef uri="antlib:org.apache.ant.antunit"
+             resource="org/apache/ant/antunit/antlib.xml"
+             classpath="${test.classpath}" />
+       
+    <taskdef uri="antlib:org.apache.james.mpt.ant"
+             resource="org/apache/james/mpt/ant/antlib.xml"
+             classpath="${jar.name}" />
+       
+       <target name='testMustNotAllowScriptsAndScript'>
+               <au:expectfailure>
+                 <mpt:mpt skip='true' port='10000' script='pom.xml'>
+                         <fileset dir='${basedir}'/>
+                 </mpt:mpt>                            
+           </au:expectfailure>
+       </target>
+       
+       <target name='testMustSetScriptsOrScript'>
+               <au:expectfailure>
+                 <mpt:mpt skip='true' port='10000'/>
+           </au:expectfailure>
+               <mpt:mpt port='10000' skip='true'>
+                 <fileset dir='${basedir}'/>
+               </mpt:mpt>      
+               <mpt:mpt port='10000' skip='true' script='pom.xml'/>
+       </target>
+       
+       <target name='testMustSetPort'>
+               <au:expectfailure>
+                 <mpt:mpt skip='true'>
+                       <fileset dir='${basedir}'/>
+                 </mpt:mpt>
+           </au:expectfailure>
+               <mpt:mpt port='10000' skip='true'>
+                       <fileset dir='${basedir}'/>
+               </mpt:mpt>      
+       </target>
+       
+       <target name='testMaySetHost'>
+               <mpt:mpt port='10000' skip='true' host='example.org'>
+                       <fileset dir='${basedir}'/>
+               </mpt:mpt>
+               <mpt:mpt port='10000' skip='true' host='10.0.0.66'>
+                       <fileset dir='${basedir}'/>
+               </mpt:mpt>
+       </target>
+       
+       <target name='testShouldAllowAddUserToBeSet'>
+               <mpt:mpt port='10000' skip='true' host='example.org'>
+                       <fileset dir='${basedir}'/>
+                       <addUser port='10001' user='user' passwd='passwd' 
script='pom.xml'/>
+               </mpt:mpt>
+       </target>
+       
+       
+       <target name='testAddUserMustSetPortNamePasswordScript'>
+               <au:expectfailure>
+                       <mpt:mpt port='10000' skip='true' host='example.org'>
+                               <fileset dir='${basedir}'/>
+                               <addUser user='user' passwd='passwd' 
script='pom.xml'/>
+                       </mpt:mpt>
+               </au:expectfailure>
+               <au:expectfailure>
+                       <mpt:mpt port='10000' skip='true' host='example.org'>
+                               <fileset dir='${basedir}'/>
+                               <addUser port='10001' passwd='passwd' 
script='pom.xml'/>
+                       </mpt:mpt>
+               </au:expectfailure>
+               <au:expectfailure>
+                       <mpt:mpt port='10000' skip='true' host='example.org'>
+                               <fileset dir='${basedir}'/>
+                               <addUser port='10001' user='user' 
script='pom.xml'/>
+                       </mpt:mpt>
+               </au:expectfailure>
+               <au:expectfailure>
+                       <mpt:mpt port='10000' skip='true' host='example.org'>
+                               <fileset dir='${basedir}'/>
+                               <addUser port='10001' user='user' 
passwd='passwd'/>
+                       </mpt:mpt>
+               </au:expectfailure>
+       </target>
+
+       <target name='testMptAttributes' depends='testMustSetPort, 
testMaySetHost,testMustSetScriptsOrScript, testMustNotAllowScriptsAndScript'/>
+       <target name='testAddUser' depends='testShouldAllowAddUserToBeSet, 
testAddUserMustSetPortNamePasswordScript'/>
+       
+       <target name='all' depends='testMptAttributes, testAddUser'/>
+</project>



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to