ant-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bode...@apache.org
Subject cvs commit: jakarta-ant/src/testcases/org/apache/tools/ant/taskdefs ChecksumTest.java
Date Mon, 19 Nov 2001 15:18:46 GMT
bodewig     01/11/19 07:18:46

  Modified:    .        build.xml
               docs/manual/CoreTasks checksum.html
  Added:       src/etc/testcases asf-logo.gif
               src/etc/testcases/taskdefs checksum.xml
               src/etc/testcases/taskdefs/expected asf-logo.gif.md5
               src/testcases/org/apache/tools/ant/taskdefs
                        ChecksumTest.java
  Log:
  Add testcase for <checksum>, clarify its documentation when used as a
  condition and create checksums in Ant's distribution target.
  
  Revision  Changes    Path
  1.206     +8 -0      jakarta-ant/build.xml
  
  Index: build.xml
  ===================================================================
  RCS file: /home/cvs/jakarta-ant/build.xml,v
  retrieving revision 1.205
  retrieving revision 1.206
  diff -u -r1.205 -r1.206
  --- build.xml	2001/11/19 14:30:22	1.205
  +++ build.xml	2001/11/19 15:18:46	1.206
  @@ -547,6 +547,8 @@
       <zip file="${dist.base}/bin/${dist.name}-bin.zip" 
            basedir="${dist.name}/.." 
            includes="${dist.name}/**"/>
  +    <checksum file="${dist.base}/bin/${dist.name}-bin.zip"
  +              fileext=".md5" />
       <tar longfile="gnu"
            tarfile="${dist.base}/bin/${dist.name}-bin.tar">
         <tarfileset dir="${dist.name}/.." mode="755" username="ant" group="ant">
  @@ -565,6 +567,8 @@
             src="${dist.base}/bin/${dist.name}-bin.tar"/>
       <delete file="${dist.base}/bin/${dist.name}-bin.tar"/>
       <delete dir="${dist.name}" />
  +    <checksum file="${dist.base}/bin/${dist.name}-bin.tar.gz"
  +              fileext=".md5" />
   
       <antcall inheritAll="false" target="src-dist">
         <param name="src.dist.dir" value="${dist.name}" />
  @@ -572,6 +576,8 @@
       <zip file="${dist.base}/src/${dist.name}-src.zip" 
            basedir="${dist.name}/.." 
            includes="${dist.name}/**"/>
  +    <checksum file="${dist.base}/src/${dist.name}-src.zip"
  +              fileext=".md5" />
       <tar longfile="gnu"
            tarfile="${dist.base}/src/${dist.name}-src.tar" >
         <tarfileset dir="${dist.name}/.." mode="755" username="ant" group="ant">
  @@ -588,6 +594,8 @@
             src="${dist.base}/src/${dist.name}-src.tar"/>
       <delete file="${dist.base}/src/${dist.name}-src.tar"/>
       <delete dir="${dist.name}" /> 
  +    <checksum file="${dist.base}/src/${dist.name}-src.tar.gz"
  +              fileext=".md5" />
     </target>
   
     <target name="rpm_check">
  
  
  
  1.2       +3 -2      jakarta-ant/docs/manual/CoreTasks/checksum.html
  
  Index: checksum.html
  ===================================================================
  RCS file: /home/cvs/jakarta-ant/docs/manual/CoreTasks/checksum.html,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- checksum.html	2001/11/16 12:30:58	1.1
  +++ checksum.html	2001/11/19 15:18:46	1.2
  @@ -134,8 +134,9 @@
     &lt;/checksum&gt;
   &lt;/condition&gt;
   </pre>
  -Works like Example 4, but sets isChecksumEqual to either true or false.
  -This example demonstrates use with the Condition task.
  +Works like Example 4, but only sets isChecksumEqual to true, if the
  +checksum matches - it will never be set to false.  This example
  +demonstrates use with the Condition task.
   
   
   <h3>Note:</h3>
  
  
  
  1.1                  jakarta-ant/src/etc/testcases/asf-logo.gif
  
  	<<Binary file>>
  
  
  1.1                  jakarta-ant/src/etc/testcases/taskdefs/checksum.xml
  
  Index: checksum.xml
  ===================================================================
  <?xml version="1.0"?>
  <project default="cleanup" basedir=".">
  
    <target name="cleanup">
      <delete file="../asf-logo.gif.md5" />
    </target>
  
    <target name="createMd5">
      <checksum file="../asf-logo.gif" fileext=".md5" />
    </target>
  
    <target name="setProperty">
      <checksum file="../asf-logo.gif" property="logo.md5" />
    </target>
  
    <target name="verifyAsTask">
      <copy file="expected/asf-logo.gif.md5" todir=".." />
      <checksum file="../asf-logo.gif" fileext=".md5" 
                verifyproperty="logo.md5" />
  
      <copy file="checksum.xml" tofile="../asf-logo.gif.md5" 
            overwrite="true" />
      <checksum file="../asf-logo.gif" fileext=".md5" 
                verifyproperty="no.logo.md5" />
    </target>
  
    <target name="verifyAsCondition">
      <copy file="expected/asf-logo.gif.md5" todir=".." />
      <condition property="logo.md5">
        <checksum file="../asf-logo.gif" fileext=".md5" />
      </condition>
  
      <copy file="checksum.xml" tofile="../asf-logo.gif.md5" 
            overwrite="true" />
      <condition property="no.logo.md5">
        <checksum file="../asf-logo.gif" fileext=".md5" />
      </condition>
    </target>
  </project>
  
  
  1.1                  jakarta-ant/src/etc/testcases/taskdefs/expected/asf-logo.gif.md5
  
  Index: asf-logo.gif.md5
  ===================================================================
  0541d3df42520911f268abc730f3afe0
  
  
  1.1                  jakarta-ant/src/testcases/org/apache/tools/ant/taskdefs/ChecksumTest.java
  
  Index: ChecksumTest.java
  ===================================================================
  /*
   * The Apache Software License, Version 1.1
   *
   * Copyright (c) 2001 The Apache Software Foundation.  All rights
   * reserved.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions
   * are met:
   *
   * 1. Redistributions of source code must retain the above copyright
   *    notice, this list of conditions and the following disclaimer.
   *
   * 2. Redistributions in binary form must reproduce the above copyright
   *    notice, this list of conditions and the following disclaimer in
   *    the documentation and/or other materials provided with the
   *    distribution.
   *
   * 3. The end-user documentation included with the redistribution, if
   *    any, must include the following acknowlegement:
   *       "This product includes software developed by the
   *        Apache Software Foundation (http://www.apache.org/)."
   *    Alternately, this acknowlegement may appear in the software itself,
   *    if and wherever such third-party acknowlegements normally appear.
   *
   * 4. The names "The Jakarta Project", "Ant", and "Apache Software
   *    Foundation" must not be used to endorse or promote products derived
   *    from this software without prior written permission. For written
   *    permission, please contact apache@apache.org.
   *
   * 5. Products derived from this software may not be called "Apache"
   *    nor may "Apache" appear in their names without prior written
   *    permission of the Apache Group.
   *
   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
   * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   * SUCH DAMAGE.
   * ====================================================================
   *
   * This software consists of voluntary contributions made by many
   * individuals on behalf of the Apache Software Foundation.  For more
   * information on the Apache Software Foundation, please see
   * <http://www.apache.org/>.
   */
  
  package org.apache.tools.ant.taskdefs;
  
  import org.apache.tools.ant.BuildFileTest;
  import org.apache.tools.ant.util.FileUtils;
  
  import java.io.IOException;
  
  /**
   * @author <a href="mailto:stefan.bodewig@epost.de">Stefan Bodewig</a>
   * @version $Revision: 1.1 $
   */
  public class ChecksumTest extends BuildFileTest {
  
      public ChecksumTest(String name) {
          super(name);
      }
  
      public void setUp() { 
          configureProject("src/etc/testcases/taskdefs/checksum.xml");
      }
  
      public void tearDown() {
          executeTarget("cleanup");
      }
  
      public void testCreateMd5() throws IOException {
          FileUtils fileUtils = FileUtils.newFileUtils();
          executeTarget("createMd5");
          assertTrue(fileUtils.contentEquals(project.resolveFile("expected/asf-logo.gif.md5"),
                                             project.resolveFile("../asf-logo.gif.md5")));
      }
  
      public void testSetProperty() {
          executeTarget("setProperty");
          assertEquals("0541d3df42520911f268abc730f3afe0",
                       project.getProperty("logo.md5"));
          assertTrue(!project.resolveFile("../asf-logo.gif.MD5").exists());
      }
  
      public void testVerifyAsTask() {
          testVerify("verifyAsTask");
          assertNotNull(project.getProperty("no.logo.md5"));
          assertEquals("false", project.getProperty("no.logo.md5"));
      }
  
      public void testVerifyAsCondition() {
          testVerify("verifyAsCondition");
          assertNull(project.getProperty("no.logo.md5"));
      }
  
      private void testVerify(String target) {
          assertNull(project.getProperty("logo.md5"));
          assertNull(project.getProperty("no.logo.md5"));
          executeTarget(target);
          assertNotNull(project.getProperty("logo.md5"));
          assertEquals("true", project.getProperty("logo.md5"));
      }
  
  }
  
  
  

--
To unsubscribe, e-mail:   <mailto:ant-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:ant-dev-help@jakarta.apache.org>


Mime
View raw message