Subversion Repositories DevTools

Rev

Blame | Last modification | View Log | RSS feed

<project name="clover-task">
        
        <using name="clover" version="1.2.4_02.cots"/>
        
        <taskdef resource="clovertasks">
                <classpath>
                        <pathelement path="${using.clover.basedir}/jar/clover.jar"/>
                </classpath>
        </taskdef>
        
        
        <macrodef name     = "clover-on">
            <attribute name="database" default="${user.home}/${ant.project.name}_coverage.db"/>
                <sequential>
                        <clover-setup initString="${coverage.db}" flushpolicy="interval" flushinterval="5000"/>
                </sequential>
        </macrodef>
        
        
        <macrodef name     = "clover-off">
            <attribute name="database" default="${user.home}/${ant.project.name}_coverage.db"/>
                <sequential>
                        <clover-setup initString="${coverage.db}" enabled="false"/>
                
                        <!-- removes the class and jar files from the clover tests -->
                        <delete>
                                <fileset dir="${basedir}/build" includes="**/*.class"/>
                                <fileset dir="${basedir}/build" includes="**/*.jar"/>
                        </delete>
                        
                </sequential>
        </macrodef>
        
        
        <macrodef name     = "clover.report.html">
            <element name="clover-fileset" optional="yes" implicit="yes" description="Anything you can put in a fileset."/>
                <sequential>
                        <mkdir dir="${basedir}/build/pkg/doc/coverage-tests"/>

                        <clover-report>
                                <current outfile="${basedir}/build/pkg/doc/coverage-tests" title="${ant.project.name}" summary="false">
                                        <clover-fileset/>
                                        <format type="html"/>
                                </current>
                        </clover-report>
                </sequential>
        </macrodef>
        
        
        <target name        = "with.clover"
                        description = "Prepares for coverage instrumentation.">
                        
                <clover-on/>

        </target>

        
        <target name        = "without.clover"
                description = "Deactivates coverage instrumentation.">
                        
                <clover-off/>
                
        </target>

</project>