public function setUp() { $this->config = $this->getMock('Composer\Config'); $this->config->expects($this->any()) ->method('get') ->will($this->returnCallback(function ($key) { switch ($key) { case 'cache-repo-dir': return sys_get_temp_dir() . '/composer-test-repo-cache'; case 'vendor-dir': return sys_get_temp_dir() . '/composer-test/vendor'; } return null; })); $this->rootPackage = $this->getMock('Composer\Package\RootPackageInterface'); $this->package = $this->getMock('Composer\Package\PackageInterface'); $this->package->expects($this->any()) ->method('getName') ->will($this->returnValue('foo-asset/foo')); $this->composer = $this->getMock('Composer\Composer'); $this->composer->expects($this->any()) ->method('getPackage') ->will($this->returnValue($this->rootPackage)); $this->composer->expects($this->any()) ->method('getConfig') ->will($this->returnValue($this->config)); }
/** * @param string $packageName * @param boolean $expected * @dataProvider isMagentoRootDataProvider */ public function testIsMagentoRoot($packageName, $expected) { $rootPackageMock = $this->getMockForAbstractClass(\Composer\Package\RootPackageInterface::class); $this->composerMock->expects($this->once())->method('getPackage')->willReturn($rootPackageMock); $rootPackageMock->method('getName')->willReturn($packageName); $this->assertEquals($expected, $this->composerInformation->isMagentoRoot()); }
/** * All we can do is confirm that the plugin tried to register the * correct installer class during ::activate(). * * @return void */ public function testActivate() { $this->composer = $this->getMock('Composer\\Composer', ['getInstallationManager', 'addInstaller']); $this->composer->setConfig(new Config(false)); $this->composer->expects($this->once())->method('getInstallationManager')->will($this->returnSelf()); $this->composer->expects($this->once())->method('addInstaller')->with($this->isInstanceOf('Loadsys\\Composer\\PuphpetReleaseInstaller')); $this->plugin->activate($this->composer, $this->io); }
public function testInstall() { /* @var RootPackageInterface $rootPackage */ $rootPackage = $this->createRootPackageMock(); /* @var IOInterface $io */ $io = $this->io; /* @var AssetTypeInterface $type */ $type = $this->type; $vendorDir = realpath(sys_get_temp_dir()) . DIRECTORY_SEPARATOR . 'composer-test' . DIRECTORY_SEPARATOR . 'vendor'; $this->composer->setPackage($rootPackage); $dm = $this->getMockBuilder('Composer\\Downloader\\DownloadManager')->disableOriginalConstructor()->getMock(); $this->composer->expects($this->any())->method('getDownloadManager')->will($this->returnValue($dm)); $library = new AssetInstaller($io, $this->composer, $type); /* @var \PHPUnit_Framework_MockObject_MockObject $package */ $package = $this->createPackageMock('foo-asset/package'); /* @var PackageInterface $package */ $packageDir = $vendorDir . '/' . $package->getPrettyName(); $dm->expects($this->once())->method('download')->with($package, $vendorDir . DIRECTORY_SEPARATOR . 'foo-asset/package'); $repository = $this->getMock('Composer\\Repository\\InstalledRepositoryInterface'); $repository->expects($this->once())->method('addPackage')->with($package); /* @var InstalledRepositoryInterface $repository */ $library->install($repository, $package); $this->assertFileExists($vendorDir, 'Vendor dir should be created'); $this->ensureDirectoryExistsAndClear($packageDir); }
public function testWillDeleteExistingTagfile() { touch($this->testTempDir . '/tags'); $this->assertFileExists($this->testTempDir . '/tags'); $this->composerMock->expects($this->once())->method('getConfig')->will($this->returnValue($this->composerConfig)); Ctagger::setTagsDir($this->testTempDir); Ctagger::ctag($this->event); }
public function setUp() { $this->composer = $this->getMockBuilder('Composer\\Composer')->getMock(); $this->io = $this->getMockBuilder('Composer\\IO\\IOInterface')->getMock(); $this->package = $this->getMockBuilder('Composer\\Package\\PackageInterface')->getMock(); $config = $this->getMockBuilder('Composer\\Config')->getMock(); $config->expects($this->any())->method('get')->will($this->returnCallback(function ($key) { $val = null; switch ($key) { case 'cache-repo-dir': return sys_get_temp_dir() . '/composer-test-repo-cache'; case 'vendor-dir': return sys_get_temp_dir() . '/composer-test/vendor'; } return $val; })); $rootPackage = $this->getMockBuilder('Composer\\Package\\RootPackageInterface')->getMock(); $this->composer->expects($this->any())->method('getConfig')->will($this->returnValue($config)); $this->composer->expects($this->any())->method('getPackage')->will($this->returnValue($rootPackage)); }
public function testIgnoredBundles() { $packages = array($this->createPackage('foo/foo-bundle', 'symfony-bundle', array('psr-0' => array('Acme\\FooBundle' => ''))), $this->createPackage('acme/library-bundle', 'symfony-bundle', array('psr-0' => array('Acme\\LibraryBundle' => '')))); $rootPackage = new RootPackage('DemoPackage', 'dev-master', '1.x-dev'); $rootPackage->setExtra(array('checkbundles-ignore' => array('Acme\\LibraryBundle\\AcmeLibraryBundle'))); $this->composerMock->expects($this->any())->method('getPackage')->will($this->returnValue($rootPackage)); $this->localRepository->expects($this->any())->method('getPackages')->will($this->returnValue($packages)); $kernelHelper = $this->getMockBuilder('WillemJan\\Util\\KernelHelper')->disableOriginalConstructor()->setMethods(array('getBundlesForKernels'))->getMock(); $kernelHelper->expects($this->any())->method('getBundlesForKernels')->will($this->returnValue(array('Acme\\FooBundle\\AcmeFooBundle'))); $composerHelper = $this->getMockBuilder('WillemJan\\CheckBundles\\Util\\ComposerHelper')->setConstructorArgs(array($this->composerMock))->setMethods(array('getInstalledRepository', 'findBundleFiles'))->getMock(); $composerHelper->expects($this->any())->method('findBundleFiles')->will($this->returnCallback(function ($package) use($packages) { switch ($package->getName()) { case 'foo/foo-bundle': return array('AcmeFooBundle.php'); break; case 'acme/library-bundle': return array('AcmeLibraryBundle.php'); break; } return array('ShouldNotHappenBundle.php'); })); $composerHelper->expects($this->any())->method('getInstalledRepository')->will($this->returnValue($this->localRepository)); $this->assertEquals(array(), $composerHelper->getNonActiveSymfonyBundles($kernelHelper->getBundlesForKernels())); }
/** * @expectedException \RuntimeException * @expectedExceptionMessage We cannot retrieve information on magento/product-community-edition. */ public function testGetPackageVersionsFailed() { $communityPackage = $this->getMock('\\Composer\\Package\\Package', [], [], '', false); $enterprisePackage = $this->getMock('\\Composer\\Package\\Package', [], [], '', false); $communityPackage->expects($this->once())->method('getName')->willReturn('magento/product-community-edition'); $enterprisePackage->expects($this->once())->method('getName')->willReturn('magento/product-enterprise-edition'); $this->composerInformation->expects($this->any())->method('isSystemPackage')->willReturn(true); $this->composerInformation->expects($this->once())->method('isPackageInComposerJson')->willReturn(true); $this->repository->expects($this->once())->method('getPackages')->willReturn([$communityPackage, $enterprisePackage]); $this->locker->expects($this->once())->method('getLockedRepository')->willReturn($this->repository); $this->composer->expects($this->once())->method('getLocker')->willReturn($this->locker); $this->magentoComposerApp->expects($this->once())->method('createComposer')->willReturn($this->composer); $this->composerAppFactory->expects($this->once())->method('create')->willReturn($this->magentoComposerApp); $this->composerAppFactory->expects($this->once())->method('createInfoCommand')->willReturn($this->infoCommand); $this->systemPackage = new SystemPackage($this->composerAppFactory, $this->composerInformation); $this->infoCommand->expects($this->once())->method('run')->with('magento/product-community-edition')->willReturn(false); $this->systemPackage->getPackageVersions(); }
protected function getRootPackage() { $this->event_command->expects($this->once())->method('getComposer')->will($this->returnValue($this->composer)); $this->composer->expects($this->once())->method('getPackage')->will($this->returnValue($this->package)); }