diff options
author | Marc R. Hoffmann <hoffmann@mountainminds.com> | 2013-03-20 11:55:53 +0100 |
---|---|---|
committer | Marc R. Hoffmann <hoffmann@mountainminds.com> | 2013-05-23 22:21:25 +0200 |
commit | 55fae171b754e20062fae7cdb2d5feae8ee54017 (patch) | |
tree | 5dfac8aae54da8cb7585f63e6433caf75ccd7531 /org.jacoco.ant.test | |
parent | ccbbc428f5bad06f43ae6c42f9691a1c9f5a2f73 (diff) | |
download | jacoco-55fae171b754e20062fae7cdb2d5feae8ee54017.tar.gz |
New coverage check implementation.
New report APIs to check coverage, support for coverage checks in Ant,
rework Maven check goal implementation based on new APIs.
Diffstat (limited to 'org.jacoco.ant.test')
-rw-r--r-- | org.jacoco.ant.test/src/org/jacoco/ant/ReportTaskTest.xml | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/org.jacoco.ant.test/src/org/jacoco/ant/ReportTaskTest.xml b/org.jacoco.ant.test/src/org/jacoco/ant/ReportTaskTest.xml index 998358e8..b718c5b2 100644 --- a/org.jacoco.ant.test/src/org/jacoco/ant/ReportTaskTest.xml +++ b/org.jacoco.ant.test/src/org/jacoco/ant/ReportTaskTest.xml @@ -411,6 +411,74 @@ <contains string="${testReportXmlEncoding.content}" substring="encoding="UTF-16""/> </au:assertTrue> </target> + + <!-- Coverage Check --> + + <target name="testReportCheckOk"> + <jacoco:report> + <structure name="Test"> + <classfiles> + <fileset dir="${org.jacoco.ant.reportTaskTest.classes.dir}" includes="**/*.class"/> + </classfiles> + <sourcefiles encoding="UTF-8"> + <fileset dir="${org.jacoco.ant.reportTaskTest.sources.dir}" /> + </sourcefiles> + </structure> + <check> + <rule element="CLASS"> + <limit counter="METHOD" value="MISSEDCOUNT" maximum="100"/> + </rule> + </check> + </jacoco:report> + </target> + + <target name="testReportCheckFailed"> + <au:expectfailure expectedMessage="Coverage check failed due to violated rules."> + <jacoco:report> + <structure name="Test"> + <classfiles> + <fileset dir="${org.jacoco.ant.reportTaskTest.classes.dir}" includes="**/*.class"/> + </classfiles> + <sourcefiles encoding="UTF-8"> + <fileset dir="${org.jacoco.ant.reportTaskTest.sources.dir}" /> + </sourcefiles> + </structure> + <check> + <rule element="BUNDLE"> + <limit counter="INSTRUCTION" value="COVEREDRATIO" minimum="0.90"/> + </rule> + </check> + </jacoco:report> + </au:expectfailure> + <au:assertLogContains level="error" text="instructions covered ratio is 0.00, but expected minimum is 0.90"/> + </target> + + <target name="testReportCheckSetPropertyOnly"> + <jacoco:report> + <structure name="Test"> + <classfiles> + <fileset dir="${org.jacoco.ant.reportTaskTest.classes.dir}" includes="**/*.class"/> + </classfiles> + <sourcefiles encoding="UTF-8"> + <fileset dir="${org.jacoco.ant.reportTaskTest.sources.dir}" /> + </sourcefiles> + </structure> + <check failonviolation="false" violationsproperty="violation"> + <rule element="BUNDLE"> + <limit counter="METHOD" value="COVEREDRATIO" minimum="0.50"/> + <limit counter="INSTRUCTION" value="COVEREDRATIO" minimum="0.90"/> + </rule> + </check> + </jacoco:report> + <au:assertLogContains level="error" text="methods covered ratio is 0.00, but expected minimum is 0.50"/> + <au:assertLogContains level="error" text="instructions covered ratio is 0.00, but expected minimum is 0.90"/> + <au:assertTrue message="Property is not set"> + <contains string="${violation}" substring="methods covered ratio is 0.00, but expected minimum is 0.50"/> + </au:assertTrue> + <au:assertTrue message="Property is not set"> + <contains string="${violation}" substring="instructions covered ratio is 0.00, but expected minimum is 0.90"/> + </au:assertTrue> + </target> </project>
\ No newline at end of file |