Files
php-uuid/tests/static-analysis/ValidUuidIsNonEmpty.php
T
George Steel 4a14ce0c62 fix: Amends psalm assertion syntax on Uuid::isValid() to prevent incorrect type inference (#486)
* fix: Amends psalm assertion syntax on `Uuid::isValid()` to prevent incorrect type inference
* Add static analysis test case for invalid input
2023-01-10 16:09:08 -06:00

45 lines
926 B
PHP

<?php
declare(strict_types=1);
namespace Ramsey\Uuid\StaticAnalysis;
use InvalidArgumentException;
use Ramsey\Uuid\Uuid;
final class ValidUuidIsNonEmpty
{
/** @return non-empty-string */
public function validUuidsAreNotEmpty(string $input): string
{
if (Uuid::isValid($input)) {
return $input;
}
throw new InvalidArgumentException('Not a UUID');
}
/**
* @param non-empty-string $input
*
* @return non-empty-string
*/
public function givenNonEmptyInputAssertionRemainsValid(string $input): string
{
if (Uuid::isValid($input)) {
return $input;
}
throw new InvalidArgumentException('Not a UUID');
}
public function givenInvalidInputValueRemainsAString(string $input): string
{
if (Uuid::isValid($input)) {
return 'It Worked!';
}
return $input;
}
}