本文整理汇总了PHP中Composer\Package\Package::getName方法的典型用法代码示例。如果您正苦于以下问题:PHP Package::getName方法的具体用法?PHP Package::getName怎么用?PHP Package::getName使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Composer\Package\Package
的用法示例。
在下文中一共展示了Package::getName方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getInstallPath
public function getInstallPath(Package $package)
{
if (isset($this->installPaths[$package->getName()])) {
return $this->installPaths[$package->getName()];
}
return $this->tempDir . '/' . basename($package->getName());
}
示例2: testPackageHasExpectedNamingSemantics
/**
* Tests memory package naming semantics
* @dataProvider providerVersioningSchemes
*/
public function testPackageHasExpectedNamingSemantics($name, $version)
{
$versionParser = new VersionParser();
$normVersion = $versionParser->normalize($version);
$package = new Package($name, $normVersion, $version);
$this->assertEquals(strtolower($name), $package->getName());
}
示例3: getPackageCopy
/**
* Get a simple copy of the package.
*
* @return Package
*/
public function getPackageCopy()
{
$copy = new Package($this->package->getName(), $this->package->getVersion(), $this->package->getPrettyVersion());
$copy->setType($this->package->getType());
$copy->setExtra($this->package->getExtra());
return $copy;
}
示例4: testGetPackageCopy
public function testGetPackageCopy()
{
$this->initJob([], $this->atLeastOnce());
$this->package->expects($this->atLeastOnce())->method('getName')->will($this->returnValue('foo/bar'));
$this->package->expects($this->atLeastOnce())->method('getVersion')->will($this->returnValue('1.0.0'));
$this->package->expects($this->atLeastOnce())->method('getPrettyVersion')->will($this->returnValue('1'));
$this->package->expects($this->atLeastOnce())->method('getType')->will($this->returnValue('lib'));
$copy = $this->job->getPackageCopy();
// test
$this->assertInstanceOf('\\Composer\\Package\\Package', $copy);
$this->assertEquals($this->package->getName(), $copy->getName());
$this->assertEquals($this->package->getVersion(), $copy->getVersion());
$this->assertEquals($this->package->getPrettyVersion(), $copy->getPrettyVersion());
$this->assertEquals($this->package->getType(), $copy->getType());
$this->assertEquals($this->package->getExtra(), $copy->getExtra());
}
示例5: testVendorDirExcludedFromWorkingDir
public function testVendorDirExcludedFromWorkingDir()
{
$workingDir = $this->vendorDir . '/working-dir';
$vendorDir = $workingDir . '/../vendor';
$this->fs->ensureDirectoryExists($workingDir);
chdir($workingDir);
$package = new Package('a', '1.0', '1.0');
$package->setAutoload(array('psr-0' => array('Foo' => 'src'), 'psr-4' => array('Acme\\Foo\\' => 'src-psr4'), 'classmap' => array('classmap'), 'files' => array('test.php')));
$vendorPackage = new Package('b/b', '1.0', '1.0');
$vendorPackage->setAutoload(array('psr-0' => array('Bar' => 'lib'), 'psr-4' => array('Acme\\Bar\\' => 'lib-psr4'), 'classmap' => array('classmaps'), 'files' => array('bootstrap.php')));
$this->repository->expects($this->once())->method('getCanonicalPackages')->will($this->returnValue(array($vendorPackage)));
$im = $this->getMockBuilder('Composer\\Installer\\InstallationManager')->disableOriginalConstructor()->getMock();
$im->expects($this->any())->method('getInstallPath')->will($this->returnCallback(function ($package) use($vendorDir) {
$targetDir = $package->getTargetDir();
return $vendorDir . '/' . $package->getName() . ($targetDir ? '/' . $targetDir : '');
}));
$this->fs->ensureDirectoryExists($workingDir . '/src/Foo');
$this->fs->ensureDirectoryExists($workingDir . '/classmap');
$this->fs->ensureDirectoryExists($vendorDir . '/composer');
$this->fs->ensureDirectoryExists($vendorDir . '/b/b/lib/Bar');
$this->fs->ensureDirectoryExists($vendorDir . '/b/b/classmaps');
file_put_contents($workingDir . '/src/Foo/Bar.php', '<?php namespace Foo; class Bar {}');
file_put_contents($workingDir . '/classmap/classes.php', '<?php namespace Foo; class Foo {}');
file_put_contents($workingDir . '/test.php', '<?php class Foo {}');
file_put_contents($vendorDir . '/b/b/lib/Bar/Foo.php', '<?php namespace Bar; class Foo {}');
file_put_contents($vendorDir . '/b/b/classmaps/classes.php', '<?php namespace Bar; class Bar {}');
file_put_contents($vendorDir . '/b/b/bootstrap.php', '<?php class Bar {}');
$oldVendorDir = $this->vendorDir;
$this->vendorDir = $vendorDir;
$this->generator->dump($this->config, $this->repository, $package, $im, 'composer', true, '_13');
$this->vendorDir = $oldVendorDir;
$expectedNamespace = <<<'EOF'
<?php
// autoload_namespaces.php @generated by Composer
$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir).'/working-dir';
return array(
'Foo' => array($baseDir . '/src'),
'Bar' => array($vendorDir . '/b/b/lib'),
);
EOF;
$expectedPsr4 = <<<'EOF'
<?php
// autoload_psr4.php @generated by Composer
$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir).'/working-dir';
return array(
'Acme\\Foo\\' => array($baseDir . '/src-psr4'),
'Acme\\Bar\\' => array($vendorDir . '/b/b/lib-psr4'),
);
EOF;
$expectedClassmap = <<<'EOF'
<?php
// autoload_classmap.php @generated by Composer
$vendorDir = dirname(dirname(__FILE__));
$baseDir = dirname($vendorDir).'/working-dir';
return array(
'Bar\\Bar' => $vendorDir . '/b/b/classmaps/classes.php',
'Bar\\Foo' => $vendorDir . '/b/b/lib/Bar/Foo.php',
'Foo\\Bar' => $baseDir . '/src/Foo/Bar.php',
'Foo\\Foo' => $baseDir . '/classmap/classes.php',
);
EOF;
$this->assertEquals($expectedNamespace, file_get_contents($vendorDir . '/composer/autoload_namespaces.php'));
$this->assertEquals($expectedPsr4, file_get_contents($vendorDir . '/composer/autoload_psr4.php'));
$this->assertEquals($expectedClassmap, file_get_contents($vendorDir . '/composer/autoload_classmap.php'));
$this->assertContains("\n \$vendorDir . '/b/b/bootstrap.php',\n", file_get_contents($vendorDir . '/composer/autoload_files.php'));
$this->assertContains("\n \$baseDir . '/test.php',\n", file_get_contents($vendorDir . '/composer/autoload_files.php'));
}
示例6: addPackage
/**
* Add plugin from package.
*
* @param ComposerPackage $package
*/
protected function addPackage(ComposerPackage $package)
{
$plugin = $this->rep->find($package->getName());
// create new plugin if not exists
if (!$plugin) {
$plugin = new Plugin();
$plugin->setName($package->getName());
}
list($vendor, $package) = explode('/', $plugin->getName());
try {
$data = $this->client->getPlugin($vendor, $package);
$plugin->setTitle($data['title'])->setDescription($data['description']);
if ($data['logo']) {
$this->downloader->entity($data['logo'], $plugin, true);
}
} catch (\Exception $e) {
// is not a critical error
}
$this->em->persist($plugin);
$this->em->flush();
}
示例7: createOrUpdatePackage
/**
* Creates or update a package in MongoDB from the Package passed in parameter.
*
* @param Package $package
* @return array
*/
public function createOrUpdatePackage(Package $package)
{
$packageVersion = $this->get($package->getName(), $package->getPrettyVersion());
if (!$packageVersion) {
$packageVersion = ["packageName" => $package->getName(), "packageVersion" => $package->getPrettyVersion()];
}
$packageVersion['releaseDate'] = new \MongoDate($package->getReleaseDate()->getTimestamp());
$packageVersion['type'] = $package->getType();
$packageVersion['sourceUrl'] = $package->getSourceUrl();
$packageVersion['realVersion'] = $package->getVersion();
if ($package instanceof CompletePackage) {
$packageVersion['description'] = $package->getDescription();
}
$this->collection->save($packageVersion);
// Boost = 1 + download/10 + favers
// TODO: we could improve the score of packages by the number of times they are referred by other packages.
$score = 1;
if (isset($packageVersion['downloads'])) {
$score += $packageVersion['downloads'] / 10;
}
if (isset($packageVersion['favers'])) {
$score += $packageVersion['favers'];
}
$this->itemDao->applyScore($package->getName(), $score);
$this->elasticSearchService->storeItemName($package->getName(), 'package', $score);
return $packageVersion;
}