X-Git-Url: http://git.argeo.org/?a=blobdiff_plain;f=org.argeo.slc.agent%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fant%2Ftest%2FSlcReportTask.java;fp=org.argeo.slc.agent%2Fsrc%2Fmain%2Fjava%2Forg%2Fargeo%2Fslc%2Fant%2Ftest%2FSlcReportTask.java;h=75877625d72fffc8433961c0c449b65250412a74;hb=a7b136d40c14e4559faa5c34dc2b4dd2170ac2d4;hp=0000000000000000000000000000000000000000;hpb=956079f214e8b52944d1b5fe4576a9a7587ebb6e;p=gpl%2Fargeo-slc.git diff --git a/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/test/SlcReportTask.java b/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/test/SlcReportTask.java new file mode 100644 index 000000000..75877625d --- /dev/null +++ b/org.argeo.slc.agent/src/main/java/org/argeo/slc/ant/test/SlcReportTask.java @@ -0,0 +1,40 @@ +package org.argeo.slc.ant.test; + +import org.argeo.slc.ant.structure.SAwareTask; +import org.argeo.slc.core.structure.StructureAware; +import org.argeo.slc.core.structure.StructureRegistry; +import org.argeo.slc.core.test.TestReport; +import org.argeo.slc.core.test.TestResult; + +/** Ant tasks generating a report. */ +public class SlcReportTask extends SAwareTask { + private String result; + private String report; + + @Override + public void executeActions(String mode) { + if (!mode.equals(StructureRegistry.READ)) { + TestResult testResult = null; + if (result != null) { + testResult = (TestResult) getContext().getBean(result); + } + TestReport testReport = (TestReport) getContext().getBean(report); + if (testReport instanceof StructureAware) { + ((StructureAware) testReport).notifyCurrentPath(getRegistry(), + null); + } + testReport.generateTestReport(testResult); + } + } + + /** Sets the bean name of the result to close. */ + public void setResult(String bean) { + this.result = bean; + } + + /** Sets the bean name of the report to generate. */ + public void setReport(String report) { + this.report = report; + } + +}