|
Ant example source code file (jar-spi-test.xml)
The jar-spi-test.xml source code<?xml version="1.0" encoding="utf-8"?> <project xmlns:au="antlib:org.apache.ant.antunit"> <property name="jar.dir" location="jar_spi_dir"/> <property name="jar.src.dir" location="jar_spi_dir/src"/> <property name="jar.src.file" location="jar_spi_dir/src/a_file"/> <target name="init"> <mkdir dir="${jar.src.dir}"/> <delete quiet="yes" file="${jar.src.file}"/> <touch file="${jar.src.file}"/> <delete quiet="yes" file="${jar.dir}/file.jar"/> <delete quiet="yes" dir="${jar.dir}/output"/> </target> <target name="test-simple" depends="init"> <jar jarfile="${jar.dir}/file.jar"> <fileset dir="${jar.src.dir}"/> <service type="a.b.c" provider="a.b.c.d"/> </jar> <unjar src="${jar.dir}/file.jar" dest="${jar.dir}/output"/> <loadfile property="simple" srcfile="${jar.dir}/output/META-INF/service/a.b.c" encoding="UTF-8"/> <au:assertTrue> <matches string="${simple}" pattern="^a\.b\.c\.d$"/> </au:assertTrue> </target> <target name="test-providers" depends="init"> <jar jarfile="${jar.dir}/file.jar"> <fileset dir="${jar.src.dir}"/> <service type="a.b.c"> <provider classname="a.X"/> <provider classname="a.D"/> </service> </jar> <unjar src="${jar.dir}/file.jar" dest="${jar.dir}/output"/> <loadfile property="providers" srcfile="${jar.dir}/output/META-INF/service/a.b.c" encoding="UTF-8"/> <au:assertTrue> <matches string="${providers}" pattern="^a\.X\na\.D$"/> </au:assertTrue> </target> <target name="test-multi" depends="init"> <jar jarfile="${jar.dir}/file.jar"> <fileset dir="${jar.src.dir}"/> <service type="a.b.c"> <provider classname="a.X"/> <provider classname="a.D"/> </service> <service type="javax.a.service"> <provider classname="a.O.T"/> <provider classname="a.B"/> </service> </jar> <unjar src="${jar.dir}/file.jar" dest="${jar.dir}/output"/> <loadfile property="multi-a" srcfile="${jar.dir}/output/META-INF/service/a.b.c" encoding="UTF-8"/> <au:assertTrue> <matches string="${multi-a}" pattern="^a\.X\na\.D$"/> </au:assertTrue> <loadfile property="multi-b" srcfile="${jar.dir}/output/META-INF/service/javax.a.service" encoding="UTF-8"/> <au:assertTrue> <matches string="${multi-b}" pattern="^a\.O\.T\na\.B$"/> </au:assertTrue> </target> <target name="test-reject-no-type" depends="init"> <au:expectfailure> <jar jarfile="${jar.dir}/file.jar"> <fileset dir="${jar.src.dir}"/> <service provider="a.X"/> </jar> </au:expectfailure> </target> <target name="test-reject-no-provider" depends="init"> <au:expectfailure> <jar jarfile="${jar.dir}/file.jar"> <fileset dir="${jar.src.dir}"/> <service type="a.X"/> </jar> </au:expectfailure> </target> <target name="test-reject-no-classname" depends="init"> <au:expectfailure> <jar jarfile="${jar.dir}/file.jar"> <fileset dir="${jar.src.dir}"/> <service type="a.X"> <provider/> </service> </jar> </au:expectfailure> </target> <target name="tearDown"> <delete quiet="yes" dir="${jar.dir}"/> </target> </project> Other Ant examples (source code examples)Here is a short list of links related to this Ant jar-spi-test.xml source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.