Ard Schrijvers pushed to branch feature/projectdocs at cms-community / hippo-repository
Commits: e80cd0f5 by Peter Centgraf at 2017-10-10T16:44:35+02:00 REPO-1853 Suppress some expected warnings during unit tests (cherry picked from commit 12a7c900d0943881b549a8a796476eb701a69b5c) - - - - - ce93012c by Peter Centgraf at 2017-10-10T17:07:11+02:00 REPO-1852 Tweak DefinitionMergeService.recursiveAdd to avoid redundantly merging the same definition to a ConfigNode twice, which results in excessive warnings about duplicate values (cherry picked from commit d162fbc33bc1df75d6759026924ebe76e839889b) (cherry picked from commit 5b49533fbe07d1c6665ea3aa8be60b94de215094) - - - - - 8564cbd0 by Sergey Shepelevich at 2017-10-12T15:39:34+02:00 REPO-1850 Fix groovy script Changed '&gt;' to '>' - - - - - d3fa190f by Ard Schrijvers at 2017-10-12T16:11:16+02:00 REPO-1854 merge from master into projectdocs branch - - - - - 4 changed files: - engine/src/main/java/org/onehippo/cm/engine/autoexport/DefinitionMergeService.java - engine/src/test/java/org/onehippo/cm/engine/ConfigurationContentServiceTest.java - engine/src/test/java/org/onehippo/cm/engine/JcrContentProcessorTest.java - scripts/src/main/resources/hcm-config/versions-cleaner.groovy Changes: ===================================== engine/src/main/java/org/onehippo/cm/engine/autoexport/DefinitionMergeService.java ===================================== --- a/engine/src/main/java/org/onehippo/cm/engine/autoexport/DefinitionMergeService.java +++ b/engine/src/main/java/org/onehippo/cm/engine/autoexport/DefinitionMergeService.java @@ -1008,15 +1008,15 @@ public class DefinitionMergeService { final List<DefinitionNodeImpl> newDefs = new ArrayList<>(); recursiveAdd(incomingDefNode, parentDefNode, newDefs); - // update model -- the first def was already merged to the configNode tree, so it needs special handling - final DefinitionNodeImpl newChildOfExistingDef = newDefs.get(0); + // update model -- the existing parent def was already merged to the configNode tree, so it needs special handling + final DefinitionNodeImpl newChildOfExistingDef = parentDefNode.getNode(incomingDefNode.getName()); final ConfigurationTreeBuilder builder = new ConfigurationTreeBuilder(model.getConfigurationRootNode()); final ConfigurationNodeImpl newConfigNode = builder.createChildNode(existingParent, newChildOfExistingDef.getName(), newChildOfExistingDef); builder.mergeNode(newConfigNode, newChildOfExistingDef); // now update all the other (possible) defs that were split off into new source files - for (final DefinitionNodeImpl newDef : newDefs.subList(1, newDefs.size())) { + for (final DefinitionNodeImpl newDef : newDefs) { builder.push(newDef.getDefinition()); } } @@ -1270,7 +1270,6 @@ public class DefinitionMergeService { to = toParent.addNode(from.getName()); } - newDefs.add(to); recursiveCopy(from, to, newDefs); } ===================================== engine/src/test/java/org/onehippo/cm/engine/ConfigurationContentServiceTest.java ===================================== --- a/engine/src/test/java/org/onehippo/cm/engine/ConfigurationContentServiceTest.java +++ b/engine/src/test/java/org/onehippo/cm/engine/ConfigurationContentServiceTest.java @@ -293,8 +293,14 @@ public class ConfigurationContentServiceTest { c4.getNode().setOrderBefore("c2"); c5.getNode().setOrderBefore(""); - List<ContentDefinitionImpl> sortedDefinitions = ConfigurationContentService.getSortedDefinitions(module.getContentDefinitions(), true); - assertEquals("[c2, c4, c3, c1, c5]", sortedNames(sortedDefinitions)); + try (Log4jInterceptor listener = Log4jInterceptor.onWarn().trap(ConfigurationContentService.class).build()) { + List<ContentDefinitionImpl> sortedDefinitions = ConfigurationContentService.getSortedDefinitions(module.getContentDefinitions(), true); + assertEquals("[c2, c4, c3, c1, c5]", sortedNames(sortedDefinitions)); + assertTrue(listener.messages().anyMatch(m -> + m.contains("Following node(s) reference the same node multiple times in order before:") + && m.contains("/c3 in stubGroup/stubProject/stubModule [content: s3],") + && m.contains("/c5 in stubGroup/stubProject/stubModule [content: s5]"))); + } } private static String sortedNames(List<ContentDefinitionImpl> definitions) { ===================================== engine/src/test/java/org/onehippo/cm/engine/JcrContentProcessorTest.java ===================================== --- a/engine/src/test/java/org/onehippo/cm/engine/JcrContentProcessorTest.java +++ b/engine/src/test/java/org/onehippo/cm/engine/JcrContentProcessorTest.java @@ -200,8 +200,7 @@ public class JcrContentProcessorTest extends RepositoryTestCase { " double: 3.1415\n" + " string: hello world"; - try - { + try (Log4jInterceptor ignored = Log4jInterceptor.onWarn().deny(JcrContentProcessor.class).build()) { applyAndSaveDefinitions(new String[]{source3}); fail("Should fail because of missing order before node"); } catch(RuntimeException ex) { ===================================== scripts/src/main/resources/hcm-config/versions-cleaner.groovy ===================================== --- a/scripts/src/main/resources/hcm-config/versions-cleaner.groovy +++ b/scripts/src/main/resources/hcm-config/versions-cleaner.groovy @@ -27,12 +27,8 @@ import org.onehippo.repository.update.BaseNodeUpdateVisitor import javax.jcr.Node import javax.jcr.version.Version -import javax.jcr.version.VersionManager import javax.jcr.version.VersionHistory - -import java.util.ArrayList -import java.util.Collections -import java.util.List +import javax.jcr.version.VersionManager /** * Truncates the version history, retaining only the latest @@ -85,7 +81,7 @@ class VersionsCleaner extends BaseNodeUpdateVisitor { } // remove versions int removeCount = versions.size() - retainCount - boolean remove = removeCount > 0 + boolean remove = removeCount > 0 if (remove) { log.info "Removing ${removeCount} versions of node ${node.path}" } View it on GitLab: https://code.onehippo.org/cms-community/hippo-repository/compare/1fd19d533e62690af2a05d10d9c0b8c8fd3ef07c...d3fa190f807f3fd122f2aaf78fed0c34c98bedca --- View it on GitLab: https://code.onehippo.org/cms-community/hippo-repository/compare/1fd19d533e62690af2a05d10d9c0b8c8fd3ef07c...d3fa190f807f3fd122f2aaf78fed0c34c98bedca You're receiving this email because of your account on code.onehippo.org.
_______________________________________________ Hippocms-svn mailing list Hippocms-svn@lists.onehippo.org https://lists.onehippo.org/mailman/listinfo/hippocms-svn