mirror of
https://github.com/danog/psalm.git
synced 2024-12-12 09:19:40 +01:00
d8e8ce428e
* Add new config: sealAllMethods * Add some more tests * Fix codesniffer issue with preg_quote * Fix missing method in test * New tag @self-out (WIP) * Add self_out_type to method storage * Add some notes * More work on self-out (WIP) * More work on self-out (WIP) * Use psalm-self-out instead of self-out * Remove extra file * Cleanup * Wrap around try-catch - how to check if a method has/should have storage? * New method hasStorage() * Fix indentation * Fix some errors * Fix indentation * Cast storage type to type * Add proper use-statement in method storage * Correct test class name * Allow self_out to be null * method_id can be string (why, when?) Co-authored-by: Olle <noemail>
39 lines
1.0 KiB
PHP
39 lines
1.0 KiB
PHP
<?php
|
|
namespace Psalm\Tests;
|
|
|
|
class SelfOutTest extends TestCase
|
|
{
|
|
use Traits\ValidCodeAnalysisTestTrait;
|
|
|
|
/**
|
|
* @return iterable<string,array{string,assertions?:array<string,string>,error_levels?:string[]}>
|
|
*/
|
|
public function providerValidCodeParse()
|
|
{
|
|
return [
|
|
'changeInterface' => [
|
|
'<?php
|
|
interface Foo {
|
|
/**
|
|
* @return void
|
|
*/
|
|
public function far() {
|
|
}
|
|
}
|
|
class Bar {
|
|
/**
|
|
* @psalm-self-out Foo
|
|
* @return void
|
|
*/
|
|
public function baz() {
|
|
}
|
|
}
|
|
$bar = new Bar();
|
|
$bar->baz();
|
|
$bar->far();
|
|
'
|
|
]
|
|
];
|
|
}
|
|
}
|