Skip to content
This repository was archived by the owner on Jan 29, 2020. It is now read-only.

Commit 2139395

Browse files
committed
Merge pull request #75 from qRoC/master
Fix generateShortOrCompleteClassname
2 parents 1eadc83 + 5eec1af commit 2139395

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

src/Generator/ClassGenerator.php

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1018,6 +1018,7 @@ private function validateConstantValue($value)
10181018
*/
10191019
private function generateShortOrCompleteClassname($fqnClassName)
10201020
{
1021+
$fqnClassName = ltrim($fqnClassName, '\\');
10211022
$parts = explode('\\', $fqnClassName);
10221023
$className = array_pop($parts);
10231024
$classNamespace = implode('\\', $parts);

test/Generator/ClassGeneratorTest.php

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1107,6 +1107,23 @@ public function testCorrectExtendNames()
11071107
$this->assertContains('class ClassName extends DateTime', $classGenerator->generate());
11081108
}
11091109

1110+
/**
1111+
* @group 75
1112+
*/
1113+
public function testCorrectExtendNamesFromGlobalNamespace()
1114+
{
1115+
$classGenerator = new ClassGenerator();
1116+
$classGenerator->setName('ClassName');
1117+
$classGenerator->setNamespaceName('SomeNamespace');
1118+
$classGenerator->setExtendedClass('\DateTime');
1119+
$this->assertContains('class ClassName extends \DateTime', $classGenerator->generate());
1120+
1121+
$classGenerator = new ClassGenerator();
1122+
$classGenerator->setName('ClassName');
1123+
$classGenerator->setExtendedClass('\DateTime');
1124+
$this->assertContains('class ClassName extends DateTime', $classGenerator->generate());
1125+
}
1126+
11101127
public function testCorrectImplementNames()
11111128
{
11121129
$classGenerator = new ClassGenerator();

0 commit comments

Comments
 (0)