<?php
/*
* This file is part of Chevere.
*
* (c) Rodolfo Berrios <[email protected]>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
declare(strict_types=1);
namespace Chevere\Tests\Attributes;
use Chevere\Parameter\Attributes\ArrayAttr;
use Chevere\Parameter\Attributes\IntAttr;
use InvalidArgumentException;
use PHPUnit\Framework\TestCase;
use function Chevere\Parameter\arrayp;
use function Chevere\Parameter\int;
final class ArrayAttrTest extends TestCase
{
public function testConstruct(): void
{
$parameter = arrayp(
key: int(min: 1)
);
$attr = new ArrayAttr(
key: new IntAttr(min: 1)
);
$parameter = $attr->parameter();
$this->assertEquals($parameter, $attr->parameter());
$this->expectException(InvalidArgumentException::class);
$attr->__invoke([
'key' => 0,
]);
}
}
|