Skip to content
This repository has been archived by the owner on Jan 4, 2022. It is now read-only.

Commit

Permalink
Merge pull request #351 from ergebnis/fix/vendor
Browse files Browse the repository at this point in the history
Fix: Use vendor-specific annotations
  • Loading branch information
ergebnis-bot authored Oct 13, 2020
2 parents b3ebfea + 7918853 commit 8a3fb17
Show file tree
Hide file tree
Showing 2 changed files with 88 additions and 30 deletions.
2 changes: 1 addition & 1 deletion psalm-baseline.xml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<files psalm-version="3.16@d03e5ef057d6adc656c0ff7e166c50b73b4f48f3">
<files psalm-version="3.17.1@8f211792d813e4dc89f04ed372785ce93b902fd1">
<file src="src/DataProvider/BoolProvider.php">
<MoreSpecificReturnType occurrences="3">
<code>\Generator&lt;string, array{0: bool}&gt;</code>
Expand Down
116 changes: 87 additions & 29 deletions src/Helper.php
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,12 @@ final protected static function faker(string $locale = 'en_US'): Generator
*
* Useful to prevent long inheritance chains.
*
* @param string $directory
* @param class-string[] $excludeClassNames
* @phpstan-param array<class-string> $excludeClassNames
*
* @psalm-param array<class-string> $excludeClassNames
*
* @param string $directory
* @param array<string> $excludeClassNames
*
* @throws Exception\NonExistentDirectory
* @throws Exception\InvalidExcludeClassName
Expand Down Expand Up @@ -83,10 +87,13 @@ static function (string $className): bool {
/**
* Asserts that classes in a directory have matching test classes extending from PHPUnit\Framework\TestCase.
*
* @param string $directory
* @param string $namespace
* @param string $testNamespace
* @param class-string[] $excludeClassyNames
* @phpstam-param array<class-string> $excludeClassyNames
* @psalm-param array<class-string> $excludeClassyNames
*
* @param string $directory
* @param string $namespace
* @param string $testNamespace
* @param array<string> $excludeClassyNames
*
* @throws Exception\NonExistentDirectory
* @throws Exception\InvalidExcludeClassName
Expand Down Expand Up @@ -187,10 +194,14 @@ final protected static function assertClassesHaveTests(string $directory, string
*
* The specification will be invoked with a single argument, the class name, and should return true or false.
*
* @param callable $specification
* @param string $directory
* @param class-string[] $excludeClassyNames
* @param string $message
* @phpstan-param array<class-string> $excludeClassyNames
*
* @psalm-param array<class-string> $excludeClassyNames
*
* @param callable $specification
* @param string $directory
* @param array<string> $excludeClassyNames
* @param string $message
*
* @throws Exception\NonExistentDirectory
* @throws Exception\InvalidExcludeClassName
Expand Down Expand Up @@ -246,8 +257,14 @@ final protected static function assertClassExists(string $className): void
/**
* Asserts that a class extends from a parent class.
*
* @param class-string $parentClassName
* @param class-string $className
* @phpstan-param class-string $parentClassName
* @phpstan-param class-string $className
*
* @psalm-param class-string $parentClassName
* @psalm-param class-string $className
*
* @param string $parentClassName
* @param string $className
*/
final protected static function assertClassExtends(string $parentClassName, string $className): void
{
Expand All @@ -267,8 +284,14 @@ final protected static function assertClassExtends(string $parentClassName, stri
/**
* Asserts that a class implements an interface.
*
* @param class-string $interfaceName
* @param class-string $className
* @phpstan-param class-string $interfaceName
* @phpstan-param class-string $className
*
* @psalm-param class-string $interfaceName
* @psalm-param class-string $className
*
* @param string $interfaceName
* @param string $className
*/
final protected static function assertClassImplementsInterface(string $interfaceName, string $className): void
{
Expand All @@ -288,7 +311,11 @@ final protected static function assertClassImplementsInterface(string $interface
/**
* Asserts that a class is abstract.
*
* @param class-string $className
* @phpstan-param class-string $className
*
* @psalm-param class-string $className
*
* @param string $className
*/
final protected static function assertClassIsAbstract(string $className): void
{
Expand All @@ -308,7 +335,11 @@ final protected static function assertClassIsAbstract(string $className): void
*
* Useful to prevent long inheritance chains.
*
* @param class-string $className
* @phpstan-param class-string $className
*
* @psalm-param class-string $className
*
* @param string $className
*/
final protected static function assertClassIsFinal(string $className): void
{
Expand All @@ -328,9 +359,14 @@ final protected static function assertClassIsFinal(string $className): void
*
* The specification will be invoked with a single argument, the class name, and should return true or false.
*
* @param callable(class-string):bool $specification
* @param class-string $className
* @param string $message
* @phpstan-param class-string $className
*
* @psalm-param callable(class-string):bool $specification
* @psalm-param class-string $className
*
* @param callable $specification
* @param string $className
* @param string $message
*/
final protected static function assertClassSatisfiesSpecification(callable $specification, string $className, string $message = ''): void
{
Expand All @@ -345,8 +381,14 @@ final protected static function assertClassSatisfiesSpecification(callable $spec
/**
* Asserts that a class uses a trait.
*
* @param class-string $traitName
* @param class-string $className
* @phpstan-param class-string $traitName
* @phpstan-param class-string $className
*
* @psalm-param class-string $traitName
* @psalm-param class-string $className
*
* @param string $traitName
* @param string $className
*/
final protected static function assertClassUsesTrait(string $traitName, string $className): void
{
Expand Down Expand Up @@ -376,8 +418,14 @@ final protected static function assertInterfaceExists(string $interfaceName): vo
/**
* Asserts that an interface extends a parent interface.
*
* @param class-string $parentInterfaceName
* @param class-string $interfaceName
* @phpstan-param class-string $parentInterfaceName
* @phpstan-param class-string $interfaceName
*
* @psalm-param class-string $parentInterfaceName
* @psalm-param class-string $interfaceName
*
* @param string $parentInterfaceName
* @param string $interfaceName
*/
final protected static function assertInterfaceExtends(string $parentInterfaceName, string $interfaceName): void
{
Expand All @@ -399,9 +447,14 @@ final protected static function assertInterfaceExtends(string $parentInterfaceNa
*
* The specification will be invoked with a single argument, the class name, and should return true or false.
*
* @param callable(class-string):bool $specification
* @param class-string $interfaceName
* @param string $message
* @phpstan-param class-string $interfaceName
*
* @psalm-param callable(class-string):bool $specification
* @psalm-param class-string $interfaceName
*
* @param callable $specification
* @param string $interfaceName
* @param string $message
*/
final protected static function assertInterfaceSatisfiesSpecification(callable $specification, string $interfaceName, string $message = ''): void
{
Expand Down Expand Up @@ -431,9 +484,14 @@ final protected static function assertTraitExists(string $traitName): void
*
* The specification will be invoked with a single argument, the class name, and should return true or false.
*
* @param callable(class-string):bool $specification
* @param class-string $traitName
* @param string $message
* @phpstan-param class-string $traitName
*
* @psalm-param callable(class-string):bool $specification
* @psalm-param class-string $traitName
*
* @param callable $specification
* @param string $traitName
* @param string $message
*/
final protected static function assertTraitSatisfiesSpecification(callable $specification, string $traitName, string $message = ''): void
{
Expand Down

0 comments on commit 8a3fb17

Please sign in to comment.