Ver código fonte

Merge remote-tracking branch 'origin/1.6'

Jordi Boggiano 6 anos atrás
pai
commit
16af52be8a

+ 2 - 2
src/Composer/Installer/SuggestedPackagesReporter.php

@@ -115,10 +115,10 @@ class SuggestedPackagesReporter
             }
 
             $this->io->writeError(sprintf(
-                '%s suggests installing %s (%s)',
+                '%s suggests installing %s%s',
                 $suggestion['source'],
                 $this->escapeOutput($suggestion['target']),
-                $this->escapeOutput($suggestion['reason'])
+                $this->escapeOutput('' !== $suggestion['reason'] ? ' ('.$suggestion['reason'].')' : '')
             ));
         }
 

+ 1 - 0
src/Composer/Repository/ArtifactRepository.php

@@ -138,6 +138,7 @@ class ArtifactRepository extends ArrayRepository implements ConfigurableReposito
         }
 
         $configurationFileName = $zip->getNameIndex($foundFileIndex);
+        $zip->close();
 
         $composerFile = "zip://{$file->getPathname()}#$configurationFileName";
         $json = file_get_contents($composerFile);

+ 14 - 0
tests/Composer/Test/Installer/SuggestedPackagesReporterTest.php

@@ -142,6 +142,20 @@ class SuggestedPackagesReporterTest extends TestCase
         $this->suggestedPackagesReporter->output();
     }
 
+    /**
+     * @covers ::output
+     */
+    public function testOutputWithNoSuggestedPackage()
+    {
+        $this->suggestedPackagesReporter->addPackage('a', 'b', '');
+
+        $this->io->expects($this->once())
+            ->method('writeError')
+            ->with('a suggests installing b');
+
+        $this->suggestedPackagesReporter->output();
+    }
+
     /**
      * @covers ::output
      */