* * For the full copyright and license information, please view the "LICENSE.md" * file that was distributed with this source code. */ declare(strict_types=1); namespace Respect\Validation\Rules; use Respect\Validation\Test\RuleTestCase; use stdClass; /** * @group rule * * @covers \Respect\Validation\Rules\AbstractFilterRule * @covers \Respect\Validation\Rules\Alnum * * @author Alexandre Gomes Gaigalas * @author Gabriel Caruso * @author Henrique Moody * @author Islam Elshobokshy * @author Nick Lombard * @author Pascal Borreli */ final class AlnumTest extends RuleTestCase { /** * {@inheritdoc} */ public function providerForValidInput(): array { return [ [new Alnum(), 'alganet'], [new Alnum('- ! :'), 'foo :- 123 !'], [new Alnum('0-9'), '0alg-anet0'], [new Alnum(), '1'], [new Alnum(), 'a'], [new Alnum(), 'foobar'], [new Alnum('_'), 'rubinho_'], [new Alnum('.'), 'google.com'], [new Alnum(' '), 'alganet alganet'], [new Alnum(), 0], [new Alnum('!@#$%^&*(){}'), '!@#$%^&*(){}abc123'], [new Alnum('[]?+=/\\-_|"\',<>.'), '[]?+=/\\-_|"\',<>.abc123'], [new Alnum("[]?+=/\\-_|\"',<>. \t\n"), "abc[]?+=/\\-_|\"',<>. \t\n123"], [new Alnum('-', '*'), 'a-1*d'], ]; } /** * {@inheritdoc} */ public function providerForInvalidInput(): array { return [ [new Alnum(), ''], [new Alnum(), 'number 100%'], [new Alnum('%'), 'number 100%'], [new Alnum(), '@#$'], [new Alnum(), '_'], [new Alnum(), 'dgç'], [new Alnum(), 1e21], [new Alnum(), null], [new Alnum(), new stdClass()], [new Alnum(), []], [new Alnum('%'), 'number 100%'], [new Alnum(), "\t"], [new Alnum(), "\n"], [new Alnum(), "\nabc"], [new Alnum(), "\tdef"], [new Alnum(), "\nabc \t"], [new Alnum(), 'alganet alganet'], ]; } }