You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

build-tests.xml 3.8KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project name="DMDirc-tests" default="default" basedir=".">
  3. <description>Test-related tasks for DMDirc.</description>
  4. <property name="clover.jar" location="lib/clover.jar"/>
  5. <taskdef resource="cloverlib.xml" classpath="${clover.jar}"/>
  6. <taskdef resource="cloverjunitlib.xml" classpath="${clover.jar}"/>
  7. <condition property="clover.installed">
  8. <and>
  9. <available classname="com.cenqua.clover.CloverInstr"/>
  10. <available file="lib/clover.license"/>
  11. </and>
  12. </condition>
  13. <target name="with.clover" depends="clean" if="clover.installed"
  14. description="Set up Clover to instrument tests.">
  15. <clover-clean/>
  16. <clover-env/>
  17. <clover-setup>
  18. <fileset dir="src/com/" includes="**/*.java" />
  19. <fileset dir="modules/parser/src/" includes="**/*.java" />
  20. <fileset dir="modules/util/src/" includes="**/*.java" />
  21. <fileset dir="modules/plugins/src/" includes="**/*.java" />
  22. <fileset dir="test/">
  23. <include name="**/*.java" />
  24. <exclude name="**/harness/**/*.java" />
  25. </fileset>
  26. <fileset dir="modules/parser/test/">
  27. <include name="**/*.java" />
  28. <exclude name="**/harness/**/*.java" />
  29. </fileset>
  30. <fileset dir="modules/util/test/">
  31. <include name="**/*.java" />
  32. <exclude name="**/harness/**/*.java" />
  33. </fileset>
  34. <fileset dir="modules/plugins/test/">
  35. <include name="**/*.java" />
  36. <exclude name="**/harness/**/*.java" />
  37. </fileset>
  38. <methodContext name="private_ctor" regexp="(.* )?private +[a-zA-Z0-9_$]+ *\( *\).*"/>
  39. </clover-setup>
  40. </target>
  41. <target name="clover.snapshot" depends="with.clover" if="clover.installed">
  42. <clover-snapshot/>
  43. </target>
  44. <target name="clover.xml" if="clover.installed"
  45. description="Generate a Clover XML report.">
  46. <mkdir dir="reports/clover" />
  47. <clover-report>
  48. <current outfile="reports/clover/clover.xml">
  49. <format type="xml" filter="private_ctor"/>
  50. </current>
  51. </clover-report>
  52. </target>
  53. <target name="clover.html" if="clover.installed"
  54. description="Generate a Clover HTML report.">
  55. <mkdir dir="reports/clover" />
  56. <mkdir dir="reports/clover/history" />
  57. <clover-historypoint historydir="reports/clover/history" />
  58. <clover-report>
  59. <current outfile="reports/clover">
  60. <format type="html" filter="private_ctor"/>
  61. </current>
  62. <historical outfile="reports/clover" historydir="reports/clover/history" />
  63. </clover-report>
  64. </target>
  65. <property name="test.reports" value="./junitreports" />
  66. <target name="-do-test-reports">
  67. <mkdir dir="${test.reports}" />
  68. <junitreport todir="${test.reports}">
  69. <fileset dir="${build.test.results.dir}">
  70. <include name="TEST-*.xml" />
  71. </fileset>
  72. <report todir="${test.reports}" />
  73. </junitreport>
  74. </target>
  75. <target name="test-html" depends="with.clover,compile-test,test,clover.html,clover.snapshot"
  76. description="Run tests and generate a Clover HTML report."/>
  77. <target name="test-xml" depends="with.clover,compile-test,test,clover.xml,clover.snapshot"
  78. description="Run tests and generate a Clover XML report."/>
  79. <target name="test-both" depends="test-html,test-xml"
  80. description="Run tests and generate Clover XML and HTML reports."/>
  81. <target name="teamcity-clover-report">
  82. <xslt in="reports/clover/clover.xml" style="checkstyle/clover.xsl" out="teamcity-info.xml" />
  83. </target>
  84. </project>