This is an automated email from the ASF dual-hosted git repository. gnodet pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/maven.git
The following commit(s) were added to refs/heads/master by this push: new 35022a3616 Fix newlines and indentation in ModelBuildingException message (#1257) 35022a3616 is described below commit 35022a361672e35b243c3dc1ee35ea988c86bf79 Author: Guillaume Nodet <gno...@gmail.com> AuthorDate: Fri Sep 22 12:54:27 2023 +0200 Fix newlines and indentation in ModelBuildingException message (#1257) --- .../model/building/ModelBuildingException.java | 9 ++--- .../model/building/ModelBuildingExceptionTest.java | 42 ++++++++++++++++++++++ 2 files changed, 47 insertions(+), 4 deletions(-) diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuildingException.java b/maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuildingException.java index 2c60aacbb3..ffb3e3357b 100644 --- a/maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuildingException.java +++ b/maven-model-builder/src/main/java/org/apache/maven/model/building/ModelBuildingException.java @@ -128,7 +128,8 @@ public class ModelBuildingException extends Exception { return null; } - private static String toMessage(String modelId, List<ModelProblem> problems) { + // Package protected for test + static String toMessage(String modelId, List<ModelProblem> problems) { StringWriter buffer = new StringWriter(1024); PrintWriter writer = new PrintWriter(buffer); @@ -140,17 +141,17 @@ public class ModelBuildingException extends Exception { writer.print(" for "); writer.print(modelId); } - writer.println(); for (ModelProblem problem : problems) { - writer.print("["); + writer.println(); + writer.print(" - ["); writer.print(problem.getSeverity()); writer.print("] "); writer.print(problem.getMessage()); String location = ModelProblemUtils.formatLocation(problem, modelId); if (!location.isEmpty()) { writer.print(" @ "); - writer.println(location); + writer.print(location); } } diff --git a/maven-model-builder/src/test/java/org/apache/maven/model/building/ModelBuildingExceptionTest.java b/maven-model-builder/src/test/java/org/apache/maven/model/building/ModelBuildingExceptionTest.java new file mode 100644 index 0000000000..387056d7a7 --- /dev/null +++ b/maven-model-builder/src/test/java/org/apache/maven/model/building/ModelBuildingExceptionTest.java @@ -0,0 +1,42 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +package org.apache.maven.model.building; + +import java.util.Arrays; + +import org.junit.jupiter.api.Test; + +import static org.junit.jupiter.api.Assertions.assertEquals; + +class ModelBuildingExceptionTest { + + @Test + void testMessage() { + DefaultModelProblem pb1 = + new DefaultModelProblem("message1", ModelProblem.Severity.ERROR, null, "source", 0, 0, "modelId", null); + DefaultModelProblem pb2 = + new DefaultModelProblem("message2", ModelProblem.Severity.ERROR, null, "source", 0, 0, "modelId", null); + String msg = ModelBuildingException.toMessage("modelId", Arrays.asList(pb1, pb2)); + assertEquals( + "2 problems were encountered while building the effective model for modelId" + System.lineSeparator() + + " - [ERROR] message1" + System.lineSeparator() + + " - [ERROR] message2", + msg); + } +}