This is an automated email from the ASF dual-hosted git repository. khmarbaise pushed a commit to branch MENFORCER-268-ci-friendly in repository https://gitbox.apache.org/repos/asf/maven-enforcer.git
commit dc9bc3557d9b685512166716b034ae75780bd730 Author: Karl Heinz Marbaise <[email protected]> AuthorDate: Sat Jan 6 01:01:38 2018 +0100 Another step better. --- .../plugins/enforcer/RequireNoRepositories.java | 10 +++--- .../enforcer/TestRequireNoRepositories.java | 40 +++++++++++++++++++++- 2 files changed, 45 insertions(+), 5 deletions(-) diff --git a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireNoRepositories.java b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireNoRepositories.java index 9d7cbfc..6419b73 100644 --- a/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireNoRepositories.java +++ b/enforcer-rules/src/main/java/org/apache/maven/plugins/enforcer/RequireNoRepositories.java @@ -41,6 +41,8 @@ import org.codehaus.plexus.util.StringUtils; public class RequireNoRepositories extends AbstractNonCacheableEnforcerRule { + private static final String VERSION = " version:"; + /** * Whether to ban non-plugin repositories. By default they are banned. * @@ -132,13 +134,13 @@ public class RequireNoRepositories for ( MavenProject mavenProject : sortedProjects ) { logger.debug( "Scanning project: " + mavenProject.getGroupId() + ":" + mavenProject.getArtifactId() - + " version:" + mavenProject.getVersion() ); + + VERSION + mavenProject.getVersion() ); models.add( mavenProject.getOriginalModel() ); } List<Model> badModels = new ArrayList<Model>(); - StringBuffer newMsg = new StringBuffer(); + StringBuilder newMsg = new StringBuilder(); newMsg.append( "Some poms have repositories defined:\n" ); for ( Model model : models ) @@ -154,7 +156,7 @@ public class RequireNoRepositories { badModels.add( model ); newMsg.append( - model.getGroupId() + ":" + model.getArtifactId() + " version:" + model.getVersion() + model.getGroupId() + ":" + model.getArtifactId() + VERSION + model.getVersion() + " has repositories " + bannedRepos ); } } @@ -170,7 +172,7 @@ public class RequireNoRepositories { badModels.add( model ); newMsg.append( - model.getGroupId() + ":" + model.getArtifactId() + " version:" + model.getVersion() + model.getGroupId() + ":" + model.getArtifactId() + VERSION + model.getVersion() + " has plugin repositories " + bannedRepos ); } } diff --git a/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/TestRequireNoRepositories.java b/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/TestRequireNoRepositories.java index cd92ae2..0da2d64 100644 --- a/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/TestRequireNoRepositories.java +++ b/enforcer-rules/src/test/java/org/apache/maven/plugins/enforcer/TestRequireNoRepositories.java @@ -121,7 +121,7 @@ public class TestRequireNoRepositories releasePolicy.setEnabled( true ); releasePolicy.setUpdatePolicy( "never" ); r.setReleases( releasePolicy ); - + return r; } @@ -152,6 +152,14 @@ public class TestRequireNoRepositories return project; } + private MavenProject addEmptyRepository( MavenProject project ) + { + Model originalModel = project.getOriginalModel(); + List<Repository> repositories = new ArrayList<Repository>(); + when( originalModel.getRepositories() ).thenReturn( repositories ); + return project; + } + private MavenProject addPluginRepository( MavenProject project, Repository r ) { Model originalModel = project.getOriginalModel(); @@ -161,6 +169,14 @@ public class TestRequireNoRepositories return project; } + private MavenProject addEmptyPluginRepository( MavenProject project ) + { + Model originalModel = project.getOriginalModel(); + List<Repository> repositories = new ArrayList<Repository>(); + when( originalModel.getPluginRepositories() ).thenReturn( repositories ); + return project; + } + /** * This model contains a single module maven project without any repository. */ @@ -356,4 +372,26 @@ public class TestRequireNoRepositories rule.execute( helper ); } + @Test + public void testAllBannedWithEmptyRepository() + throws EnforcerRuleException + { + MavenProject baseProject = createStandAloneProject(); + addEmptyRepository( baseProject ); + setupSortedProjects( Collections.singletonList( baseProject ) ); + + rule.execute( helper ); + } + + @Test + public void testAllBannedWithEmptyPluginRepository() + throws EnforcerRuleException + { + MavenProject baseProject = createStandAloneProject(); + addEmptyPluginRepository( baseProject ); + setupSortedProjects( Collections.singletonList( baseProject ) ); + + rule.execute( helper ); + } + } -- To stop receiving notification emails like this one, please contact "[email protected]" <[email protected]>.
