Add some validation to prevent PHP Warning when value in subset validation is null

This commit is contained in:
Diego Londono 2019-06-27 12:01:05 -03:00
parent a8346868c2
commit 21e9dc1263
2 changed files with 11 additions and 2 deletions

View File

@ -489,7 +489,7 @@ class Validator
if (!is_array($params[0])) {
$params[0] = array($params[0]);
}
if (is_scalar($value)) {
if (is_scalar($value) || is_null($value)) {
return $this->validateIn($field, $value, $params);
}

View File

@ -484,7 +484,7 @@ class ValidateTest extends BaseTestCase
$v->rule('lengthMin', 'str', 4);
$this->assertTrue($v->validate());
}
public function testLengthMinValidAltSyntax()
{
$v = new Valitron\Validator(array('username' => 'martha'));
@ -1720,6 +1720,15 @@ class ValidateTest extends BaseTestCase
$this->assertFalse($v->validate());
}
public function testSubsetAcceptNullValue()
{
// rule value equals null
$v = new Validator(array('test_field' => null));
$v->rule('required', 'test_field');
$v->rule('subset', 'test_field', array('black', 45));
$this->assertFalse($v->validate());
}
public function testContainsUniqueValid()
{
// numeric values