[MNG-6223] support -f path/to/dir when detecting .mvn

Project: http://git-wip-us.apache.org/repos/asf/maven-integration-testing/repo
Commit: 
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/commit/3433c623
Tree: 
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/tree/3433c623
Diff: 
http://git-wip-us.apache.org/repos/asf/maven-integration-testing/diff/3433c623

Branch: refs/heads/MNG-5935
Commit: 3433c623d481303af5bee83552c352d60f9f8615
Parents: 7ed70ad
Author: Hervé Boutemy <hbout...@apache.org>
Authored: Sat May 6 18:31:28 2017 +0200
Committer: Michael Osipov <micha...@apache.org>
Committed: Tue May 9 23:43:24 2017 +0200

----------------------------------------------------------------------
 .../apache/maven/it/IntegrationTestSuite.java   |  1 +
 .../maven/it/MavenITmng5889FindBasedir.java     | 17 ++++-
 .../maven/it/MavenITmng6223FindBasedir.java     | 77 ++++++++++++++++++++
 3 files changed, 92 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/3433c623/core-it-suite/src/test/java/org/apache/maven/it/IntegrationTestSuite.java
----------------------------------------------------------------------
diff --git 
a/core-it-suite/src/test/java/org/apache/maven/it/IntegrationTestSuite.java 
b/core-it-suite/src/test/java/org/apache/maven/it/IntegrationTestSuite.java
index 37105d0..e92cf86 100644
--- a/core-it-suite/src/test/java/org/apache/maven/it/IntegrationTestSuite.java
+++ b/core-it-suite/src/test/java/org/apache/maven/it/IntegrationTestSuite.java
@@ -106,6 +106,7 @@ public class IntegrationTestSuite
         // 
-------------------------------------------------------------------------------------------------------------
         // suite.addTestSuite( MavenIT0108SnapshotUpdateTest.class ); -- 
MNG-3137
 
+        suite.addTestSuite( MavenITmng6223FindBasedir.class );
         suite.addTestSuite( MavenITmng6189SiteReportPluginsWarningTest.class );
         suite.addTestSuite( MavenITmng6057CheckReactorOrderTest.class );
         suite.addTestSuite( 
MavenITmng5895CIFriendlyUsageWithPropertyTest.class );

http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/3433c623/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5889FindBasedir.java
----------------------------------------------------------------------
diff --git 
a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5889FindBasedir.java
 
b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5889FindBasedir.java
index 254c03d..1936ee5 100644
--- 
a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5889FindBasedir.java
+++ 
b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng5889FindBasedir.java
@@ -14,7 +14,12 @@ public class MavenITmng5889FindBasedir
 {
     public MavenITmng5889FindBasedir()
     {
-        super( "[3.5.0,)" );
+        super( "[3.5.0,3.5.1)" );
+    }
+
+    protected MavenITmng5889FindBasedir( String constraint )
+    {
+        super( constraint );
     }
 
     /**
@@ -56,9 +61,15 @@ public class MavenITmng5889FindBasedir
     private void runCoreExtensionWithOption( String option, String subdir )
         throws Exception
     {
+        runCoreExtensionWithOption( option, subdir, true );
+    }
+
+    protected void runCoreExtensionWithOption( String option, String subdir, 
boolean pom )
+        throws Exception
+    {
         File testDir = ResourceExtractor.simpleExtractResources( getClass(), 
"/mng-5889-find.mvn" );
 
-        File basedir = new File( testDir, "../mng-5889-find.mvn" + option );
+        File basedir = new File( testDir, "../mng-" + ( pom ? "5889" : "6223" 
) + "-find.mvn" + option + ( pom ? "Pom" : "Dir" ) );
         basedir.mkdir();
 
         if ( subdir != null )
@@ -71,7 +82,7 @@ public class MavenITmng5889FindBasedir
         Verifier verifier = newVerifier( basedir.getAbsolutePath() );
         verifier.getCliOptions().add( "-Dexpression.outputFile=" + new File( 
basedir, "expression.properties" ).getAbsolutePath() );
         verifier.getCliOptions().add( option ); // -f/--file client/pom.xml
-        verifier.getCliOptions().add( new File( testDir, "pom.xml" 
).getAbsolutePath() );
+        verifier.getCliOptions().add( ( pom ? new File( testDir, "pom.xml" ) : 
testDir ).getAbsolutePath() );
         verifier.setForkJvm( true ); // force forked JVM since we need the 
shell script to detect .mvn/ location
         verifier.executeGoal( "validate" );
         verifier.verifyErrorFreeLog();

http://git-wip-us.apache.org/repos/asf/maven-integration-testing/blob/3433c623/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng6223FindBasedir.java
----------------------------------------------------------------------
diff --git 
a/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng6223FindBasedir.java
 
b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng6223FindBasedir.java
new file mode 100644
index 0000000..ac11001
--- /dev/null
+++ 
b/core-it-suite/src/test/java/org/apache/maven/it/MavenITmng6223FindBasedir.java
@@ -0,0 +1,77 @@
+package org.apache.maven.it;
+
+/*
+ * 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.
+ */
+
+/**
+ * This is a test set for <a 
href="https://issues.apache.org/jira/browse/MNG-6223";>MNG-6223</a>:
+ * check that extensions in <code>.mvn/</code> are found when Maven is run 
with <code>-f path/to/dir</code>.
+ * @see MavenITmng5889FindBasedir
+ */
+public class MavenITmng6223FindBasedir
+    extends MavenITmng5889FindBasedir
+{
+    public MavenITmng6223FindBasedir()
+    {
+        super( "[3.5.1,)" );
+    }
+
+    /**
+     * check that <code>path/to/.mvn/</code> is found when path to POM set by 
<code>--file path/to/dir</code>
+     */
+    public void testMvnFileLongOptionToDir()
+        throws Exception
+    {
+        runCoreExtensionWithOptionToDir( "--file", null );
+    }
+
+    /**
+     * check that <code>path/to/.mvn/</code> is found when path to POM set by 
<code>-f path/to/dir</code>
+     */
+    public void testMvnFileShortOptionToDir()
+        throws Exception
+    {
+        runCoreExtensionWithOptionToDir( "-f", null );
+    }
+
+    /**
+     * check that <code>path/to/.mvn/</code> is found when path to POM set by 
<code>--file path/to/module</code>
+     */
+    public void testMvnFileLongOptionModuleToDir()
+        throws Exception
+    {
+        runCoreExtensionWithOptionToDir( "--file", "module" );
+    }
+
+    /**
+     * check that <code>path/to/.mvn/</code> is found when path to POM set by 
<code>-f path/to/module</code>
+     */
+    public void testMvnFileShortOptionModuleToDir()
+        throws Exception
+    {
+        runCoreExtensionWithOptionToDir( "-f", "module" );
+    }
+
+    private void runCoreExtensionWithOptionToDir( String option, String subdir 
)
+        throws Exception
+    {
+        runCoreExtensionWithOption( option, subdir, false );
+    }
+
+}

Reply via email to