Skip to content

Commit 3994d80

Browse files
author
Vincent Potucek
committed
Pull apache#2292: Modernize codebase with Java improvements - functionalize DefaultModelProcessor#read
1 parent 57e584a commit 3994d80

File tree

1 file changed

+22
-6
lines changed

1 file changed

+22
-6
lines changed

impl/maven-impl/src/test/java/org/apache/maven/impl/model/DefaultModelProcessorTest.java

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,12 +35,7 @@
3535
import org.junit.jupiter.api.io.TempDir;
3636

3737
import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
38-
import static org.junit.jupiter.api.Assertions.assertEquals;
39-
import static org.junit.jupiter.api.Assertions.assertInstanceOf;
40-
import static org.junit.jupiter.api.Assertions.assertNotNull;
41-
import static org.junit.jupiter.api.Assertions.assertNull;
42-
import static org.junit.jupiter.api.Assertions.assertThrows;
43-
import static org.junit.jupiter.api.Assertions.assertTrue;
38+
import static org.junit.jupiter.api.Assertions.*;
4439
import static org.mockito.Mockito.any;
4540
import static org.mockito.Mockito.mock;
4641
import static org.mockito.Mockito.when;
@@ -233,7 +228,28 @@ void locateExistingPomShouldRejectPomInDifferentDirectory() {
233228

234229

235230

231+
@Test
232+
void readWithParserThrowingModelParserExceptionShouldAddAsSuppressed() throws Exception {
233+
ModelXmlFactory factory = mock(ModelXmlFactory.class);
234+
ModelParser parser = mock(ModelParser.class);
235+
XmlReaderRequest request = mock(XmlReaderRequest.class);
236+
Path pomPath = Path.of("project/pom.xml");
237+
when(request.getPath()).thenReturn(pomPath);
238+
when(request.isStrict()).thenReturn(true);
239+
240+
ModelParserException parserException = new ModelParserException("Parser error");
241+
when(parser.locateAndParse(any(), any())).thenThrow(parserException);
242+
243+
Model expectedModel = mock(Model.class);
244+
when(factory.read(request)).thenReturn(expectedModel);
245+
246+
Model result = new DefaultModelProcessor(factory, List.of(parser)).read(request);
247+
248+
assertSame(expectedModel, result);
249+
// In this case, since factory succeeds, no exception is thrown
250+
}
236251

237252

238253

254+
239255
}

0 commit comments

Comments
 (0)