Suralc
12 years ago
1 changed files with 46 additions and 0 deletions
@ -0,0 +1,46 @@ |
|||||||
|
<?php |
||||||
|
|
||||||
|
namespace yiiunit\framework\validators; |
||||||
|
|
||||||
|
|
||||||
|
use yii\validators\FilterValidator; |
||||||
|
use yiiunit\data\validators\models\FakedValidationModel; |
||||||
|
use yiiunit\TestCase; |
||||||
|
|
||||||
|
class FilterValidatorTest extends TestCase |
||||||
|
{ |
||||||
|
public function testAssureExceptionOnInit() |
||||||
|
{ |
||||||
|
$this->setExpectedException('yii\base\InvalidConfigException'); |
||||||
|
$val = new FilterValidator(); |
||||||
|
} |
||||||
|
|
||||||
|
public function testValidateAttribute() |
||||||
|
{ |
||||||
|
$m = FakedValidationModel::createWithAttributes(array( |
||||||
|
'attr_one' => ' to be trimmed ', |
||||||
|
'attr_two' => 'set this to null', |
||||||
|
'attr_empty1' => '', |
||||||
|
'attr_empty2' => null |
||||||
|
)); |
||||||
|
$val = new FilterValidator(array('filter' => 'trim')); |
||||||
|
$val->validateAttribute($m, 'attr_one'); |
||||||
|
$this->assertSame('to be trimmed', $m->attr_one); |
||||||
|
$val->filter = function ($value) { |
||||||
|
return null; |
||||||
|
}; |
||||||
|
$val->validateAttribute($m, 'attr_two'); |
||||||
|
$this->assertNull($m->attr_two); |
||||||
|
$val->filter = array($this, 'notToBeNull'); |
||||||
|
$val->validateAttribute($m, 'attr_empty1'); |
||||||
|
$this->assertSame($this->notToBeNull(''), $m->attr_empty1); |
||||||
|
$val->skipOnEmpty = true; |
||||||
|
$val->validateAttribute($m, 'attr_empty2'); |
||||||
|
$this->assertNotNull($m->attr_empty2); |
||||||
|
} |
||||||
|
|
||||||
|
public function notToBeNull($value) |
||||||
|
{ |
||||||
|
return 'not null'; |
||||||
|
} |
||||||
|
} |
Loading…
Reference in new issue