PhpDocSingleReturnCheckTest
class PhpDocSingleReturnCheckTest extends PhpDocCheckTestCase (View source)
Methods
Create a stubbed StubDataQueryInterface.
Create a StubDataQueryInterface mock, for tests that constrain arguments with with() or assert call counts with expects().
Create a mock PHPFunction with the given id/name.
Create a mock PHPClass with the given id/name.
Create a mock PHPClass with properties (isFinal, isReadonly, namespace, parentClass).
Create a mock PHPProperty with the given name and optional version bounds.
Create a mock PHPMethod with the given name.
Create a mock PHPParameter with the given name and type.
Create a StandaloneType with the given type name.
Create a mock type that returns a string representation.
No description
No description
No description
No description
No description
No description
No description
No description
No description
No description
A description mentioning "@return" mid-line is prose, not a tag.
Longer tag names that merely start with "return" are different tags; they are rejected (or accepted) by PhpDocTagsCheck, not counted here.
No description
No description
No description
Two identical @return tags are still two tags — deduplicating them would hide a duplicate that is just as dead as a conflicting one.
No description
Each location is judged on its own docblock: one @return per method is fine even when several methods each declare one.
No description
No description
No description
No description
Details
protected StubDataQueryInterface&Stub
createMockStorageManager()
Create a stubbed StubDataQueryInterface.
A stub rather than a mock: these doubles only supply return values and never verify interactions, so createMock() made PHPUnit emit "No expectations were configured for the mock object" for every one of them — 1777 notices from this helper alone.
The return type names the double explicitly (&Stub) instead of just the interface,
so ->method(...) resolves for static analysis; previously every such call across
~90 test files was reported as an undefined method, burying real warnings.
protected StubDataQueryInterface&MockObject
createStorageManagerMock()
Create a StubDataQueryInterface mock, for tests that constrain arguments with with() or assert call counts with expects().
Those only work on a mock: on a stub, with() is silently ignored (PHPUnit deprecates it and will remove it in 13), so a test using the stub helper would appear to pin the argument while actually accepting anything.
protected PHPFunction
createMockFunction(string $name, array $parameters = [], $returnType = null)
Create a mock PHPFunction with the given id/name.
protected PHPClass
createMockClass(string $name, array $methods = [])
Create a mock PHPClass with the given id/name.
protected PHPClass
createMockClassWithProperties(string $name, string|null $namespace = null, bool|null $isFinal = null, bool|null $isReadonly = null, array $methods = [], PHPClass|null $parentClass = null, array $interfaces = [], array $properties = [])
Create a mock PHPClass with properties (isFinal, isReadonly, namespace, parentClass).
protected PHPProperty
createMockProperty(string $name, string|null $sinceVersion = null, string|null $removedVersion = null)
Create a mock PHPProperty with the given name and optional version bounds.
protected PHPMethod
createMockMethod(string $name, array $parameters = [], $returnType = null)
Create a mock PHPMethod with the given name.
protected PHPParameter
createMockParameter(string $name, mixed|null $type = null, string|null $sinceVersion = null, string|null $removedVersion = null, bool $isDeprecated = false, string|null $deprecatedSinceVersion = null)
Create a mock PHPParameter with the given name and type.
Note: Supports both getDeclaredType() and getType() methods to be compatible with different validators (ParameterNamesCheck uses getName, ParameterTypesCheck uses getType).
protected StandaloneType
createType(string $typeName)
Create a StandaloneType with the given type name.
protected object
createMockType(string $typeString)
Create a mock type that returns a string representation.
__construct(string $typeName)
No description
string
__toString()
No description
string
getTypeName()
No description
protected PHPMethod
makeMethodWithPhpDoc(string $name, string|null $phpDoc = null)
No description
protected PHPFunction
makePhpDocFunction(string $id, string|null $phpDoc = null)
No description
protected StubDataQueryInterface
makeStubsWithClass(PHPClass $class)
No description
protected StubDataQueryInterface
makeStubsWithFunction(PHPFunction $function)
No description
protected void
setUp()
No description
protected void
tearDown()
No description
void
testSupportsAllVersions()
No description
void
testEntityNotFoundSucceeds()
No description
void
testEntityWithNoPhpDocSucceeds()
No description
void
testPhpDocWithoutReturnSucceeds()
No description
void
testSingleReturnSucceeds()
No description
void
testSingleReturnWithMultiLineDescriptionSucceeds()
No description
void
testReturnWordInsideDescriptionIsNotCounted()
A description mentioning "@return" mid-line is prose, not a tag.
static array
nonReturnTagProvider()
Longer tag names that merely start with "return" are different tags; they are rejected (or accepted) by PhpDocTagsCheck, not counted here.
void
testSimilarlyNamedTagIsNotCountedAsReturn(string $tag)
No description
void
testTwoReturnsInMethodPhpDocIsFailure()
No description
void
testThreeReturnsAreAllReported()
No description
void
testIdenticalDuplicateReturnsAreFailure()
Two identical @return tags are still two tags — deduplicating them would hide a duplicate that is just as dead as a conflicting one.
void
testDuplicateReturnInEntityPhpDocIsFailure()
No description
void
testOneReturnPerMethodAcrossManyMethodsSucceeds()
Each location is judged on its own docblock: one @return per method is fine even when several methods each declare one.
void
testEveryOffendingMethodIsReportedSeparately()
No description
void
testFunctionWithSingleReturnSucceeds()
No description
void
testFunctionWithDuplicateReturnIsFailure()
No description
void
testKnownProblemAtEntityLevelSkipsCheck()
No description