<fileset dir="${main.libdir}">\r
<include name="**/*.jar" />\r
</fileset>\r
- <pathelement location="${compile.base}/${main.artifact}" />\r
+ <pathelement location="${dist.jar}/${main.artifact}.jar" />\r
</path>\r
\r
<import file="slc-factory-macrodefs.xml" />\r
<compile artifact="${main.artifact}" srcdir="${main.srcdir}" />\r
</target>\r
\r
- <target name="build.test" depends="build.main">\r
+ <target name="jar.main" depends="build.main">\r
+ <createJar artifact="${main.artifact}" srcdir="${main.srcdir}" />\r
+ </target>\r
+\r
+ <target name="build.test" depends="jar.main">\r
<compile artifact="${test.artifact}"\r
srcdir="${test.srcdir}"\r
classpathref="cp.test" />\r
</target>\r
\r
- <target name="jar.main" depends="build.test">\r
- <createJar artifact="${main.artifact}" srcdir="${main.srcdir}" />\r
- </target>\r
-\r
<target name="jar.sources" unless="flag.noSources">\r
<createSourcesJar artifact="${main.artifact}" srcdir="${main.srcdir}" />\r
</target>\r
\r
- <target name="jar.test" depends="jar.main,jar.sources">\r
+ <target name="jar.test" depends="build.test">\r
<createJar artifact="${test.artifact}" srcdir="${test.srcdir}" />\r
</target>\r
\r
<fileset dir="${test.srcdir}">\r
<include name="**/*Test*.java" />\r
<exclude name="**/Abstract*.java" />\r
+ <exclude name="**/*TestDef*.java" />\r
+ <exclude name="**/*TestData*.java" />\r
</fileset>\r
</batchtest>\r
</junit>\r
</target>\r
\r
<target name="package.common"\r
- depends="dist.unittest,dist.api,dist.apiWithSlc,dist.dependencies,dist.appli">\r
+ depends="dist.unittest,jar.sources,dist.api,dist.apiWithSlc,dist.dependencies,dist.appli">\r
</target>\r
\r
<target name="dist.package" depends="package.common">\r
}\r
\r
/** Executes only the active paths of the Ant file. */\r
- public static void runActive(File antFile, List<StructurePath> activePaths) {\r
+ public static Project runActive(File antFile,\r
+ List<StructurePath> activePaths) {\r
if (log.isDebugEnabled())\r
log.debug("Runs the " + activePaths.size()\r
+ " provided active paths of Ant file " + antFile);\r
registry.setMode(StructureRegistry.ACTIVE);\r
registry.setActivePaths(activePaths);\r
p.executeTarget(p.getDefaultTarget());\r
+ return p;\r
}\r
\r
/** Executes all paths of the default target of the Ant file. */\r
- public static void runAll(File antFile) {\r
+ public static Project runAll(File antFile) {\r
if (log.isDebugEnabled())\r
log.debug("Runs all paths of Ant file " + antFile);\r
Project p = new Project();\r
p.addReference("ant.projectHelper", helper);\r
helper.parse(p, antFile);\r
p.executeTarget(p.getDefaultTarget());\r
+ return p;\r
}\r
}\r
\r
import java.io.File;\r
\r
+import org.springframework.context.ApplicationContext;\r
+\r
+import org.apache.tools.ant.Project;\r
+\r
import junit.framework.TestCase;\r
\r
import org.argeo.slc.ant.AntRegistryUtil;\r
+import org.argeo.slc.ant.SlcProjectHelper;\r
+import org.argeo.slc.core.structure.tree.TreeSPath;\r
+import org.argeo.slc.core.test.NumericTRId;\r
+import org.argeo.slc.core.test.SimpleResultPart;\r
+import org.argeo.slc.core.test.TestStatus;\r
+import org.argeo.slc.core.test.tree.PartSubList;\r
+import org.argeo.slc.core.test.tree.TreeTestResult;\r
+import org.argeo.slc.dao.test.TestResultDao;\r
\r
public class TestAntBuild extends TestCase {\r
public void testAllRunSimple() {\r
+ File[] reportFiles = new File("src/test/slc/work/results/report/").listFiles();\r
+ for(File file: reportFiles){\r
+ file.delete();\r
+ }\r
+ \r
File slcBaseDir = new File("./src/test/slc").getAbsoluteFile();\r
\r
File antFile = new File(slcBaseDir.getPath()\r
+ "/root/Category1/SubCategory2/build.xml");\r
- AntRegistryUtil.runAll(antFile);\r
+ Project p = AntRegistryUtil.runAll(antFile);\r
+\r
+ ApplicationContext context = (ApplicationContext) p\r
+ .getReference(SlcProjectHelper.REF_ROOT_CONTEXT);\r
+\r
+ TestResultDao testResultDao = (TestResultDao) context\r
+ .getBean("testResultDao");\r
+\r
+ NumericTRId numericTRId = new NumericTRId();\r
+ numericTRId.setValue(1l);\r
+ TreeTestResult testResult1 = (TreeTestResult) testResultDao\r
+ .getTestResult(numericTRId);\r
+ // assertPart(testResult1, "", 0, TestStatus.PASSED, "");\r
+ assertPart(\r
+ testResult1,\r
+ "#root#Category1#SubCategory2#testComplex#slc.test0#0",\r
+ 0,\r
+ TestStatus.PASSED,\r
+ "Sub task with path #root#Category1#SubCategory2#testComplex#slc.test0#0 executed");\r
+ assertPart(testResult1,\r
+ "#root#Category1#SubCategory2#testSimple#slc.test0", 1,\r
+ TestStatus.FAILED,\r
+ "Compare nato-expected.txt with nato-reached.txt");\r
+\r
+ numericTRId.setValue(2l);\r
+ TreeTestResult testResult2 = (TreeTestResult) testResultDao\r
+ .getTestResult(numericTRId);\r
+ assertPart(testResult2,\r
+ "#root#Category1#SubCategory2#testSimple#slc.test2", 1,\r
+ TestStatus.PASSED,\r
+ "Compare eu-reform-expected.txt with eu-reform-reached.txt");\r
+ assertPart(testResult2,\r
+ "#root#Category1#SubCategory2#testSimple#slc.test3", 1,\r
+ TestStatus.FAILED,\r
+ "Compare eu-reform-expected.txt with eu-reform-reached.txt");\r
+\r
+ assertTrue(new File("src/test/slc/work/results/report/index.html")\r
+ .exists());\r
+ assertTrue(new File("src/test/slc/work/results/report/1.html").exists());\r
+ assertTrue(new File("src/test/slc/work/results/report/2.html").exists());\r
+ }\r
\r
+ private void assertPart(TreeTestResult testResult, String pathStr,\r
+ int index, Integer status, String message) {\r
+ TreeSPath path = TreeSPath.parseToCreatePath(pathStr, '#');\r
+ PartSubList list = testResult.getResultParts().get(path);\r
+ SimpleResultPart part = (SimpleResultPart) list.getParts().get(index);\r
+ assertEquals(status, part.getStatus());\r
+ assertEquals(message, part.getMessage());\r
}\r
}\r
class="org.springframework.jdbc.datasource.SingleConnectionDataSource"\r
destroy-method="destroy">\r
<property name="driverClassName" value="org.hsqldb.jdbcDriver" />\r
+ <!-- <property name="url"\r
+ value="jdbc:hsqldb:file:${slc.workDir}/results/hsqldb/db;shutdown=true" />-->\r
<property name="url"\r
- value="jdbc:hsqldb:file:${slc.workDir}/results/hsqldb/db;shutdown=true" />\r
+ value="jdbc:hsqldb:mem:results" />\r
<property name="username" value="sa" />\r
<property name="password" value="" />\r
<property name="suppressClose" value="true" />\r
cache.use_minimal_puts=false\r
max_fetch_depth=3\r
current_session_context_class=thread\r
- hibernate.hbm2ddl.auto=update\r
+ hibernate.hbm2ddl.auto=create\r
</value>\r
</property>\r
</bean>\r
\r
<bean id="testResult"\r
class="org.argeo.slc.core.test.tree.TreeTestResult">\r
- <property name="numericResultId" ref="testResultId" />\r
+ <property name="numericResultId">\r
+ <bean class="org.argeo.slc.core.test.NumericTRId">\r
+ <property name="value" value="1" />\r
+ </bean>\r
+ </property>\r
<property name="listeners">\r
<list>\r
<ref bean="resultLogger" />\r
</bean>\r
\r
<bean id="testResult2"\r
- class="org.argeo.slc.core.test.tree.TreeTestResult"\r
- >\r
- <property name="numericResultId" ref="testResultId" />\r
+ class="org.argeo.slc.core.test.tree.TreeTestResult">\r
+ <property name="numericResultId">\r
+ <bean class="org.argeo.slc.core.test.NumericTRId">\r
+ <property name="value" value="2" />\r
+ </bean>\r
+ </property>\r
<property name="listeners">\r
<list>\r
<ref bean="resultLogger" />\r
</list>\r
</property>\r
</bean>\r
-\r
+<!-- \r
<bean id="testResultId" class="org.argeo.slc.core.test.NumericTRId"\r
init-method="init" scope="prototype">\r
</bean>\r
-\r
+-->\r
<bean\r
class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer" />\r
\r
\r
<bean id="exampleDeployedSystem"\r
class="org.argeo.slc.example.ExampleDeployedSystem">\r
- <property name="skipFreq" value="2"/>\r
+ <property name="skipFreq" value="2" />\r
<property name="deployedSystemId">\r
<bean class="org.argeo.slc.core.deploy.NumericDSId">\r
<property name="value" value="123456" />\r
\r
<bean id="exampleDeployedSystem2"\r
class="org.argeo.slc.example.ExampleDeployedSystem">\r
- <property name="skipFreq" value="3"/>\r
+ <property name="skipFreq" value="3" />\r
<property name="deployedSystemId">\r
<bean class="org.argeo.slc.core.deploy.NumericDSId">\r
<property name="value" value="654321" />\r