Browse Source

Fix CS issues, refs #6159

Jordi Boggiano 8 năm trước cách đây
mục cha
commit
61511cfed6

+ 21 - 21
src/Composer/Downloader/ZipDownloader.php

@@ -29,10 +29,11 @@ use ZipArchive;
  */
 class ZipDownloader extends ArchiveDownloader
 {
+    private static $hasSystemUnzip;
+    private static $hasZipArchive;
+    private static $isWindows;
+
     protected $process;
-    public static $hasSystemUnzip;
-    public static $hasZipArchive;
-    public static $isWindows;
     private $zipArchiveObject;
 
     public function __construct(IOInterface $io, Config $config, EventDispatcher $eventDispatcher = null, Cache $cache = null, ProcessExecutor $process = null, RemoteFilesystem $rfs = null)
@@ -80,12 +81,12 @@ class ZipDownloader extends ArchiveDownloader
      */
     protected function extractWithSystemUnzip($file, $path, $isLastChance)
     {
-        if (! self::$hasZipArchive) {
+        if (!self::$hasZipArchive) {
             // Force Exception throwing if the Other alternative is not available
             $isLastChance = true;
         }
 
-        if (! self::$hasSystemUnzip && ! $isLastChance) {
+        if (!self::$hasSystemUnzip && !$isLastChance) {
             // This was call as the favorite extract way, but is not available
             // We switch to the alternative
             return $this->extractWithZipArchive($file, $path, true);
@@ -107,17 +108,14 @@ class ZipDownloader extends ArchiveDownloader
             $processError = $e;
         }
 
-        if (! self::$hasZipArchive) {
-            $isLastChance = true;
-        }
-
         if ($isLastChance) {
             throw $processError;
-        } else {
-            $this->io->write($processError->getMessage());
-            $this->io->write('Unzip with unzip command failed, falling back to ZipArchive class');
-            return $this->extractWithZipArchive($file, $path, true);
         }
+
+        $this->io->writeError('    '.$processError->getMessage());
+        $this->io->writeError('    Unzip with unzip command failed, falling back to ZipArchive class');
+
+        return $this->extractWithZipArchive($file, $path, true);
     }
 
     /**
@@ -130,12 +128,12 @@ class ZipDownloader extends ArchiveDownloader
      */
     protected function extractWithZipArchive($file, $path, $isLastChance)
     {
-        if (! self::$hasSystemUnzip) {
+        if (!self::$hasSystemUnzip) {
             // Force Exception throwing if the Other alternative is not available
             $isLastChance = true;
         }
 
-        if (! self::$hasZipArchive && ! $isLastChance) {
+        if (!self::$hasZipArchive && !$isLastChance) {
             // This was call as the favorite extract way, but is not available
             // We switch to the alternative
             return $this->extractWithSystemUnzip($file, $path, true);
@@ -150,10 +148,11 @@ class ZipDownloader extends ArchiveDownloader
 
                 if (true === $extractResult) {
                     $zipArchive->close();
+
                     return true;
-                } else {
-                    $processError = new \RuntimeException(rtrim("There was an error extracting the ZIP file, it is either corrupted or using an invalid format.\n"));
                 }
+
+                $processError = new \RuntimeException(rtrim("There was an error extracting the ZIP file, it is either corrupted or using an invalid format.\n"));
             } else {
                 $processError = new \UnexpectedValueException(rtrim($this->getErrorMessage($retval, $file)."\n"), $retval);
             }
@@ -163,11 +162,12 @@ class ZipDownloader extends ArchiveDownloader
 
         if ($isLastChance) {
             throw $processError;
-        } else {
-            $this->io->write($processError->getMessage());
-            $this->io->write('Unzip with ZipArchive class failed, falling back to unzip command');
-            return $this->extractWithSystemUnzip($file, $path, true);
         }
+
+        $this->io->writeError('    '.$processError->getMessage());
+        $this->io->writeError('    Unzip with ZipArchive class failed, falling back to unzip command');
+
+        return $this->extractWithSystemUnzip($file, $path, true);
     }
 
     /**

+ 23 - 23
tests/Composer/Test/Downloader/ZipDownloaderTest.php

@@ -37,8 +37,8 @@ class ZipDownloaderTest extends TestCase
     {
         $fs = new Filesystem;
         $fs->removeDirectory($this->testDir);
-        ZipDownloader::$hasSystemUnzip = null;
-        ZipDownloader::$hasZipArchive = null;
+        $this->setPrivateProperty('hasSystemUnzip', null);
+        $this->setPrivateProperty('hasZipArchive', null);
     }
 
     public function setPrivateProperty($name, $value, $obj = null)
@@ -95,7 +95,7 @@ class ZipDownloaderTest extends TestCase
 
         $downloader = new ZipDownloader($this->io, $this->config);
 
-        ZipDownloader::$hasSystemUnzip = false;
+        $this->setPrivateProperty('hasSystemUnzip', false);
 
         try {
             $downloader->download($packageMock, sys_get_temp_dir().'/composer-zip-test');
@@ -111,8 +111,8 @@ class ZipDownloaderTest extends TestCase
      */
     public function testZipArchiveOnlyFailed()
     {
-        MockedZipDownloader::$hasSystemUnzip = false;
-        MockedZipDownloader::$hasZipArchive = true;
+        $this->setPrivateProperty('hasSystemUnzip', false);
+        $this->setPrivateProperty('hasZipArchive', true);
         $downloader = new MockedZipDownloader($this->io, $this->config);
 
         $zipArchive = $this->getMock('ZipArchive');
@@ -132,8 +132,8 @@ class ZipDownloaderTest extends TestCase
      */
     public function testZipArchiveOnlyGood()
     {
-        MockedZipDownloader::$hasSystemUnzip = false;
-        MockedZipDownloader::$hasZipArchive = true;
+        $this->setPrivateProperty('hasSystemUnzip', false);
+        $this->setPrivateProperty('hasZipArchive', true);
         $downloader = new MockedZipDownloader($this->io, $this->config);
 
         $zipArchive = $this->getMock('ZipArchive');
@@ -154,8 +154,8 @@ class ZipDownloaderTest extends TestCase
      */
     public function testSystemUnzipOnlyFailed()
     {
-        MockedZipDownloader::$hasSystemUnzip = true;
-        MockedZipDownloader::$hasZipArchive = false;
+        $this->setPrivateProperty('hasSystemUnzip', true);
+        $this->setPrivateProperty('hasZipArchive', false);
         $processExecutor = $this->getMock('Composer\Util\ProcessExecutor');
         $processExecutor->expects($this->at(0))
             ->method('execute')
@@ -167,8 +167,8 @@ class ZipDownloaderTest extends TestCase
 
     public function testSystemUnzipOnlyGood()
     {
-        MockedZipDownloader::$hasSystemUnzip = true;
-        MockedZipDownloader::$hasZipArchive = false;
+        $this->setPrivateProperty('hasSystemUnzip', true);
+        $this->setPrivateProperty('hasZipArchive', false);
         $processExecutor = $this->getMock('Composer\Util\ProcessExecutor');
         $processExecutor->expects($this->at(0))
             ->method('execute')
@@ -180,9 +180,9 @@ class ZipDownloaderTest extends TestCase
 
     public function testNonWindowsFallbackGood()
     {
-        MockedZipDownloader::$isWindows = false;
-        MockedZipDownloader::$hasSystemUnzip = true;
-        MockedZipDownloader::$hasZipArchive = true;
+        $this->setPrivateProperty('isWindows', false);
+        $this->setPrivateProperty('hasSystemUnzip', true);
+        $this->setPrivateProperty('hasZipArchive', true);
 
         $processExecutor = $this->getMock('Composer\Util\ProcessExecutor');
         $processExecutor->expects($this->at(0))
@@ -208,9 +208,9 @@ class ZipDownloaderTest extends TestCase
      */
     public function testNonWindowsFallbackFailed()
     {
-        MockedZipDownloader::$isWindows = false;
-        MockedZipDownloader::$hasSystemUnzip = true;
-        MockedZipDownloader::$hasZipArchive = true;
+        $this->setPrivateProperty('isWindows', false);
+        $this->setPrivateProperty('hasSystemUnzip', true);
+        $this->setPrivateProperty('hasZipArchive', true);
 
         $processExecutor = $this->getMock('Composer\Util\ProcessExecutor');
         $processExecutor->expects($this->at(0))
@@ -232,9 +232,9 @@ class ZipDownloaderTest extends TestCase
 
     public function testWindowsFallbackGood()
     {
-        MockedZipDownloader::$isWindows = true;
-        MockedZipDownloader::$hasSystemUnzip = true;
-        MockedZipDownloader::$hasZipArchive = true;
+        $this->setPrivateProperty('isWindows', true);
+        $this->setPrivateProperty('hasSystemUnzip', true);
+        $this->setPrivateProperty('hasZipArchive', true);
 
         $processExecutor = $this->getMock('Composer\Util\ProcessExecutor');
         $processExecutor->expects($this->atLeastOnce())
@@ -260,9 +260,9 @@ class ZipDownloaderTest extends TestCase
      */
     public function testWindowsFallbackFailed()
     {
-        MockedZipDownloader::$isWindows = true;
-        MockedZipDownloader::$hasSystemUnzip = true;
-        MockedZipDownloader::$hasZipArchive = true;
+        $this->setPrivateProperty('isWindows', true);
+        $this->setPrivateProperty('hasSystemUnzip', true);
+        $this->setPrivateProperty('hasZipArchive', true);
 
         $processExecutor = $this->getMock('Composer\Util\ProcessExecutor');
         $processExecutor->expects($this->atLeastOnce())