| <?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. |
| --> |
| <test:suite |
| xmlns:j="jelly:core" |
| xmlns:test="jelly:junit" |
| xmlns:util="jelly:util" |
| xmlns="jelly:ant"> |
| |
| <j:set var="dir" value="target/test-classes/org/apache/commons/jelly/ant"/> |
| |
| <test:case name="write"> |
| |
| <property name="foo2" value="bar2"/> |
| |
| <test:assertEquals |
| expected="bar2" |
| actual="${foo2}" |
| /> |
| |
| </test:case> |
| |
| <test:case name="readWrite"> |
| |
| <j:set var="foo1" value="bar1"/> |
| |
| <property name="foo1.1" value="${foo1}"/> |
| |
| <test:assertEquals |
| expected="bar1" |
| actual="${foo1.1}" |
| /> |
| |
| </test:case> |
| |
| <test:case name="writeIn"> |
| |
| <ant |
| dir="${dir}" |
| target="writeFoo3Bar3" |
| /> |
| |
| <property file="${dir}/test.properties"/> |
| |
| <test:assertEquals |
| expected="bar3" |
| actual="${foo3}" |
| /> |
| |
| </test:case> |
| |
| <test:case name="readWriteIn"> |
| |
| <j:set var="foo4" value="bar4"/> |
| |
| <ant |
| dir="${dir}" |
| target="readWriteFoo4.1Foo4" |
| /> |
| |
| <property file="${dir}/test.properties"/> |
| |
| <test:assertEquals |
| expected="bar4" |
| actual="${foo4.1}" |
| /> |
| |
| </test:case> |
| |
| <test:case name="startUpReadWrite"> |
| |
| <j:set var="foo5" value="bar5"/> |
| |
| <ant |
| dir="${dir}" |
| target="readWriteFoo5.1Foo5InStart" |
| /> |
| |
| <property file="${dir}/test.properties"/> |
| |
| <test:assertEquals |
| expected="bar5" |
| actual="${foo5.1}" |
| /> |
| |
| </test:case> |
| |
| <test:case name="copy"> |
| |
| <mkdir dir="target/tmp/ant-tests"/> |
| |
| <copy |
| overwrite="true" |
| file="target/test-classes/org/apache/commons/jelly/ant/sample.txt" |
| tofile="target/tmp/ant-tests/output.txt"> |
| <filterset> |
| <filter token="foo" value="bar"/> |
| </filterset> |
| </copy> |
| |
| <util:loadText var="text" file="${basedir}/target/tmp/ant-tests/output.txt"/> |
| <delete file="${basedir}/target/tmp/ant-tests/output.txt"/> |
| |
| <test:assertEquals expected="hello bar how are you?" actual="${text.trim()}"/> |
| |
| </test:case> |
| |
| <test:case name="copyWithReference"> |
| |
| <mkdir dir="target/tmp/ant-tests"/> |
| |
| <filterset id="myFilter"> |
| <filter token="foo" value="bar"/> |
| </filterset> |
| |
| <copy |
| overwrite="true" |
| file="target/test-classes/org/apache/commons/jelly/ant/sample.txt" |
| tofile="target/tmp/ant-tests/output.txt"> |
| <filterset refid="myFilter"/> |
| </copy> |
| |
| <util:loadText var="text" file="target/tmp/ant-tests/output.txt"/> |
| <delete file="target/tmp/ant-tests/output.txt"/> |
| |
| <test:assertEquals expected="hello bar how are you?" actual="${text.trim()}"/> |
| |
| </test:case> |
| |
| |
| <test:case name="parallelCopy"> |
| |
| <mkdir dir="target/tmp/ant-tests"/> |
| |
| <parallel> |
| <copy |
| overwrite="true" |
| file="target/test-classes/org/apache/commons/jelly/ant/sample.txt" |
| tofile="target/tmp/ant-tests/output.txt"> |
| <filterset> |
| <filter token="foo" value="bar"/> |
| </filterset> |
| </copy> |
| <echo>Performing copy in parallel</echo> |
| </parallel> |
| |
| <util:loadText var="text" file="${basedir}/target/tmp/ant-tests/output.txt"/> |
| <delete file="${basedir}/target/tmp/ant-tests/output.txt"/> |
| |
| <test:assertEquals expected="hello bar how are you?" actual="${text.trim()}"/> |
| |
| </test:case> |
| |
| <test:case name="parallelCopyWithReference"> |
| |
| <mkdir dir="${basedir}/target/tmp/ant-tests"/> |
| |
| <filterset id="myFilter"> |
| <filter token="foo" value="bar"/> |
| </filterset> |
| |
| <parallel> |
| <copy |
| overwrite="true" |
| file="${basedir}/target/test-classes/org/apache/commons/jelly/ant/sample.txt" |
| tofile="${basedir}/target/tmp/ant-tests/output.txt"> |
| <filterset refid="myFilter"/> |
| </copy> |
| <echo>Performing copy in parallel</echo> |
| </parallel> |
| |
| <util:loadText var="text" file="${basedir}/target/tmp/ant-tests/output.txt"/> |
| <delete file="${basedir}/target/tmp/ant-tests/output.txt"/> |
| |
| <test:assertEquals expected="hello bar how are you?" actual="${text.trim()}"/> |
| |
| </test:case> |
| |
| |
| |
| <test:case name="startUpReadWrite"> |
| |
| <j:set var="foo" value="setting the message worked!"/> |
| |
| <echo> |
| <setProperty name="message" value="${foo}"/> |
| </echo> |
| |
| <echo> |
| <setProperty name="message" value="${bar}" default="the default also worked"/> |
| </echo> |
| |
| <!-- haven't thought of a neat way to test this yet... --> |
| </test:case> |
| |
| <test:case name="nestedTask"> |
| |
| <j:include uri="task/example.jelly"/> |
| |
| </test:case> |
| |
| <test:case name="setProperty"> |
| |
| <taskdef |
| name="nested" |
| classname="org.apache.commons.jelly.ant.task.DummyTask"> |
| </taskdef> |
| |
| <nested> |
| <setProperty name="force" value="true"/> |
| </nested> |
| |
| <j:catch var="ex"> |
| <nested> |
| <setProperty name="force" value="false"/> |
| </nested> |
| </j:catch> |
| |
| <test:assert test="${ex != null}">We should have created an exception</test:assert> |
| |
| </test:case> |
| |
| </test:suite> |