@@ -46,21 +46,21 @@ SPDX-License-Identifier: Apache-2.0
4646 <path refid =" classpath" />
4747 </path >
4848
49+ <delete dir =" ${junit.dir}" />
4950 <mkdir dir =" ${junit.dir}" />
5051 </target >
5152
52- <target name =" unit-tests " depends = " build, load- junit, init-unit-tests " description = " Run all JUnit tests" >
53- < delete dir = " {junit.dir} " / >
53+ <macrodef name =" run- junit- tests" >
54+ < sequential >
5455 <junit fork =" true" printSummary =" true" showOutput =" false" failureproperty =" junit.failed" timeout =" 600000" >
5556 <assertions ><enable /></assertions >
5657 <formatter type =" xml" />
5758 <classpath refid =" classpath.junit" />
5859 <sysproperty key =" java.awt.headless" value =" true" />
5960 <batchtest fork =" true" todir =" ${junit.dir}" >
60- <fileset dir =" ${class.dir}" >
61- <include name =" **/*Test.*" />
62- <exclude name =" **/*$*Test.*" />
63- </fileset >
61+ <fileset dir =" ${class.dir}" >
62+ <patternset refid =" test.sources" />
63+ </fileset >
6464 </batchtest >
6565 </junit >
6666 <junitreport todir =" ${junit.dir}" >
@@ -69,6 +69,41 @@ SPDX-License-Identifier: Apache-2.0
6969 </junitreport >
7070 <move file =" junit-noframes.html" tofile =" JUnit.html" />
7171 <fail if =" junit.failed" message =" JUnit tests failed, look at JUnit.html" />
72+ </sequential >
73+ </macrodef >
74+
75+ <target name =" unit-tests-quick" depends =" build, load-junit, init-unit-tests"
76+ description =" Run a minimal set of JUnit tests that are considered quick" >
77+ <!-- A simpler way for specifying quick tests would be an annotation on class or method level.
78+ JUnit 5 might bring such features. However, we still depend on JUnit 4. -->
79+ <patternset id =" test.sources" >
80+ <include name =" **/solvers/bitwuzla/BitwuzlaNativeApiTest.*" />
81+ <include name =" **/solvers/boolector/BoolectorNativeApiTest.*" />
82+ <include name =" **/solvers/cvc4/CVC4NativeAPITest.*" />
83+ <include name =" **/solvers/cvc5/CVC5NativeAPITest.*" />
84+ <include name =" **/solvers/mathsat5/Mathsat5AbstractNativeApiTest.*" />
85+ <include name =" **/solvers/mathsat5/Mathsat5NativeApiTest.*" />
86+ <include name =" **/solvers/mathsat5/Mathsat5OptimizationNativeApiTest.*" />
87+ <include name =" **/solvers/opensmt/OpenSmtNativeAPITest.*" />
88+ <include name =" **/solvers/yices2/Yices2NativeApiTest.*" />
89+ <include name =" **/test/FloatingPointNumberTest.*" />
90+ <include name =" **/test/FormulaManagerTest.*" />
91+ <include name =" **/test/NumeralFormulaManagerTest.*" />
92+ <include name =" **/test/ProverEnvironmentTest.*" />
93+ <include name =" **/test/RationalFormulaManagerTest.*" />
94+ <include name =" **/test/SolverContextFactoryTest.*" />
95+ <include name =" **/test/SolverContextTest.*" />
96+ </patternset >
97+ <run-junit-tests />
98+ </target >
99+
100+ <target name =" unit-tests" depends =" build, load-junit, init-unit-tests"
101+ description =" Run all JUnit tests" >
102+ <patternset id =" test.sources" >
103+ <include name =" **/*Test.*" />
104+ <exclude name =" **/*$*Test.*" />
105+ </patternset >
106+ <run-junit-tests />
72107 </target >
73108
74109 <target name =" load-jacoco" depends =" resolve-dependencies" >
@@ -78,7 +113,6 @@ SPDX-License-Identifier: Apache-2.0
78113 </target >
79114
80115 <target name =" unit-tests-coverage" depends =" build, load-junit, load-jacoco, init-unit-tests" description =" Run all JUnit tests with coverage report" >
81- <delete dir =" {junit.dir}" />
82116 <jacoco : coverage destfile =" ${junit.dir}/jacoco.exec" excludes =" **/*Test*:**/Dummy*" >
83117 <junit fork =" true" printSummary =" true" showOutput =" false" failureproperty =" junit.failed" timeout =" 600000" >
84118 <assertions ><enable /></assertions >
0 commit comments