blob: 81105d59f8cd8328791c613017df59aeb18db8a0 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (c) 2009, 2016 Mountainminds GmbH & Co. KG and Contributors
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html
Contributors:
Brock Janiczak - initial API and implementation
$Id: $
-->
<project name="JaCoCo Agent Task Tests" xmlns:au="antlib:org.apache.ant.antunit" xmlns:jacoco="antlib:org.jacoco.ant">
<target name="testCoverageAgent">
<jacoco:agent property="jacocoagent" append="false" destfile="test.exec"
exclClassLoader="EvilClassLoader" includes="org.example.*" excludes="*Test"
inclbootstrapclasses="true" inclnolocationclasses="true"
sessionid="testid" dumponexit="false"
output="file" address="remotehost" port="1234" jmx="true"
classdumpdir="target/dump"/>
<au:assertPropertySet name="jacocoagent"/>
<au:assertPropertyContains name="jacocoagent" value="-javaagent:"/>
<au:assertPropertyContains name="jacocoagent" value="append=false"/>
<property name="exec.file" location="test.exec"/>
<au:assertPropertyContains name="jacocoagent" value="destfile=${exec.file}"/>
<au:assertPropertyContains name="jacocoagent" value="exclclassloader=EvilClassLoader"/>
<au:assertPropertyContains name="jacocoagent" value="includes=org.example.*"/>
<au:assertPropertyContains name="jacocoagent" value="excludes=*Test"/>
<au:assertPropertyContains name="jacocoagent" value="inclbootstrapclasses=true"/>
<au:assertPropertyContains name="jacocoagent" value="inclnolocationclasses=true"/>
<au:assertPropertyContains name="jacocoagent" value="sessionid=testid"/>
<au:assertPropertyContains name="jacocoagent" value="dumponexit=false"/>
<au:assertPropertyContains name="jacocoagent" value="output=file"/>
<au:assertPropertyContains name="jacocoagent" value="address=remotehost"/>
<au:assertPropertyContains name="jacocoagent" value="port=1234"/>
<au:assertPropertyContains name="jacocoagent" value="jmx=true"/>
<property name="dump.dir" location="target/dump"/>
<au:assertPropertyContains name="jacocoagent" value="classdumpdir=${dump.dir}"/>
</target>
<target name="testCoverageAgentDisabled">
<jacoco:agent enabled="false" property="jacocoagent" append="false" destfile="${basedir}/test.exec" exclClassLoader="sun.reflect.DelegatingClassLoader"/>
<au:assertPropertyEquals name="jacocoagent" value=""/>
</target>
<target name="testCoverageAgentWithNoProperty">
<au:expectfailure expectedMessage="Property is mandatory">
<jacoco:agent/>
</au:expectfailure>
</target>
<target name="testCoverageAgentWithEmptyProperty">
<au:expectfailure expectedMessage="Property is mandatory">
<jacoco:agent property=""/>
</au:expectfailure>
</target>
<target name="testCoverageAgentReuseAgentJar">
<jacoco:agent property="agent1"/>
<jacoco:agent property="agent2"/>
<au:assertEquals expected="${agent1}" actual="${agent2}"/>
</target>
</project>