1. Go to this page and download the library: Download fp4php/psalm-toolkit library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
fp4php / psalm-toolkit example snippets
namespace Fp\Decode\Test\Static;
use Fp\PsalmToolkit\StaticTest\PsalmTest;
use Fp\PsalmToolkit\StaticTest\StaticTestCase;
use Fp\PsalmToolkit\StaticType\StaticTypes as t;
final class ExampleTest extends PsalmTest
{
public function __invoke(): void
{
StaticTestCase::describe('See InvalidScalarArgument issue')
->haveCode(function() {
$plus = fn(int $a, int $b): int => $a + $b;
$plus(10, 10.00);
})
->seePsalmIssue(
type: 'InvalidScalarArgument',
message: 'Argument 2 expects int, float(10) provided',
);
StaticTestCase::describe('See return type (invariant type compare)')
->haveCode(function() {
return [
'twenty' => 10 + 10,
'message' => 'Hello world!'
];
})
->seeReturnType(
is: t::shape([
'twenty' => t::literal(20),
'message' => t::literal('Hello world!'),
]),
);
StaticTestCase::describe('See return type (covariant type compare)')
->haveCode(function() {
return [
'twenty' => 10 + 10,
'message' => 'Hello world!'
];
})
->seeReturnType(
is: t::shape([
'twenty' => t::int(),
'message' => t::string(),
]),
invariant: false,
);
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.