From 62a2e7a759e248b9d3d8d3889cd8ee519b234993 Mon Sep 17 00:00:00 2001 From: Stefan Bodewig Date: Thu, 4 Apr 2002 07:43:36 +0000 Subject: [PATCH] If package attribute has been set, would place it in front of the command - which is wrong. Reported by: Ovidiu Predescu Updated cvs example to point to something usable. git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@272193 13f79535-47bb-0310-9956-ffa450edef68 --- docs/manual/CoreTasks/cvs.html | 11 ++++++----- src/etc/testcases/taskdefs/abstractcvstask.xml | 12 ++++++++++++ .../tools/ant/taskdefs/AbstractCvsTask.java | 4 ++-- .../org/apache/tools/ant/BuildFileTest.java | 15 +++++++++++++-- .../tools/ant/taskdefs/AbstractCvsTaskTest.java | 11 +++++++++++ 5 files changed, 44 insertions(+), 9 deletions(-) diff --git a/docs/manual/CoreTasks/cvs.html b/docs/manual/CoreTasks/cvs.html index 159a2503a..24a5568b1 100644 --- a/docs/manual/CoreTasks/cvs.html +++ b/docs/manual/CoreTasks/cvs.html @@ -98,11 +98,11 @@ preferred over the checkout command, because of speed.

Examples

-
  <cvs cvsRoot=":pserver:anoncvs@jakarta.apache.org:/home/cvspublic"
-       package="jakarta-tools"
+
  <cvs cvsRoot=":pserver:anoncvs@cvs.apache.org:/home/cvspublic"
+       package="jakarta-ant"
        dest="${ws.dir}"
   />
-

checks out the package/module "jakarta-tools" from the CVS +

checks out the package/module "jakarta-ant" from the CVS repository pointed to by the cvsRoot attribute, and stores the files in "${ws.dir}".

  <cvs dest="${ws.dir}" command="update"/>

updates the package/module that has previously been checked out into @@ -115,8 +115,9 @@ repository pointed to by the cvsRoot attribute, and stores the files in "${ before the command, and any command options should appear after the command as in the diff example above. See the cvs manual for details, specifically the Guide to CVS commands

-

Copyright © 2001 Apache Software Foundation. All rights -Reserved.

+
+

Copyright © 2001-2002 Apache Software +Foundation. All rights Reserved.

diff --git a/src/etc/testcases/taskdefs/abstractcvstask.xml b/src/etc/testcases/taskdefs/abstractcvstask.xml index 6928d2b9d..197e07aee 100644 --- a/src/etc/testcases/taskdefs/abstractcvstask.xml +++ b/src/etc/testcases/taskdefs/abstractcvstask.xml @@ -22,4 +22,16 @@ + + + + + + + + + diff --git a/src/main/org/apache/tools/ant/taskdefs/AbstractCvsTask.java b/src/main/org/apache/tools/ant/taskdefs/AbstractCvsTask.java index 9550335a6..c9d240999 100644 --- a/src/main/org/apache/tools/ant/taskdefs/AbstractCvsTask.java +++ b/src/main/org/apache/tools/ant/taskdefs/AbstractCvsTask.java @@ -377,8 +377,8 @@ public abstract class AbstractCvsTask extends Task { String c = this.getCommand(); if( c != null ) { - this.addConfiguredCommandline( this.cmd, true ); this.cmd.createArgument().setLine(c); + this.addConfiguredCommandline( this.cmd, true ); } for( int i = 0; i < vecCommandlines.size(); i++ ) { @@ -551,7 +551,7 @@ public abstract class AbstractCvsTask extends Task { } c.setExecutable( "cvs" ); if (cvsPackage != null) { - c.createArgument(true).setLine(cvsPackage); + c.createArgument().setLine(cvsPackage); } if ( this.compression > 0 && this.compression < 10 ) { c.createArgument(true).setValue("-z"+this.compression); diff --git a/src/testcases/org/apache/tools/ant/BuildFileTest.java b/src/testcases/org/apache/tools/ant/BuildFileTest.java index 713445bb5..d0694a3f3 100644 --- a/src/testcases/org/apache/tools/ant/BuildFileTest.java +++ b/src/testcases/org/apache/tools/ant/BuildFileTest.java @@ -99,8 +99,8 @@ public abstract class BuildFileTest extends TestCase { } /** - * Assert that the given message has been logged with a priority - * >= INFO when running the given target. + * Assert that only the given message has been logged with a + * priority >= INFO when running the given target. */ protected void expectLog(String target, String log) { executeTarget(target); @@ -108,6 +108,17 @@ public abstract class BuildFileTest extends TestCase { assertEquals(log, realLog); } + /** + * Assert that the given message has been logged with a priority + * >= INFO when running the given target. + */ + protected void expectLogContaining(String target, String log) { + executeTarget(target); + String realLog = getLog(); + assertTrue("expecting log to contain \""+log+"\"", + realLog.indexOf(log) >= 0); + } + /** * Gets the log the BuildFileTest object. * only valid if configureProject() has diff --git a/src/testcases/org/apache/tools/ant/taskdefs/AbstractCvsTaskTest.java b/src/testcases/org/apache/tools/ant/taskdefs/AbstractCvsTaskTest.java index a581dd5b2..d7ce7b57a 100644 --- a/src/testcases/org/apache/tools/ant/taskdefs/AbstractCvsTaskTest.java +++ b/src/testcases/org/apache/tools/ant/taskdefs/AbstractCvsTaskTest.java @@ -53,10 +53,13 @@ */ package org.apache.tools.ant.taskdefs; +import java.io.File; + import org.apache.tools.ant.BuildFileTest; /** * @author stephan + * @author Stefan Bodewig * @version $Revision$ */ public class AbstractCvsTaskTest extends BuildFileTest { @@ -74,9 +77,17 @@ public class AbstractCvsTaskTest extends BuildFileTest { } public void tearDown() { + executeTarget("cleanup"); } public void testAbstractCvsTask() { executeTarget( "all" ); } + + public void testPackageAttribute() { + File f = getProject().resolveFile("tmpdir/jakarta-ant/build.xml"); + assertTrue("starting empty", !f.exists()); + expectLogContaining("package-attribute", "U jakarta-ant/build.xml"); + assertTrue("now it is there", f.exists()); + } }