aboutsummaryrefslogtreecommitdiffstats
path: root/framework/src/ant/apache-ant-1.9.6/src/etc/testcases/taskdefs/macrodef.xml
diff options
context:
space:
mode:
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/src/etc/testcases/taskdefs/macrodef.xml')
-rw-r--r--framework/src/ant/apache-ant-1.9.6/src/etc/testcases/taskdefs/macrodef.xml290
1 files changed, 290 insertions, 0 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/src/etc/testcases/taskdefs/macrodef.xml b/framework/src/ant/apache-ant-1.9.6/src/etc/testcases/taskdefs/macrodef.xml
new file mode 100644
index 00000000..f7a356fc
--- /dev/null
+++ b/framework/src/ant/apache-ant-1.9.6/src/etc/testcases/taskdefs/macrodef.xml
@@ -0,0 +1,290 @@
+<?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.
+-->
+<project>
+
+ <target name="simple">
+ <macrodef name="my.echo">
+ <attribute name="text"/>
+ <sequential>
+ <echo message="@{text}"/>
+ </sequential>
+ </macrodef>
+ <my.echo text="Hello World"/>
+ </target>
+
+ <target name="text">
+ <macrodef name="my.echo">
+ <attribute name="text"/>
+ <sequential>
+ <echo>@{text}</echo>
+ </sequential>
+ </macrodef>
+ <my.echo text="Inner Text"/>
+ </target>
+
+ <target name="duplicate.attribute">
+ <macrodef name="my.echo">
+ <attribute name="text"/>
+ <attribute name="text"/>
+ <sequential>
+ <echo>@{text}</echo>
+ </sequential>
+ </macrodef>
+ </target>
+
+ <target name="duplicate.element">
+ <macrodef name="my.echo">
+ <element name="text"/>
+ <element name="text"/>
+ <sequential>
+ <text/>
+ </sequential>
+ </macrodef>
+ </target>
+
+ <target name="uri">
+ <macrodef name="echo" uri="abc">
+ <attribute name="text"/>
+ <sequential>
+ <echo message="@{text}"/>
+ </sequential>
+ </macrodef>
+ <x:echo xmlns:x="abc" text="Hello World"/>
+ </target>
+
+ <target name="nested">
+ <macrodef name="nested">
+ <element name="nested"/>
+ <sequential>
+ <nested/>
+ </sequential>
+ </macrodef>
+
+ <nested>
+ <nested>
+ <echo>A nested element</echo>
+ </nested>
+ </nested>
+ </target>
+
+ <target name="double">
+ <macrodef name="double">
+ <attribute name="prop"/>
+ <sequential>
+ <echo>@@{prop} is '@{prop}', value of $${@{prop}} is '${@{prop}}'</echo>
+ </sequential>
+ </macrodef>
+ <property name="property" value="A property value"/>
+ <double prop="property"/>
+ </target>
+
+ <target name="ignorecase">
+ <macrodef name="ignore">
+ <attribute name="MyAttribute"/>
+ <sequential>
+ <echo>@{myattribute} is @{MYATTRIBUTE}</echo>
+ </sequential>
+ </macrodef>
+ <ignore myattribute="a"/>
+ <ignore Myattribute="b"/>
+ </target>
+
+ <target name="ignore-element-case">
+ <macrodef name="ignore">
+ <element name="MyElement"/>
+ <sequential>
+ <myElement/>
+ <MyElEmEnT/>
+ </sequential>
+ </macrodef>
+ <ignore>
+ <MYELEMENT>
+ <echo>nested element</echo>
+ </MYELEMENT>
+ </ignore>
+ </target>
+
+ <target name="textelement">
+ <macrodef name="echotest">
+ <text name="text" optional="yes"/>
+ <sequential>
+ <echo>@{text}</echo>
+ </sequential>
+ </macrodef>
+ <echotest>
+ Hello world
+ </echotest>
+ </target>
+
+ <target name="text.trim">
+ <macrodef name="echotest">
+ <text name="text" trim="yes"/>
+ <sequential>
+ <echo>[@{text}]</echo>
+ </sequential>
+ </macrodef>
+ <echotest>
+ Hello world
+ </echotest>
+ </target>
+
+ <target name="duplicatetextname">
+ <macrodef name="echotest">
+ <attribute name="text"/>
+ <text name="text"/>
+ <sequential>
+ <echo>@{text}</echo>
+ </sequential>
+ </macrodef>
+ </target>
+
+ <target name="duplicatetextname2">
+ <macrodef name="echotest">
+ <text name="text"/>
+ <attribute name="text"/>
+ <sequential>
+ <echo>@{text}</echo>
+ </sequential>
+ </macrodef>
+ </target>
+
+ <target name="escape">
+ <macrodef name="escape">
+ <attribute name="a"/>
+ <attribute name="b"/>
+ <sequential>
+ <echo>a@b or a@@b is @{a}@@@{b}</echo>
+ </sequential>
+ </macrodef>
+ <escape a="avalue" b="bvalue"/>
+ </target>
+
+ <target name="attribute.description">
+ <macrodef name="d">
+ <attribute name="description"/>
+ <attribute name="d" default="p"/>
+ <sequential>
+ <echo>description is @{description}</echo>
+ </sequential>
+ </macrodef>
+ <d description="hello world"/>
+ </target>
+
+ <target name="implicit">
+ <macrodef name="implicit">
+ <element name="implicit" implicit="yes"/>
+ <sequential>
+ <echo>Before implicit</echo>
+ <implicit/>
+ <echo>After implicit</echo>
+ </sequential>
+ </macrodef>
+
+ <implicit>
+ <echo>In implicit</echo>
+ </implicit>
+ </target>
+
+ <target name="implicit.notoptional">
+ <macrodef name="implicit">
+ <element name="implicit" implicit="yes"/>
+ <sequential>
+ <echo>Before implicit</echo>
+ <implicit/>
+ <echo>After implicit</echo>
+ </sequential>
+ </macrodef>
+
+ <implicit>
+ </implicit>
+ </target>
+
+ <target name="implicit.optional">
+ <macrodef name="implicit">
+ <element name="implicit" optional="yes" implicit="yes"/>
+ <sequential>
+ <echo>Before implicit</echo>
+ <implicit/>
+ <echo>After implicit</echo>
+ </sequential>
+ </macrodef>
+
+ <implicit>
+ </implicit>
+ </target>
+
+ <target name="implicit.explicit">
+ <macrodef name="implicit">
+ <element name="explicit" optional="yes"/>
+ <element name="implicit" optional="yes" implicit="yes"/>
+ <sequential>
+ <implicit/>
+ <explicit/>
+ </sequential>
+ </macrodef>
+ </target>
+
+ <property name="default.override" value="old"/>
+ <macrodef name="simple.override">
+ <attribute name="attr" default="${default.override}"/>
+ <sequential>
+ <echo>value is @{attr}</echo>
+ </sequential>
+ </macrodef>
+
+ <target name="override.default">
+ <antcall target="override.call">
+ <param name="default.override" value="new"/>
+ </antcall>
+ </target>
+
+ <target name="override.call">
+ <simple.override/>
+ </target>
+
+ <target name="backtraceoff">
+ <macrodef name="nobacktrace" backtrace="false">
+ <sequential>
+ <fail>This is a failure</fail>
+ </sequential>
+ </macrodef>
+ <nobacktrace/>
+ </target>
+ <target name="backtraceon">
+ <macrodef name="nobacktrace" backtrace="true">
+ <sequential>
+ <fail>This is a failure</fail>
+ </sequential>
+ </macrodef>
+ <nobacktrace/>
+ </target>
+
+ <target name="top-level-text">
+ <macrodef name="top">
+ <element name="em"/>
+ <sequential>
+ <echo><em/></echo>
+ </sequential>
+ </macrodef>
+ <top>
+ <em>
+ Hello World
+ </em>
+ </top>
+ </target>
+</project>