1
0
Fork 0

Do not dump source and dist for metapackages

pull/7501/head
Rafael Kassner 2018-07-29 16:12:58 +02:00
parent de6432f5f0
commit 42739e7959
2 changed files with 53 additions and 2 deletions

View File

@ -45,7 +45,7 @@ class ArrayDumper
$data['target-dir'] = $package->getTargetDir();
}
if ($package->getSourceType()) {
if ($package->getSourceType() && $package->getType() !== 'metapackage') {
$data['source']['type'] = $package->getSourceType();
$data['source']['url'] = $package->getSourceUrl();
$data['source']['reference'] = $package->getSourceReference();
@ -54,7 +54,7 @@ class ArrayDumper
}
}
if ($package->getDistType()) {
if ($package->getDistType() && $package->getType() !== 'metapackage') {
$data['dist']['type'] = $package->getDistType();
$data['dist']['url'] = $package->getDistUrl();
$data['dist']['reference'] = $package->getDistReference();

View File

@ -106,6 +106,57 @@ class ArrayDumperTest extends TestCase
$this->assertSame($expectedValue ?: $value, $config[$key]);
}
public function testMetapackageShouldNotHaveSourceEntries()
{
$this
->packageExpects('getPrettyName', 'foo')
->packageExpects('getPrettyVersion', '1.0')
->packageExpects('getVersion', '1.0.0.0')
->packageExpects('getType', 'metapackage')
->packageExpects('getSourceType', 'composer')
->packageExpects('getSourceUrl', 'https://packagist.org')
->packageExpects('getSourceReference', 'packagist')
;
$config = $this->dumper->dump($this->package);
$this->assertEquals(
array(
'name' => 'foo',
'version' => '1.0',
'version_normalized' => '1.0.0.0',
'type' => 'metapackage',
),
$config
);
}
public function testMetapackageShouldNotHaveDistEntries()
{
$this
->packageExpects('getPrettyName', 'foo')
->packageExpects('getPrettyVersion', '1.0')
->packageExpects('getVersion', '1.0.0.0')
->packageExpects('getType', 'metapackage')
->packageExpects('getDistType', 'composer')
->packageExpects('getDistUrl', 'https://packagist.org')
->packageExpects('getDistReference', 'packagist')
->packageExpects('getDistSha1Checksum', 'packagist')
;
$config = $this->dumper->dump($this->package);
$this->assertEquals(
array(
'name' => 'foo',
'version' => '1.0',
'version_normalized' => '1.0.0.0',
'type' => 'metapackage',
),
$config
);
}
public function getKeys()
{
return array(