mirror of
https://github.com/barryvdh/laravel-ide-helper.git
synced 2026-08-17 17:47:13 +00:00
Fixed generating PHPDoc for methods with class templates (#1647)
* Fixed generating PHPDoc for methods with class templates * Fix style * Use getter for alias template names * Fixed missing class in static analysis
This commit is contained in:
@@ -193,6 +193,29 @@ DOC;
|
||||
$this->assertSame([], $method->getParamsWithDefault(false));
|
||||
$this->assertTrue($method->shouldReturn());
|
||||
}
|
||||
|
||||
public function testEloquentBuilderWithTemplates()
|
||||
{
|
||||
$reflectionClass = new \ReflectionClass(EloquentBuilder::class);
|
||||
$reflectionMethod = $reflectionClass->getMethod('firstOr');
|
||||
|
||||
$method = new Method($reflectionMethod, 'Builder', $reflectionClass, null, [], [], [], ['TModel']);
|
||||
|
||||
$output = <<<'DOC'
|
||||
/**
|
||||
* Execute the query and get the first result or call a callback.
|
||||
*
|
||||
* @template TValue
|
||||
* @param (\Closure(): TValue)|list<string> $columns
|
||||
* @param (\Closure(): TValue)|null $callback
|
||||
* @return TModel|TValue
|
||||
* @static
|
||||
*/
|
||||
DOC;
|
||||
$this->assertSame($output, $method->getDocComment(''));
|
||||
$this->assertSame('firstOr', $method->getName());
|
||||
$this->assertSame('\\' . EloquentBuilder::class, $method->getDeclaringClass());
|
||||
}
|
||||
}
|
||||
|
||||
class ExampleClass
|
||||
|
||||
Reference in New Issue
Block a user