You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ol...@apache.org on 2011/09/21 15:40:33 UTC

svn commit: r1173635 - in /maven/wagon/trunk/wagon-providers/wagon-ssh-common/src: main/java/org/apache/maven/wagon/providers/ssh/LSParser.java test/java/org/apache/maven/wagon/providers/ssh/LSParserTest.java

Author: olamy
Date: Wed Sep 21 13:40:33 2011
New Revision: 1173635

URL: http://svn.apache.org/viewvc?rev=1173635&view=rev
Log:
LSParser must accept other output with other locale : olamy use fr :-)

Modified:
    maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/LSParser.java
    maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/java/org/apache/maven/wagon/providers/ssh/LSParserTest.java

Modified: maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/LSParser.java
URL: http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/LSParser.java?rev=1173635&r1=1173634&r2=1173635&view=diff
==============================================================================
--- maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/LSParser.java (original)
+++ maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/main/java/org/apache/maven/wagon/providers/ssh/LSParser.java Wed Sep 21 13:40:33 2011
@@ -37,11 +37,27 @@ import java.util.regex.Pattern;
  */
 public class LSParser
 {
-    private static final Pattern PATTERN = Pattern.compile(
-        ".+\\s+[0-9]+\\s+.+\\s+.+\\s+[0-9]+\\s+" + "([0-9]{4}-[0-9]{2}-[0-9]{2}|.+\\s+[0-9]+)\\s+[0-9:]+\\s+(.+?)" );
+    /**
+     * output samples see LSParserTest:
+     * <ul></ul>
+     * <li>osx      "-rw-r--r--   1 joakim  joakim  1194 Dec 11     09:25 pom.xml"</li>
+     * <li>osx fr : "-rw-r--r--   1 olamy   staff   19   21  sep    00:34 more-resources.dat"</li>
+     * <li>cygwin : "drwxr-xr-x+  5 joakim  None    0    Dec 11     10:30 pom.xml"</li>
+     * <li>linux :  "-rw-r--r--   1 joakim  joakim  1194 2006-12-11 09:25 pom.xml"</li>
+     * </ul>
+     */
+    private static final Pattern PATTERN = Pattern.compile( ".+\\s+[0-9]+\\s+.+\\s+.+\\s+[0-9]+\\s+"
+                                                                //2006-12-11
+                                                                + "([0-9]{4}-[0-9]{2}-[0-9]{2}"
+                                                                // Dec 11
+                                                                + "|.+\\s+[0-9]+"
+                                                                // 21 sep
+                                                                + "|.+\\s+.+)"
+                                                                // 09:25 pom.xml
+                                                                + "\\s+[0-9:]+\\s+(.+?)" );
 
     /**
-     * Parse a raw "ls -la", and obtain the list of files.
+     * Parse a raw "ls -FlA", and obtain the list of files.
      *
      * @param rawLS the raw LS to parse.
      * @return the list of files found.

Modified: maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/java/org/apache/maven/wagon/providers/ssh/LSParserTest.java
URL: http://svn.apache.org/viewvc/maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/java/org/apache/maven/wagon/providers/ssh/LSParserTest.java?rev=1173635&r1=1173634&r2=1173635&view=diff
==============================================================================
--- maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/java/org/apache/maven/wagon/providers/ssh/LSParserTest.java (original)
+++ maven/wagon/trunk/wagon-providers/wagon-ssh-common/src/test/java/org/apache/maven/wagon/providers/ssh/LSParserTest.java Wed Sep 21 13:40:33 2011
@@ -61,13 +61,6 @@ public class LSParserTest
             + "drwxr-xr-x   7  joakim  joakim   476 Dec 11 10:31 .svn\n"
             + "drwxr-xr-x   3  joakim  joakim   238 Dec 11 08:39 target\n";
 
-                total 40
-                -rw-r--r--  1 olamy  staff  11 21 sep 00:34 .index.txt
-                -rw-r--r--  1 olamy  staff  19 21 sep 00:34 more-resources.dat
-                -rw-r--r--  1 olamy  staff  20 21 sep 00:34 test-resource b.txt
-                -rw-r--r--  1 olamy  staff  18 21 sep 00:34 test-resource.pom
-                -rw-r--r--  1 olamy  staff  18 21 sep 00:34 test-resource.txt
-
         LSParser parser = new LSParser();
         List files = parser.parseFiles( rawLS );
         assertNotNull( files );
@@ -76,6 +69,24 @@ public class LSParserTest
         assertTrue( files.contains( "spaced out" ) );
     }
 
+    public void testParseOSXFrLocale() throws TransferFailedException
+    {
+        String rawLS = "total 40\n" + "-rw-r--r--  1 olamy  staff  11 21 sep 00:34 .index.txt\n"
+                + "-rw-r--r--  1 olamy  staff  19 21 sep 00:34 more-resources.dat\n"
+                + "-rw-r--r--  1 olamy  staff  20 21 sep 00:34 test-resource b.txt\n"
+                +"-rw-r--r--  1 olamy  staff  18 21 sep 00:34 test-resource.pom\n"
+                + "-rw-r--r--  1 olamy  staff  18 21 sep 00:34 test-resource.txt\n";
+
+        LSParser parser = new LSParser();
+        List files = parser.parseFiles( rawLS );
+        assertNotNull( files );
+        assertEquals( 5, files.size() );
+        assertTrue( files.contains( "more-resources.dat" ) );
+        assertTrue( files.contains( ".index.txt" ) );
+    }
+
+
+
     public void testParseCygwin() throws TransferFailedException
     {
         String rawLS = "total 32\n" + "drwxr-xr-x+  5 joakim None    0 Dec 11 10:30 .\n"