|
|
|
@ -139,7 +139,7 @@ class SolverTest extends \PHPUnit_Framework_TestCase
|
|
|
|
|
$this->checkSolverResult(array());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function testSolverFull()
|
|
|
|
|
public function testSolverAllJobs()
|
|
|
|
|
{
|
|
|
|
|
$this->repoInstalled->addPackage($packageD = new MemoryPackage('D', '1.0'));
|
|
|
|
|
$this->repoInstalled->addPackage($oldPackageC = new MemoryPackage('C', '1.0'));
|
|
|
|
@ -165,6 +165,25 @@ class SolverTest extends \PHPUnit_Framework_TestCase
|
|
|
|
|
));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function testSolverThreeAlternativeRequireAndConflict()
|
|
|
|
|
{
|
|
|
|
|
$this->repo->addPackage($packageA = new MemoryPackage('A', '2.0'));
|
|
|
|
|
$this->repo->addPackage($middlePackageB = new MemoryPackage('B', '1.0'));
|
|
|
|
|
$this->repo->addPackage($newPackageB = new MemoryPackage('B', '1.1'));
|
|
|
|
|
$this->repo->addPackage($oldPackageB = new MemoryPackage('B', '0.9'));
|
|
|
|
|
$packageA->setRequires(array(new Link('A', 'B', new VersionConstraint('<', '1.1'), 'requires')));
|
|
|
|
|
$packageA->setConflicts(array(new Link('A', 'B', new VersionConstraint('<', '1.0'), 'conflicts')));
|
|
|
|
|
|
|
|
|
|
$this->reposComplete();
|
|
|
|
|
|
|
|
|
|
$this->request->install('A');
|
|
|
|
|
|
|
|
|
|
$this->checkSolverResult(array(
|
|
|
|
|
array('job' => 'install', 'package' => $middlePackageB),
|
|
|
|
|
array('job' => 'install', 'package' => $packageA),
|
|
|
|
|
));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public function testInstallOneOfTwoAlternatives()
|
|
|
|
|
{
|
|
|
|
|
$this->repo->addPackage($packageA = new MemoryPackage('A', '1.0'));
|
|
|
|
|