You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by mi...@apache.org on 2022/07/28 18:26:03 UTC

[maven-scm] branch master updated: Improve test for ScmManager.add(...)

This is an automated email from the ASF dual-hosted git repository.

michaelo pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/maven-scm.git


The following commit(s) were added to refs/heads/master by this push:
     new e304a112a Improve test for ScmManager.add(...)
e304a112a is described below

commit e304a112aad5a83816836291364d634a46f4650c
Author: Konrad Windszus <kw...@apache.org>
AuthorDate: Mon Jul 25 09:04:47 2022 +0200

    Improve test for ScmManager.add(...)
    
    * Check returned file paths
    * Fix Subversion returning path with leading spaces
    
    This closes #158
---
 .../svn/svnexe/command/add/SvnAddConsumer.java     |  2 +-
 .../tck/command/checkin/CheckInCommandTckTest.java | 27 ++++++++++++----------
 2 files changed, 16 insertions(+), 13 deletions(-)

diff --git a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/add/SvnAddConsumer.java b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/add/SvnAddConsumer.java
index c6be1adf2..97d67e814 100644
--- a/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/add/SvnAddConsumer.java
+++ b/maven-scm-providers/maven-scm-providers-svn/maven-scm-provider-svnexe/src/main/java/org/apache/maven/scm/provider/svn/svnexe/command/add/SvnAddConsumer.java
@@ -55,7 +55,7 @@ public class SvnAddConsumer
 
         String statusString = line.substring( 0, 1 );
 
-        String file = line.substring( 3 );
+        String file = line.substring( 3 ).trim();
 
         ScmFileStatus status;
 
diff --git a/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/checkin/CheckInCommandTckTest.java b/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/checkin/CheckInCommandTckTest.java
index 505386e19..936bba04c 100644
--- a/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/checkin/CheckInCommandTckTest.java
+++ b/maven-scm-test/src/main/java/org/apache/maven/scm/tck/command/checkin/CheckInCommandTckTest.java
@@ -27,6 +27,7 @@ import org.apache.maven.scm.command.add.AddScmResult;
 import org.apache.maven.scm.command.checkin.CheckInScmResult;
 import org.apache.maven.scm.command.checkout.CheckOutScmResult;
 import org.apache.maven.scm.provider.ScmProvider;
+import org.apache.maven.scm.util.FilenameUtils;
 import org.codehaus.plexus.util.FileUtils;
 import org.codehaus.plexus.util.IOUtil;
 import org.junit.Assume;
@@ -81,15 +82,19 @@ public abstract class CheckInCommandTckTest
 
         assertResultIsSuccess( addResult );
 
+        List<ScmFile> files = addResult.getAddedFiles();
+        assertNotNull( files );
+        assertEquals( 1, files.size() );
+        // SCM-998: filename separators not yet harmonized
+        assertEquals( "src/main/java/Foo.java", FilenameUtils.normalizeFilename( files.get( 0 ).getPath() ) );
+
         CheckInScmResult result =
             getScmManager().checkIn( getScmRepository(), new ScmFileSet( getWorkingCopy() ), "Commit message" );
 
         assertResultIsSuccess( result );
 
-        List<ScmFile> files = result.getCheckedInFiles();
-
+        files = result.getCheckedInFiles();
         assertNotNull( files );
-
         assertEquals( 2, files.size() );
 
         Map<String, ScmFile> fileMap = mapFilesByPath( files );
@@ -159,15 +164,11 @@ public abstract class CheckInCommandTckTest
         assertResultIsSuccess( result );
 
         List<ScmFile> files = result.getCheckedInFiles();
-
         assertNotNull( files );
-
         assertEquals( 1, files.size() );
 
         ScmFile file1 = files.get( 0 );
-
         assertEquals( ScmFileStatus.CHECKED_IN, file1.getStatus() );
-
         assertPath( "src/main/java/Foo.java", file1.getPath() );
 
         CheckOutScmResult checkoutResult =
@@ -212,6 +213,12 @@ public abstract class CheckInCommandTckTest
 
         assertResultIsSuccess( addResult );
 
+        List<ScmFile> files = addResult.getAddedFiles();
+        assertNotNull( files );
+        assertEquals( 1, files.size() );
+        // SCM-998: filename separators not yet harmonized
+        assertEquals( "main/java/Foo.java", FilenameUtils.normalizeFilename( files.get( 0 ).getPath() ) );
+
         CheckInScmResult result =
             getScmManager().checkIn( getScmRepository(), new ScmFileSet( new File( getWorkingCopy(), "src" ),
                                      "**/Foo.java", null ),
@@ -219,16 +226,12 @@ public abstract class CheckInCommandTckTest
 
         assertResultIsSuccess( result );
 
-        List<ScmFile> files = result.getCheckedInFiles();
-
+        files = result.getCheckedInFiles();
         assertNotNull( files );
-
         assertEquals( 1, files.size() );
 
         ScmFile file1 = files.get( 0 );
-
         assertEquals( ScmFileStatus.CHECKED_IN, file1.getStatus() );
-
         assertPath( "main/java/Foo.java", file1.getPath() );
 
         CheckOutScmResult checkoutResult =