5050import org .apache .maven .shared .release .config .ReleaseDescriptorBuilder ;
5151import org .apache .maven .shared .release .env .ReleaseEnvironment ;
5252import org .mockito .ArgumentCaptor ;
53+ import org .mockito .Mockito ;
5354import org .mockito .invocation .InvocationOnMock ;
5455import org .mockito .stubbing .Answer ;
5556
@@ -72,6 +73,7 @@ public void testPrepare()
7273 {
7374 File testFile = getTestFile ( "target/test-classes/mojos/prepare/prepare.xml" );
7475 final PrepareReleaseMojo mojo = spy ((PrepareReleaseMojo ) lookupMojo ( "prepare" , testFile ));
76+ mojo .getProject ().setFile (testFile );
7577 setDefaults ( mojo );
7678 mojo .setBasedir ( testFile .getParentFile () );
7779 mojo .setPomFileName ( "pom.xml" );
@@ -127,6 +129,7 @@ public void testPrepareWithExecutionException()
127129 {
128130 File testFile = getTestFile ( "target/test-classes/mojos/prepare/prepare.xml" );
129131 final PrepareReleaseMojo mojo = (PrepareReleaseMojo ) lookupMojo ( "prepare" , testFile );
132+ mojo .getProject ().setFile (testFile );
130133 setDefaults ( mojo );
131134 mojo .setBasedir ( testFile .getParentFile () );
132135 mojo .setPomFileName ( "pom.xml" );
@@ -169,6 +172,7 @@ public void testPrepareWithExecutionFailure()
169172 {
170173 File testFile = getTestFile ( "target/test-classes/mojos/prepare/prepare.xml" );
171174 final PrepareReleaseMojo mojo = (PrepareReleaseMojo ) lookupMojo ( "prepare" , testFile );
175+ mojo .getProject ().setFile (testFile );
172176 setDefaults ( mojo );
173177 mojo .setBasedir ( testFile .getParentFile () );
174178 mojo .setPomFileName ( "pom.xml" );
@@ -211,6 +215,7 @@ public void testLineSeparatorInPrepareWithPom()
211215 {
212216 File testFile = getTestFile ( "target/test-classes/mojos/prepare/prepare.xml" );
213217 final PrepareWithPomReleaseMojo mojo = (PrepareWithPomReleaseMojo ) lookupMojo ( "prepare-with-pom" , testFile );
218+ mojo .getProject ().setFile (testFile );
214219 setDefaults ( mojo );
215220 setVariableValueToObject ( mojo , "generateReleasePoms" , Boolean .TRUE );
216221 mojo .setBasedir ( testFile .getParentFile () );
@@ -242,7 +247,43 @@ public List<MavenProject> getProjects()
242247 testLineSeparator ("system" , System .lineSeparator (), mojo , mock , times ++);
243248 }
244249
245- private void testLineSeparator ( String lineSeparator , String expected , PrepareWithPomReleaseMojo mojo ,
250+ public void testLineSeparatorInPrepare ()
251+ throws Exception
252+ {
253+ File testFile = getTestFile ( "target/test-classes/mojos/prepare/prepare.xml" );
254+ final PrepareReleaseMojo mojo = (PrepareReleaseMojo ) lookupMojo ( "prepare" , testFile );
255+ mojo .getProject ().setFile (testFile );
256+ setDefaults ( mojo );
257+ mojo .setBasedir ( testFile .getParentFile () );
258+ mojo .setPomFileName ( "pom.xml" );
259+ mojo .project .setFile ( testFile );
260+ mojo .session = new MavenSession ( null , null , null , null , null , null , null , null , null )
261+ {
262+ public Properties getExecutionProperties ()
263+ {
264+ return new Properties ();
265+ };
266+
267+ @ Override
268+ public List <MavenProject > getProjects ()
269+ {
270+ return Collections .singletonList ( mojo .project );
271+ }
272+ };
273+
274+ ReleaseManager mock = mock ( ReleaseManager .class );
275+ mojo .setReleaseManager ( mock );
276+
277+ int times = 1 ;
278+ testLineSeparator (null , "\n " , mojo , mock , times ++);
279+ testLineSeparator ("source" , "\n " , mojo , mock , times ++);
280+ testLineSeparator ("cr" , "\r " , mojo , mock , times ++);
281+ testLineSeparator ("lf" , "\n " , mojo , mock , times ++);
282+ testLineSeparator ("crlf" , "\r \n " , mojo , mock , times ++);
283+ testLineSeparator ("system" , System .lineSeparator (), mojo , mock , times ++);
284+ }
285+
286+ private void testLineSeparator ( String lineSeparator , String expected , PrepareReleaseMojo mojo ,
246287 ReleaseManager releaseManager , int times )
247288 throws Exception
248289 {
0 commit comments