public function testInstall()
 {
     $installer = $this->createInstallerMock();
     $manager = new InstallationManager();
     $manager->addInstaller($installer);
     $package = $this->createPackageMock();
     $operation = new InstallOperation($package, 'test');
     $package->expects($this->once())->method('getType')->will($this->returnValue('library'));
     $installer->expects($this->once())->method('supports')->with('library')->will($this->returnValue(true));
     $installer->expects($this->once())->method('install')->with($this->repository, $package);
     $manager->install($this->repository, $operation);
 }
 public static function install(Event $event)
 {
     if (!self::init($event)) {
         return;
     }
     $notInstalled = 0;
     if (!empty(self::$toInstall)) {
         self::$io->write('<info>Installing platform-specific dependencies</info>');
         foreach (self::$toInstall as $package) {
             if (!self::$installer->isPackageInstalled(self::$localRepo, $package)) {
                 self::$installer->install(self::$localRepo, new InstallOperation($package));
                 self::updateBinary($package);
             } else {
                 $notInstalled++;
             }
         }
     }
     if (empty(self::$toInstall) || $notInstalled > 0) {
         self::$io->write('Nothing to install or update in platform-specific dependencies');
     }
 }
Beispiel #3
0
 /**
  * {@inheritDoc}
  */
 public function install(RepositoryInterface $repo, InstallOperation $operation)
 {
     $this->packageInformation->set($this->packageInformation->escape($operation->getPackage()->getPrettyName()), ['type' => 'install', 'reason' => $this->getReason($operation), 'package' => $this->dumper->dump($operation->getPackage())]);
     parent::install($repo, $operation);
 }