Code Coverage
 
Classes and Traits
Functions and Methods
Lines
Total
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
CRAP
100.00% covered (success)
100.00%
8 / 8
Slug
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
1 / 1
2
100.00% covered (success)
100.00%
8 / 8
 validate
100.00% covered (success)
100.00%
1 / 1
2
100.00% covered (success)
100.00%
8 / 8
<?php
namespace Verja\Validator;
use Verja\Error;
use Verja\Validator;
class Slug extends Validator
{
    /**
     * Validate $value
     *
     * @param mixed $value
     * @param array $context
     * @return bool
     */
    public function validate($value, array $context = []): bool
    {
        $regex = '/^[0-9a-z-_]+$/u';
        if (preg_match($regex, $value)) {
            return true;
        }
        $this->error = new Error(
            'NO_SLUG',
            $value,
            'value should be a valid slug'
        );
        return false;
    }
}