public function testDevDependenciesAreRemoved() { // Prepare the installer OptionalPackages::removeDevDependencies(); $this->assertComposerHasPackages($this->standardDependencies); $this->assertComposerNotHasPackages($this->devDependencies); }
/** * @dataProvider packageProvider */ public function testAddPackage($packageName, $packageVersion, $expectedStability) { // Prepare the installer OptionalPackages::removeDevDependencies(); $io = $this->prophesize('Composer\\IO\\IOInterface'); $io->write(Argument::containingString('Adding package'))->shouldBeCalled(); OptionalPackages::addPackage($io->reveal(), $packageName, $packageVersion); $this->assertComposerHasPackages(['zendframework/zend-stdlib']); $stabilityFlags = $this->getStabilityFlags(); // Stability flags are only set for non-stable packages if ($expectedStability) { $this->assertArrayHasKey($packageName, $stabilityFlags); $this->assertEquals($expectedStability, $stabilityFlags[$packageName]); } }
public function testAnsweredWithPackage() { // Prepare the installer OptionalPackages::removeDevDependencies(); $io = $this->prophesize('Composer\\IO\\IOInterface'); $io->write(Argument::containingString('Adding package <info>league/container</info>'))->shouldBeCalled(); $io->write(Argument::containingString('<warning>You need to edit public/index.php'))->shouldBeCalled(); $config = $this->getConfig(); $question = $config['questions']['container']; $answer = 'league/container:2.2.0'; $copyFilesKey = 'minimal-files'; $result = OptionalPackages::processAnswer($io->reveal(), $question, $answer, $copyFilesKey); $this->assertTrue($result); $this->assertFileNotExists($this->getProjectRoot() . '/config/container.php'); $this->assertComposerHasPackages(['league/container']); }