| <?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 |
| |
| https://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 default="antunit" xmlns:au="antlib:org.apache.ant.antunit"> |
| |
| <description> |
| Test that subant properly sets various properties |
| </description> |
| <import file="../antunit-base.xml" /> |
| |
| <target name="assertProperties"> |
| <au:assertPropertySet name="ant.version" /> |
| <au:assertPropertySet name="java.home" /> |
| <au:assertPropertySet name="java.class.path" /> |
| </target> |
| |
| <target name="testAntVersion"> |
| <subant inheritall="false" target="assertProperties"> |
| <fileset file="${ant.file}" /> |
| </subant> |
| </target> |
| |
| <!-- four testcases for bug 30542, the last one failed --> |
| <target name="testSubAntDoesntSetBasedir"> |
| <subant antfile="echo.xml"> |
| <dirset dir="." includes="subant-helper"/> |
| </subant> |
| </target> |
| |
| <target name="testSubAntDoesntSetBasedirAfterAntCall"> |
| <antcall target="testSubAntDoesntSetBasedir"/> |
| </target> |
| |
| <target name="testSubAntDoesntSetBasedirAfterAnt"> |
| <ant antfile="${ant.file}" target="testSubAntDoesntSetBasedir"/> |
| </target> |
| |
| <target name="testSubAntDoesntSetBasedirAfterAntWithDir"> |
| <ant antfile="${ant.file}" dir="${basedir}" |
| target="testSubAntDoesntSetBasedir"/> |
| </target> |
| |
| <target name="testSubAntDoesntSetBasedirAfterAntWithDirWhenNativeDir"> |
| <ant antfile="${ant.file}" dir="${basedir}" |
| target="testSubAntDoesntSetBasedir" |
| useNativeBaseDir="true"/> |
| </target> |
| |
| <target name="testLastPropertyWins"> |
| <subant target="checkB"> |
| <file file="antcall-test.xml"/> |
| <property name="b" value="1"/> |
| <property name="b" value="2"/> |
| <property name="expected" value="2"/> |
| </subant> |
| </target> |
| |
| <target name="makePropertiesFile"> |
| <ant antfile="antcall-test.xml" target="makePropertiesFile"/> |
| </target> |
| |
| <target name="testPropertiesLoadedFromFile" depends="makePropertiesFile"> |
| <subant target="checkB"> |
| <file file="antcall-test.xml"/> |
| <property name="expected" value="2"/> |
| <property file="${input}/ant.properties"/> |
| </subant> |
| </target> |
| |
| <target name="testFileDoesntSeeExternalProperty" depends="makePropertiesFile"> |
| <property name="a" value="x"/> |
| <subant target="checkB"> |
| <file file="antcall-test.xml"/> |
| <property name="expected" value="2"/> |
| <property file="${input}/ant.properties"/> |
| </subant> |
| </target> |
| |
| <target name="testFileSeesExternalPropertyWhenInheritAll" |
| depends="makePropertiesFile"> |
| <property name="a" value="x"/> |
| <subant target="checkB" inheritall="true"> |
| <file file="antcall-test.xml"/> |
| <property name="expected" value="x"/> |
| <property file="${input}/ant.properties"/> |
| </subant> |
| </target> |
| |
| <target name="testFileSeesInternalProperty" depends="makePropertiesFile"> |
| <subant target="checkB"> |
| <file file="antcall-test.xml"/> |
| <property name="a" value="y"/> |
| <property name="expected" value="y"/> |
| <property file="${input}/ant.properties"/> |
| </subant> |
| </target> |
| </project> |