You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

sample.ant 7.8 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253
  1. <?xml version="1.0"?>
  2. <!--
  3. ==============================================================================
  4. Sample build file
  5. Authors:
  6. Peter Donald <peterp@apache.org>
  7. Legal:
  8. Copyright (c) 2000 The Apache Software Foundation. All Rights Reserved.
  9. ==============================================================================
  10. -->
  11. <project version="2.0.0">
  12. <projectref name="prim" location="primitive-tests.ant" />
  13. <property name="year" value="2000"/>
  14. <target name="main"
  15. depends="typedef-test, converterdef-test,
  16. datatype-test, namespace-test,
  17. ant1-tasklib-test,
  18. prim->extensions-test" />
  19. <target name="xp-deployer-test" depends="typedef-test, prim->undefined-task" />
  20. <target name="all"
  21. depends="property-test, typedef-test, converterdef-test,
  22. ant-call-test, datatype-test, namespace-test,
  23. ant1-tasklib-test, prim->main, exec-test" />
  24. <!--
  25. <register-tasklib lib="../../dist/lib/core.atl" />
  26. -->
  27. <target name="if-test">
  28. <property name="blah" value="true" />
  29. <if test="${blah}">
  30. <log message="Sucessful if test!"/>
  31. </if>
  32. </target>
  33. <target name="property-test">
  34. <property name="blah" value="fred" />
  35. <property name="${blah}" value="barney" />
  36. <log message="Doing the funky Echo with ${blah} ${fred} Year=${year}!"/>
  37. </target>
  38. <target name="typedef-test">
  39. <type-def name="log2"
  40. role="task"
  41. classname="org.apache.antlib.core.Log"
  42. lib="../../dist/lib/core.atl" />
  43. <log2 message="Luke to Echo base. Can you hear me?"/>
  44. </target>
  45. <target name="converterdef-test">
  46. <converter-def classname="org.apache.myrmidon.libs.core.StringToClassConverter"
  47. source-type="java.lang.String"
  48. destination-type="java.lang.Class"
  49. lib="../../dist/lib/core.atl" />
  50. </target>
  51. <target name="ant-call-test">
  52. <!-- test elided until we decide scope and necessity of ant-call -->
  53. <log message="AntCall test elided until we decide scope and necessity of ant-call"/>
  54. <!--
  55. <ant-call target="ant-call-test-target">
  56. <param name="blah" value="blah-value" />
  57. </ant-call>
  58. -->
  59. </target>
  60. <target name="ant-call-test-target">
  61. <log message="This should fail ...."/>
  62. <log message="${blah}"/>
  63. <log message="Whoa - it no fail. You used ant-call to call me and set param blah!"/>
  64. </target>
  65. <target name="log-level-test">
  66. <log message="Testing log level debug" level="debug"/>
  67. <log message="Testing log level info" level="info"/>
  68. <log message="Testing log level warn" level="warn"/>
  69. <log message="Testing log level error" level="error"/>
  70. <log message="Testing log level fatal error" level="fatalError"/>
  71. <log message="Testing log level error" level="this-no-work"/>
  72. </target>
  73. <target name="datatype-test">
  74. <property name="foo">
  75. <pattern name="*.java"/>
  76. </property>
  77. <pattern id="foo2" name="*.java" if="..." />
  78. <log message="foo=${foo}" />
  79. <log message="foo2=${foo2}" />
  80. </target>
  81. <target name="namespace-test">
  82. <!-- ant and doc are built in namespaces -->
  83. <log ant:fail-on-error="true" message="Some random message">
  84. <doc:description>
  85. Test case for aspects
  86. </doc:description>
  87. <ant:some-element some-attribute="blah"/>
  88. </log>
  89. <!-- load facility for blee: namespace -->
  90. <facility namespace="blee">
  91. <noop/>
  92. </facility>
  93. <log blee:some-param="blah" message="Blee namespace test successful!"/>
  94. </target>
  95. <target name="fail-test1">
  96. <fail message="Build is failing"/>
  97. </target>
  98. <target name="fail-test2">
  99. <fail message="Build is failing if prop X is set" if="x"/>
  100. </target>
  101. <target name="fail-test3">
  102. <fail message="Build is failing unless prop X is set" unless="x"/>
  103. </target>
  104. <target name="fail-test4">
  105. <fail>Some multiline fail
  106. message.</fail>
  107. </target>
  108. <target name="ant1-tasklib-test">
  109. <!--
  110. <ant1-tasklib prefix="a1-" lib="../../dist/lib/ant1-compat.jar"/>
  111. <a1-log message="Boo!" />
  112. <a1-mkdir dir="../../dist/test"/>
  113. <a1-copy file="../../tools/lib/ant.jar" tofile="../../dist/test/ant1-compat.jar" />
  114. -->
  115. </target>
  116. <target name="loadenvironment-test">
  117. <load-environment prefix="env"/>
  118. <log message="env.TMP=${env.TMP}"/>
  119. </target>
  120. <target name="loadproperties-test">
  121. <load-properties prefix="myPrefix" file="template-simple.properties"/>
  122. <log message="myPrefix.foo=${myPrefix.foo}"/>
  123. </target>
  124. <target name="exec-test">
  125. <exec dir="../.." executable="java">
  126. <arg value="-version"/>
  127. </exec>
  128. <log message="exec cvs done!"/>
  129. </target>
  130. <target name="cvs-test">
  131. <cvs noexec="true" dest="../.." command="up"/>
  132. <log message="cvs done!"/>
  133. </target>
  134. <target name="ref-test">
  135. <property name="refme1" value="These are not the droids you are looking for." />
  136. <property name="refme2" value="Move along." />
  137. <log message="Following should be a deomnstration of the -ref attribute extension:"/>
  138. <log message-ref="refme1"/>
  139. <log message-ref="refme2"/>
  140. </target>
  141. <target name="gzip-test">
  142. <property name="zip" value="../../dist/bin/sample.gz" />
  143. <property name="unzip" value="../../dist/bin/sample.txt" />
  144. <gzip src="sample.ant" zipfile="${zip}"/>
  145. <log message="Gzipped file!"/>
  146. <gunzip src="${zip}" dest="${unzip}"/>
  147. <log message="Ungzipped file!"/>
  148. </target>
  149. <target name="bzip2-test">
  150. <property name="zip" value="../../dist/bin/sample.bz2" />
  151. <property name="unzip" value="../../dist/bin/sample.txt" />
  152. <bzip2 src="sample.ant" zipfile="${zip}"/>
  153. <log message="Gzipped file!"/>
  154. <bunzip2 src="${zip}" dest="${unzip}"/>
  155. <log message="Ungzipped file!"/>
  156. </target>
  157. <target name="file-test">
  158. <mkdir dir="/tmp/deleteme"/>
  159. <touch file="/tmp/deleteme/touch-test"/>
  160. <delete dir="/tmp/deleteme"/>
  161. </target>
  162. <target name="trycatch-test1">
  163. <try-catch>
  164. <try>
  165. <log message="Reference to bad (undefined) variable! ${bad.variable}"/>
  166. </try>
  167. <catch>
  168. <log message="Caught exception due to bad variable reference!"/>
  169. </catch>
  170. </try-catch>
  171. </target>
  172. <target name="trycatch-test2">
  173. <try-catch>
  174. <try>
  175. <log message="Reference to bad (undefined) variable! ${bad.variable}"/>
  176. </try>
  177. <finally>
  178. <log message="In final section!"/>
  179. </finally>
  180. </try-catch>
  181. </target>
  182. <target name="copy-test">
  183. <copy file="sample.ant" dest-file="../../dist/bin/sample.ant-copied.txt"/>
  184. </target>
  185. <target name="move-test">
  186. <move file="../../dist/bin/sample.ant-copied.txt"
  187. dest-file="../../dist/bin/sample.ant-moved.txt"/>
  188. </target>
  189. <target name="filtered-copy-test">
  190. <filtered-copy file="testdata.txt" dest-file="../../dist/bin/filtered-data.txt">
  191. <filter-set>
  192. <filter token="REPLACEME" value="***replacement-data-here***"/>
  193. </filter-set>
  194. </filtered-copy>
  195. </target>
  196. </project>