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])) { if (!is_array($params[0])) {
$params[0] = 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); return $this->validateIn($field, $value, $params);
} }

View File

@ -1720,6 +1720,15 @@ class ValidateTest extends BaseTestCase
$this->assertFalse($v->validate()); $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() public function testContainsUniqueValid()
{ {
// numeric values // numeric values