Browse Source

Updated the regexp and added an other test case for sub dirs

Sandy Pleyte 11 years ago
parent
commit
3e161e8ea9

+ 1 - 1
src/Composer/Package/Archiver/BaseExcludeFilter.php

@@ -137,7 +137,7 @@ abstract class BaseExcludeFilter
             $pattern .= '^/';
             $rule = substr($rule, 1);
         } elseif (strlen($rule) - 1 === strpos($rule, '/')) {
-            $pattern .= '^/';
+            $pattern .= '/';
             $rule = substr($rule, 0, -1);
         } elseif (false === strpos($rule, '/')) {
             $pattern .= '/';

+ 9 - 4
tests/Composer/Test/Package/Archiver/ArchivableFilesFinderTest.php

@@ -58,10 +58,12 @@ class ArchivableFilesFinderTest extends \PHPUnit_Framework_TestCase
             'D/prefixD',
             'D/prefixE',
             'D/prefixF',
-            '/E/subtestA.foo',
-            '/F/subtestA.foo',
-            '/G/subtestA.foo',
-            '/H/subtestA.foo',
+            'E/subtestA.foo',
+            'F/subtestA.foo',
+            'G/subtestA.foo',
+            'H/subtestA.foo',
+            'I/J/subtestA.foo',
+            'K/dirJ/subtestA.foo',
             'toplevelA.foo',
             'toplevelB.foo',
             'prefixA.foo',
@@ -127,6 +129,8 @@ class ArchivableFilesFinderTest extends \PHPUnit_Framework_TestCase
             '/F/subtestA.foo',
             '/G/subtestA.foo',
             '/H/subtestA.foo',
+            '/I/J/subtestA.foo',
+            '/K/dirJ/subtestA.foo',
             '/parameters.yml',
             '/parameters.yml.dist',
             '/prefixB.foo',
@@ -164,6 +168,7 @@ class ArchivableFilesFinderTest extends \PHPUnit_Framework_TestCase
             'F/',
             'G/*',
             'H/**',
+            'J/',
             'parameters.yml',
             '\!important!.txt'
         )));