Improve structure management for composite test definitions
authorMathieu Baudier <mbaudier@argeo.org>
Wed, 21 Nov 2007 12:56:12 +0000 (12:56 +0000)
committerMathieu Baudier <mbaudier@argeo.org>
Wed, 21 Nov 2007 12:56:12 +0000 (12:56 +0000)
git-svn-id: https://svn.argeo.org/slc/trunk@729 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc

org.argeo.slc/src/main/java/org/argeo/slc/ant/SlcProjectHelper.java
org.argeo.slc/src/main/java/org/argeo/slc/core/test/tree/CompositeTreeTestDefinition.java
org.argeo.slc/src/main/java/org/argeo/slc/core/test/tree/TreeTestResultPersister.java

index d877e2b4bf76bee1f8a48ba72286c50bc3333ec8..9a13834dc1660139e158bd2c1491c1ca344b7f3c 100644 (file)
@@ -104,7 +104,7 @@ public class SlcProjectHelper extends ProjectHelperImpl {
                        final String description;\r
                        if (i == 0) {// project itself\r
                                description = project.getDescription() != null ? project\r
-                                               .getDescription() : "";\r
+                                               .getDescription() : "[no desc]";\r
                        } else {\r
                                description = slcAntConfig.getDescriptionForDir(dir);\r
                        }\r
index d5fa0095e54945433a2c7cfb3343f35d191264fc..25479069b70e66ab9578609e3528ec76a91c814f 100644 (file)
@@ -27,6 +27,7 @@ public class CompositeTreeTestDefinition implements TestDefinition,
        private List<TestDefinition> tasks = null;\r
        private List<TreeSPath> taskPaths = null;\r
        private TreeSPath path;\r
+       private StructureRegistry registry;\r
 \r
        public void execute(TestRun testRun) {\r
                log.info("Execute sequence of test definitions...");\r
@@ -35,7 +36,7 @@ public class CompositeTreeTestDefinition implements TestDefinition,
                for (TestDefinition task : tasks) {\r
                        TestResult result = testRun.getTestResult();\r
                        if (result instanceof StructureAware) {\r
-                               ((StructureAware) result).notifyCurrentPath(null, taskPaths\r
+                               ((StructureAware) result).notifyCurrentPath(registry, taskPaths\r
                                                .get(i));\r
                        }\r
 \r
@@ -43,7 +44,7 @@ public class CompositeTreeTestDefinition implements TestDefinition,
 \r
                        // Reset current path in case it has been changed\r
                        if (result instanceof StructureAware) {\r
-                               ((StructureAware) result).notifyCurrentPath(null, path);\r
+                               ((StructureAware) result).notifyCurrentPath(registry, path);\r
                        }\r
                        i++;\r
                }\r
@@ -59,7 +60,8 @@ public class CompositeTreeTestDefinition implements TestDefinition,
 \r
        public void notifyCurrentPath(StructureRegistry registry, StructurePath path) {\r
                this.path = (TreeSPath) path;\r
-\r
+               this.registry = registry;\r
+               \r
                // clear task paths\r
                taskPaths.clear();\r
 \r
@@ -69,7 +71,7 @@ public class CompositeTreeTestDefinition implements TestDefinition,
                        if (task instanceof StructureElement) {\r
                                element = (StructureElement) task;\r
                        } else {\r
-                               element = new SimpleSElement("<no desc>");\r
+                               element = new SimpleSElement("[no desc]");\r
                        }\r
                        TreeSPath taskPath = this.path.createChild(count.toString());\r
                        registry.register(taskPath, element);\r
index c16e70a76fb8cce420c38a59695f1dfc3ebf5b70..ca92b49084e9f045fcc5ed824e2d1b0987a2b7d5 100644 (file)
@@ -112,6 +112,11 @@ public class TreeTestResultPersister extends AsynchronousTreeTestResultListener
 \r
        private void syncPath(TreeSRegistry registry,\r
                        StructureRegistry localRegistry, TreeSPath path) {\r
+               if (path.getParent() != null) {\r
+                       TreeSPath parent = treeSPathDao.getOrCreate(path.getParent());\r
+                       syncPath(registry, localRegistry, parent);\r
+               }\r
+\r
                if (registry.getElement(path) == null) {\r
                        if (localRegistry != null) {\r
                                registry.register(path, localRegistry.getElement(path));\r
@@ -121,9 +126,5 @@ public class TreeTestResultPersister extends AsynchronousTreeTestResultListener
                        treeSRegistryDao.update(registry);\r
                }\r
 \r
-               if (path.getParent() != null) {\r
-                       TreeSPath parent = treeSPathDao.getOrCreate(path.getParent());\r
-                       syncPath(registry, localRegistry, parent);\r
-               }\r
        }\r
 }\r