buildframework/helium/sf/java/scm/tests/antunit/abstract_unittest_scmtask.ant.xml
changeset 587 85df38eb4012
child 628 7c4a911dc066
equal deleted inserted replaced
217:0f5e3a7fb6af 587:85df38eb4012
       
     1 <?xml version="1.0"?>
       
     2 <!-- 
       
     3 ============================================================================ 
       
     4 Name        : abstract_unittest_scmtask.ant.xml 
       
     5 Part of     : Helium AntLib
       
     6 
       
     7 Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
       
     8 All rights reserved.
       
     9 This component and the accompanying materials are made available
       
    10 under the terms of the License "Eclipse Public License v1.0"
       
    11 which accompanies this distribution, and is available
       
    12 at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
    13 
       
    14 Initial Contributors:
       
    15 Nokia Corporation - initial contribution.
       
    16 
       
    17 Contributors:
       
    18 
       
    19 Description:
       
    20 
       
    21 ============================================================================
       
    22 -->
       
    23 <project name="abstract-unittest-scmtask" xmlns:hlm="http://www.nokia.com/helium" xmlns:au="antlib:org.apache.ant.antunit">
       
    24     <description>Helium Antlib SCM abtract unittests.</description>
       
    25     
       
    26     <property name="repo.type" value="hg" />
       
    27     <property name="temp.dir" location="${ant.file.abstract-unittest-scmtask}/../temp" />
       
    28     <property name="repo.dir" location="${temp.dir}/repo/${repo.type}" />
       
    29 
       
    30     <!-- Defining the features -->
       
    31     <taskdef name="scm" classname="com.nokia.helium.scm.ant.taskdefs.ScmTask" uri="http://www.nokia.com/helium" />
       
    32     <typedef name="latestTag" classname="com.nokia.helium.scm.ant.types.LatestTag" uri="http://www.nokia.com/helium" />
       
    33     <typedef name="tagSet" classname="com.nokia.helium.scm.ant.types.TagSet" uri="http://www.nokia.com/helium" />
       
    34 
       
    35 
       
    36     <target name="setUp">
       
    37         <delete dir="${temp.dir}" failonerror="false" />
       
    38         <mkdir dir="${temp.dir}" />
       
    39         <mkdir dir="${repo.dir}" />
       
    40         <unzip src="../data/${repo.type}_test1.zip" dest="${repo.dir}" />
       
    41         <unzip src="../data/${repo.type}_test2.zip" dest="${repo.dir}" />
       
    42         <unzip src="../data/${repo.type}_test3.zip" dest="${repo.dir}" />
       
    43     </target>
       
    44 
       
    45     <target name="tearDown">
       
    46         <delete dir="${temp.dir}" />
       
    47     </target>
       
    48 
       
    49     <!--
       
    50      **************************************************************
       
    51      ** STATUS
       
    52      **************************************************************
       
    53     -->
       
    54     <target name="test-status">
       
    55         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
    56             <hlm:status>
       
    57                 <fileset dir="${repo.dir}/test1">
       
    58                     <include name="**" />
       
    59                     <exclude name="**/.${repo.type}/**" />
       
    60                 </fileset>
       
    61             </hlm:status>
       
    62         </hlm:scm>
       
    63         <echo file="${repo.dir}/test1/not_in_repo.txt">Not in repo</echo>
       
    64         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
    65             <hlm:status>
       
    66                 <fileset dir="${repo.dir}/test1">
       
    67                     <include name="**" />
       
    68                     <exclude name="**/.${repo.type}/**" />
       
    69                 </fileset>
       
    70             </hlm:status>
       
    71         </hlm:scm>
       
    72         <au:assertLogContains text="[not_in_repo.txt:unknown]" />
       
    73     </target>
       
    74 
       
    75     <!--
       
    76      **************************************************************
       
    77      ** DIFF
       
    78      **************************************************************
       
    79     -->
       
    80     <target name="test-diff">
       
    81         <echo file="${repo.dir}/test1/not_in_repo.txt">Not in repo</echo>
       
    82         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
    83             <hlm:add>
       
    84                 <fileset dir="${repo.dir}/test1">
       
    85                     <include name="**" />
       
    86                     <exclude name="**/.${repo.type}/**" />
       
    87                 </fileset>
       
    88             </hlm:add>
       
    89         </hlm:scm>
       
    90         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
    91             <hlm:diff>
       
    92                 <fileset dir="${repo.dir}/test1">
       
    93                     <include name="**" />
       
    94                     <exclude name="**/.${repo.type}/**" />
       
    95                 </fileset>
       
    96             </hlm:diff>
       
    97         </hlm:scm>
       
    98         <au:assertLogContains text="+Not in repo" />
       
    99     </target>
       
   100 
       
   101 
       
   102     <!--
       
   103      **************************************************************
       
   104      ** ADD
       
   105      **************************************************************
       
   106     -->
       
   107     <target name="test-add">
       
   108         <echo file="${repo.dir}/test1/not_in_repo.txt">Not in repo</echo>
       
   109         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   110             <hlm:add>
       
   111                 <fileset dir="${repo.dir}/test1">
       
   112                     <include name="**" />
       
   113                     <exclude name="**/.${repo.type}/**" />
       
   114                 </fileset>
       
   115             </hlm:add>
       
   116         </hlm:scm>
       
   117         <au:assertLogContains text="[not_in_repo.txt:added]" />
       
   118     </target>
       
   119 
       
   120     <!--
       
   121      **************************************************************
       
   122      ** CHECKOUT
       
   123      **************************************************************
       
   124     -->
       
   125     <target name="test-checkout-tip">
       
   126         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test3">
       
   127             <hlm:checkout baseDir="${repo.dir}/cloned" />
       
   128         </hlm:scm>
       
   129         <au:assertLogContains text="hg clone -r tip" />
       
   130         <au:assertFileExists file="${repo.dir}/cloned/revision0.txt" />
       
   131         <au:assertFileExists file="${repo.dir}/cloned/revision1.txt" />
       
   132     </target>
       
   133 
       
   134     <target name="test-checkout-revision">
       
   135         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test3">
       
   136             <hlm:checkout baseDir="${repo.dir}/cloned">
       
   137                 <revision name="1" />
       
   138             </hlm:checkout>
       
   139         </hlm:scm>
       
   140         <au:assertLogContains text="hg clone -r 1" />
       
   141         <au:assertFileExists file="${repo.dir}/cloned/revision0.txt" />
       
   142         <au:assertFileDoesntExist file="${repo.dir}/cloned/revision2.txt" />
       
   143     </target>
       
   144 
       
   145     <target name="test-checkout-revision-error">
       
   146         <au:expectfailure>
       
   147             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test3">
       
   148                 <hlm:checkout baseDir="${repo.dir}/cloned" revision="3" />
       
   149             </hlm:scm>
       
   150         </au:expectfailure>
       
   151     </target>
       
   152 
       
   153     <!--
       
   154      **************************************************************
       
   155      ** CHECKIN
       
   156      **************************************************************
       
   157     -->
       
   158     <target name="test-checkin-message-missing" depends="test-add">
       
   159         <au:expectfailure>
       
   160             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   161                 <hlm:checkin>
       
   162                     <fileset dir="${repo.dir}/test1">
       
   163                         <include name="not_in_repo.txt" />
       
   164                         <exclude name="**/.${repo.type}/**" />
       
   165                     </fileset>
       
   166                 </hlm:checkin>
       
   167             </hlm:scm>
       
   168         </au:expectfailure>
       
   169     </target>
       
   170 
       
   171     <target name="test-checkin" depends="test-add">
       
   172         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   173             <hlm:checkin message="Adding not_in_repo.txt...">
       
   174                 <fileset dir="${repo.dir}/test1">
       
   175                     <include name="not_in_repo.txt" />
       
   176                     <exclude name="**/.${repo.type}/**" />
       
   177                 </fileset>
       
   178             </hlm:checkin>
       
   179         </hlm:scm>
       
   180     </target>
       
   181 
       
   182 
       
   183     <!--
       
   184      **************************************************************
       
   185      ** TAGGING
       
   186      **************************************************************
       
   187     -->
       
   188 
       
   189     <target name="test-tag-name-missing" depends="test-checkin">
       
   190         <au:expectfailure>
       
   191             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   192                 <hlm:tag baseDir="${repo.dir}/test1" />
       
   193             </hlm:scm>
       
   194         </au:expectfailure>
       
   195     </target>
       
   196 
       
   197     <target name="test-tag-basedir-missing" depends="test-checkin">
       
   198         <au:expectfailure>
       
   199             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   200                 <hlm:tag name="1.0.0" />
       
   201             </hlm:scm>
       
   202         </au:expectfailure>
       
   203     </target>
       
   204 
       
   205     <target name="test-tag" depends="setUp">
       
   206         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   207             <hlm:tag baseDir="${repo.dir}/test1" name="0.0.1" />
       
   208         </hlm:scm>
       
   209         <au:assertLogContains text="Tag '0.0.1' has been created successfully" />
       
   210     </target>
       
   211 
       
   212     <target name="test-tag-local" depends="setUp">
       
   213         <echo file="${repo.dir}/test1/newfile.txt">newly added</echo>
       
   214         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   215             <hlm:add>
       
   216                 <fileset dir="${repo.dir}/test1">
       
   217                     <include name="*.txt" />
       
   218                 </fileset>
       
   219             </hlm:add>
       
   220             <hlm:checkin message="Adding files .....">
       
   221                 <fileset dir="${repo.dir}/test1">
       
   222                     <include name="*.txt" />
       
   223                 </fileset>
       
   224             </hlm:checkin>
       
   225             <hlm:tag baseDir="${repo.dir}/test1" name="0.0.2" level="local" />
       
   226         </hlm:scm>
       
   227         <au:assertLogContains text="Tag '0.0.2' has been created successfully" />
       
   228     </target>
       
   229 
       
   230     <!--
       
   231      **************************************************************
       
   232      ** Remove
       
   233      **************************************************************
       
   234     -->
       
   235     <target name="test-remove-message-missing" depends="test-checkin">
       
   236         <au:expectfailure>
       
   237             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   238                 <hlm:remove />
       
   239             </hlm:scm>
       
   240         </au:expectfailure>
       
   241     </target>
       
   242 
       
   243     <target name="test-remove-nothing" depends="test-checkin">
       
   244         <au:expectfailure>
       
   245             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   246                 <hlm:remove message="Nothing to remove..." />
       
   247             </hlm:scm>
       
   248         </au:expectfailure>
       
   249     </target>
       
   250 
       
   251     <target name="test-remove" depends="test-checkin">
       
   252         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   253             <hlm:remove message="Nothing to remove...">
       
   254                 <fileset dir="${repo.dir}/test1">
       
   255                     <include name="not_in_repo.txt" />
       
   256                 </fileset>
       
   257             </hlm:remove>
       
   258         </hlm:scm>
       
   259         <au:assertFileDoesntExist file="${repo.dir}/test1/not_in_repo.txt" />
       
   260     </target>
       
   261 
       
   262 
       
   263     <!--
       
   264      **************************************************************
       
   265      ** Update
       
   266      **************************************************************
       
   267     -->
       
   268     <target name="test-update-noarg" depends="test-checkin">
       
   269         <au:expectfailure>
       
   270             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   271                 <hlm:update />
       
   272             </hlm:scm>
       
   273         </au:expectfailure>
       
   274     </target>
       
   275 
       
   276     <target name="test-update-basedir" depends="test-checkin">
       
   277         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   278             <hlm:update basedir="${repo.dir}/test1" />
       
   279         </hlm:scm>
       
   280     </target>
       
   281 
       
   282     <target name="test-update-empty-repo">
       
   283         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/new">
       
   284             <hlm:init />
       
   285         </hlm:scm>
       
   286         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/new">
       
   287             <hlm:update basedir="${repo.dir}/new" />
       
   288         </hlm:scm>
       
   289     </target>
       
   290         
       
   291     <target name="test-update-basedir-tag" depends="test-checkin">
       
   292         <echo file="${repo.dir}/test1/not_in_repo2.txt">Not in repo2</echo>
       
   293         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   294             <hlm:add>
       
   295                 <fileset dir="${repo.dir}/test1">
       
   296                     <include name="**" />
       
   297                     <exclude name="**/.${repo.type}/**" />
       
   298                 </fileset>
       
   299             </hlm:add>
       
   300         </hlm:scm>
       
   301         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   302             <hlm:checkin message="Adding not_in_repo2.txt...">
       
   303                 <fileset dir="${repo.dir}/test1">
       
   304                     <include name="not_in_repo2.txt" />
       
   305                 </fileset>
       
   306             </hlm:checkin>
       
   307         </hlm:scm>
       
   308         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   309             <hlm:update basedir="${repo.dir}/test1">
       
   310                 <hlm:tag name="0" />
       
   311             </hlm:update>
       
   312         </hlm:scm>
       
   313         <au:assertFileDoesntExist file="${repo.dir}/test1/not_in_repo2.txt" />
       
   314     </target>
       
   315 
       
   316     <target name="test-update-basedir-revision" depends="test-checkin">
       
   317         <echo file="${repo.dir}/test1/not_in_repo2.txt">Not in repo2</echo>
       
   318         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   319             <hlm:add>
       
   320                 <fileset dir="${repo.dir}/test1">
       
   321                     <include name="**" />
       
   322                     <exclude name="**/.${repo.type}/**" />
       
   323                 </fileset>
       
   324             </hlm:add>
       
   325         </hlm:scm>
       
   326         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   327             <hlm:checkin message="Adding not_in_repo2.txt...">
       
   328                 <fileset dir="${repo.dir}/test1">
       
   329                     <include name="not_in_repo2.txt" />
       
   330                 </fileset>
       
   331             </hlm:checkin>
       
   332         </hlm:scm>
       
   333         <echo file="${repo.dir}/test1/not_in_repo3.txt">Not in repo3</echo>
       
   334         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   335             <hlm:add>
       
   336                 <fileset dir="${repo.dir}/test1">
       
   337                     <include name="**" />
       
   338                     <exclude name="**/.${repo.type}/**" />
       
   339                 </fileset>
       
   340             </hlm:add>
       
   341         </hlm:scm>
       
   342         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   343             <hlm:checkin message="Adding not_in_repo3.txt...">
       
   344                 <fileset dir="${repo.dir}/test1">
       
   345                     <include name="not_in_repo3.txt" />
       
   346                 </fileset>
       
   347             </hlm:checkin>
       
   348         </hlm:scm>
       
   349         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   350             <hlm:update basedir="${repo.dir}/test1">
       
   351                 <hlm:revision name="0" />
       
   352             </hlm:update>
       
   353         </hlm:scm>
       
   354         <au:assertFileDoesntExist file="${repo.dir}/test1/not_in_repo3.txt" />
       
   355     </target>
       
   356 
       
   357     <!--
       
   358      **************************************************************
       
   359      ** EXPORT
       
   360      **************************************************************
       
   361     -->
       
   362     <target name="test-export-noarg">
       
   363         <au:expectfailure>
       
   364             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test2">
       
   365                 <hlm:export />
       
   366             </hlm:scm>
       
   367         </au:expectfailure>
       
   368     </target>
       
   369 
       
   370     <target name="test-export-basedir">
       
   371         <au:expectfailure>
       
   372             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test2">
       
   373                 <hlm:export basedir="${repo.dir}/test2" />
       
   374             </hlm:scm>
       
   375         </au:expectfailure>
       
   376     </target>
       
   377 
       
   378     <target name="test-export-basedir-destPath">
       
   379         <mkdir dir="${repo.dir}/export" />
       
   380         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test2">
       
   381             <hlm:export basedir="${repo.dir}/test2" destpath="${repo.dir}/export" />
       
   382         </hlm:scm>
       
   383     </target>
       
   384 
       
   385     <target name="test-export-basedir-destPath-tag-rev1">
       
   386         <mkdir dir="${repo.dir}/export" />
       
   387         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test2">
       
   388             <hlm:export basedir="${repo.dir}/test2" destpath="${repo.dir}/export">
       
   389                 <tag name="1" />
       
   390             </hlm:export>
       
   391         </hlm:scm>
       
   392         <au:assertFileDoesntExist file="${repo.dir}/export/file3.txt" />
       
   393     </target>
       
   394 
       
   395     <target name="test-export-basedir-destPath-tag-rev2">
       
   396         <mkdir dir="${repo.dir}/export" />
       
   397         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test2">
       
   398             <hlm:export basedir="${repo.dir}/test2" destpath="${repo.dir}/export">
       
   399                 <tag name="2" />
       
   400             </hlm:export>
       
   401         </hlm:scm>
       
   402         <au:assertFileExists file="${repo.dir}/export/file3.txt" />
       
   403     </target>
       
   404 
       
   405     <target name="test-export-basedir-destPath-invalid-tag">
       
   406         <mkdir dir="${repo.dir}/export" />
       
   407         <au:expectfailure>
       
   408             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test2">
       
   409                 <hlm:export basedir="${repo.dir}/test2" destpath="${repo.dir}/export">
       
   410                     <tag name="1.0.0" />
       
   411                 </hlm:export>
       
   412             </hlm:scm>
       
   413         </au:expectfailure>
       
   414     </target>
       
   415 
       
   416     <target name="test-export-basedir-destPath-2tags">
       
   417         <mkdir dir="${repo.dir}/export" />
       
   418         <au:expectfailure>
       
   419             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test2">
       
   420                 <hlm:export basedir="${repo.dir}/test2" destpath="${repo.dir}/export">
       
   421                     <tag name="1" />
       
   422                     <tag name="2" />
       
   423                 </hlm:export>
       
   424             </hlm:scm>
       
   425         </au:expectfailure>
       
   426     </target>
       
   427 
       
   428     <!--
       
   429      **************************************************************
       
   430      ** Branch
       
   431      **************************************************************
       
   432     -->
       
   433     <target name="test-branch-name-missing">
       
   434         <au:expectfailure>
       
   435             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   436                 <hlm:branch />
       
   437             </hlm:scm>
       
   438         </au:expectfailure>
       
   439     </target>
       
   440 
       
   441     <target name="test-branch-basedir-missing">
       
   442         <au:expectfailure>
       
   443             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   444                 <hlm:branch name="test branch" />
       
   445             </hlm:scm>
       
   446         </au:expectfailure>
       
   447     </target>
       
   448 
       
   449     <target name="test-branch" depends="setUp">
       
   450         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   451             <hlm:branch baseDir="${repo.dir}/test1" name="test branch 1.0" />
       
   452         </hlm:scm>
       
   453         <au:assertLogContains text="Branch 'test branch 1.0' has been created successfully." />
       
   454     </target>
       
   455 
       
   456     <!--
       
   457      **************************************************************
       
   458      ** Changelog
       
   459      **************************************************************
       
   460     -->
       
   461     <target name="test-changelog-basedir-missing">
       
   462         <au:expectfailure>
       
   463             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   464                 <hlm:changelog />
       
   465             </hlm:scm>
       
   466         </au:expectfailure>
       
   467     </target>
       
   468 
       
   469     <target name="test-changelog" depends="setUp">
       
   470 
       
   471         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   472             <hlm:checkout baseDir="${repo.dir}/changelog" />
       
   473             <hlm:tag baseDir="${repo.dir}/changelog" name="tag_0.2" />
       
   474             <hlm:branch baseDir="${repo.dir}/changelog" name="test_0.1" />
       
   475         </hlm:scm>
       
   476 
       
   477         <echo file="${repo.dir}/changelog/newfile.txt">newly added</echo>
       
   478         <echo file="${repo.dir}/changelog/newfile2.txt">newly added</echo>
       
   479         <echo file="${repo.dir}/changelog/newfile3.txt">newly added</echo>
       
   480 
       
   481         <hlm:scm verbose="false" scmUrl="scm:${repo.type}:${repo.dir}/changelog">
       
   482             <hlm:add>
       
   483                 <fileset dir="${repo.dir}/changelog">
       
   484                     <include name="*.txt" />
       
   485                 </fileset>
       
   486             </hlm:add>
       
   487             <hlm:checkin message="Adding files .....">
       
   488                 <fileset dir="${repo.dir}/changelog">
       
   489                     <include name="*.txt" />
       
   490                 </fileset>
       
   491             </hlm:checkin>
       
   492             <hlm:changelog baseDir="${repo.dir}/changelog" numDays='1' />
       
   493         </hlm:scm>
       
   494 
       
   495         <au:assertLogContains text="tag:tip" />
       
   496         <au:assertLogContains text="branch:test_0.1" />
       
   497         <au:assertLogContains text="files:newfile.txt newfile2.txt newfile3.txt" />
       
   498         
       
   499         <echo file="${repo.dir}/changelog/newfile4.txt">newly added</echo>
       
   500         <echo file="${repo.dir}/changelog/newfile5.txt">newly added</echo>
       
   501         <echo file="${repo.dir}/changelog/newfile6.txt">newly added</echo>
       
   502 
       
   503         <hlm:scm verbose="false" scmUrl="scm:hg:${repo.dir}/changelog">
       
   504             <hlm:add>
       
   505                 <fileset dir="${repo.dir}/changelog">
       
   506                     <include name="*.txt" />
       
   507                 </fileset>
       
   508             </hlm:add>
       
   509             <hlm:checkin message="Adding files .....">
       
   510                 <fileset dir="${repo.dir}/changelog">
       
   511                     <include name="*.txt" />
       
   512                 </fileset>
       
   513             </hlm:checkin>
       
   514             <hlm:changelog basedir="${repo.dir}/changelog" startVersion="2" />
       
   515         </hlm:scm>
       
   516         <au:assertLogContains text="revision:2:" />
       
   517         
       
   518         <hlm:scm verbose="false" scmUrl="scm:hg:${repo.dir}/changelog">
       
   519             <hlm:changelog basedir="${repo.dir}/changelog" startVersion="1" endVersion="2"/>
       
   520         </hlm:scm>
       
   521         <au:assertLogContains text="revision:1:" />
       
   522         <au:assertLogContains text="revision:2:" />
       
   523         
       
   524         <hlm:scm verbose="false" scmUrl="scm:hg:${repo.dir}/changelog">
       
   525             <hlm:changelog basedir="${repo.dir}/changelog" xmlbom="${repo.dir}/bom.xml"/>
       
   526         </hlm:scm>
       
   527         <au:assertFileExists file="${repo.dir}/bom.xml" />
       
   528     </target>
       
   529     
       
   530     <!--
       
   531      **************************************************************
       
   532      ** Info
       
   533      **************************************************************
       
   534     -->
       
   535     <target name="test-info-basedir-missing">
       
   536         <au:expectfailure>
       
   537             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   538                 <hlm:info />
       
   539             </hlm:scm>
       
   540         </au:expectfailure>
       
   541     </target>
       
   542 
       
   543     <target name="test-info-command" depends="setUp">
       
   544         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">            
       
   545             <hlm:checkout baseDir="${repo.dir}/info" /> 
       
   546             <hlm:info baseDir="${repo.dir}/info"/>
       
   547         </hlm:scm>
       
   548 
       
   549         <au:assertLogContains text="hg id" />
       
   550     </target>
       
   551     
       
   552     <target name="test-info-command-result" depends="setUp">
       
   553         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">            
       
   554             <hlm:checkout baseDir="${repo.dir}/info" /> 
       
   555             <hlm:info baseDir="${repo.dir}/info"/>
       
   556         </hlm:scm>
       
   557 
       
   558         <au:assertLogContains text="00000000000" />
       
   559     </target>
       
   560     
       
   561     <target name="test-info-command-result-failur" depends="setUp">
       
   562         <au:expectfailure>
       
   563             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">            
       
   564                 <hlm:checkout baseDir="${repo.dir}/info" /> 
       
   565                 <hlm:info baseDir="${repo.dir}/info"/>
       
   566             </hlm:scm>
       
   567             <au:assertLogContains text="00000000001" />
       
   568         </au:expectfailure>
       
   569     </target>
       
   570     
       
   571     <!--
       
   572      **************************************************************
       
   573      ** Keep Going (faile on error)
       
   574      **************************************************************
       
   575     -->
       
   576     <target name="test-keepgoing-false" depends="setUp">
       
   577         <echo file="${repo.dir}/test1/newfile.txt">newly added</echo>
       
   578         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1" failonerror="false">
       
   579             <hlm:add>
       
   580                 <fileset dir="${repo.dir}/test1">
       
   581                     <include name="*.txt" />
       
   582                 </fileset>
       
   583             </hlm:add>
       
   584             <hlm:checkin message="Adding files .....">
       
   585                 <fileset dir="${repo.dir}/test1">
       
   586                     <include name="*.txt" />
       
   587                 </fileset>
       
   588             </hlm:checkin>
       
   589             <hlm:tag baseDir="${repo.dir}/test1" name="0.0.2" />
       
   590             <hlm:tag baseDir="${repo.dir}/test1" name="0.0.2" />            
       
   591         </hlm:scm>
       
   592         <echo> Build Continue... </echo>
       
   593         <au:assertLogContains text="Build Continue..." />
       
   594     </target>
       
   595     
       
   596     <target name="test-keepgoing-true" depends="setUp">
       
   597         <au:expectfailure>
       
   598             <echo file="${repo.dir}/test1/newfile.txt">newly added</echo>
       
   599             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1" failonerror="true">
       
   600                 <hlm:add>
       
   601                     <fileset dir="${repo.dir}/test1">
       
   602                         <include name="*.txt" />
       
   603                     </fileset>
       
   604                 </hlm:add>
       
   605                 <hlm:checkin message="Adding files .....">
       
   606                     <fileset dir="${repo.dir}/test1">
       
   607                         <include name="*.txt" />
       
   608                     </fileset>
       
   609                 </hlm:checkin>
       
   610                 <hlm:tag baseDir="${repo.dir}/test1" name="0.0.3" />
       
   611                 <hlm:tag baseDir="${repo.dir}/test1" name="0.0.3" />
       
   612             </hlm:scm>
       
   613         </au:expectfailure>
       
   614     </target>
       
   615     
       
   616     <target name="test-keepgoing-true-default" depends="setUp">
       
   617         <au:expectfailure>
       
   618             <echo file="${repo.dir}/test1/newfile.txt">newly added</echo>
       
   619             <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   620                 <hlm:add>
       
   621                     <fileset dir="${repo.dir}/test1">
       
   622                         <include name="*.txt" />
       
   623                     </fileset>
       
   624                 </hlm:add>
       
   625                 <hlm:checkin message="Adding files .....">
       
   626                     <fileset dir="${repo.dir}/test1">
       
   627                         <include name="*.txt" />
       
   628                     </fileset>
       
   629                 </hlm:checkin>
       
   630                 <hlm:tag baseDir="${repo.dir}/test1" name="0.0.3" />
       
   631                 <hlm:tag baseDir="${repo.dir}/test1" name="0.0.3" />
       
   632             </hlm:scm>
       
   633         </au:expectfailure>
       
   634     </target>
       
   635 
       
   636     
       
   637     <!--
       
   638      **************************************************************
       
   639      ** Init
       
   640      **************************************************************
       
   641      -->
       
   642     <target name="test-init">
       
   643         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/new">
       
   644             <hlm:init />
       
   645         </hlm:scm>
       
   646         <au:assertFileExists file="${repo.dir}/new" />
       
   647     </target>
       
   648 
       
   649     
       
   650     <!--
       
   651      **************************************************************
       
   652      ** Pull
       
   653      **************************************************************
       
   654      -->
       
   655     <target name="test-pull">
       
   656         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   657             <hlm:checkout baseDir="${repo.dir}/pull" />
       
   658         </hlm:scm>
       
   659         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   660             <hlm:tag baseDir="${repo.dir}/test1" name="tag_0.2" />
       
   661         </hlm:scm>
       
   662         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/pull">
       
   663             <hlm:pull baseDir="${repo.dir}/pull" />
       
   664             <hlm:changelog baseDir="${repo.dir}/pull" numDays="1" />
       
   665         </hlm:scm>
       
   666         <au:assertLogContains text="files:.hgtags" />
       
   667         <au:assertLogContains text="description:[maven-scm] copy for tag tag_0.2" />
       
   668     </target>
       
   669     
       
   670     <!--
       
   671      **************************************************************
       
   672      ** Tags
       
   673      **************************************************************
       
   674      -->
       
   675     <target name="test-tags">
       
   676         <echo file="${repo.dir}/test1/content.txt">content...</echo>
       
   677         <hlm:scm verbose="true" scmUrl="scm:${repo.type}:${repo.dir}/test1">
       
   678             <hlm:add>
       
   679                 <fileset dir="${repo.dir}/test1">
       
   680                     <include name="*.txt" />
       
   681                 </fileset>
       
   682             </hlm:add>
       
   683             <hlm:checkin message="Adding files .....">
       
   684                 <fileset dir="${repo.dir}/test1">
       
   685                     <include name="*.txt" />
       
   686                 </fileset>
       
   687             </hlm:checkin>            
       
   688             <hlm:tag baseDir="${repo.dir}/test1" name="tag_0.1" />
       
   689             <hlm:tags baseDir="${repo.dir}/test1" />
       
   690         </hlm:scm>
       
   691         <au:assertLogContains text=" * tag_0.1" />
       
   692         <au:assertLogContains text=" * tip" />
       
   693     </target>
       
   694     
       
   695     
       
   696 </project>