FakedValidationModel.php 1.54 KB
Newer Older
Suralc committed
1 2
<?php

3
namespace yiiunit\data\validators\models;
Suralc committed
4

5 6 7
use yii\base\Model;

class FakedValidationModel extends Model
Suralc committed
8
{
9 10 11 12 13
    public $val_attr_a;
    public $val_attr_b;
    public $val_attr_c;
    public $val_attr_d;
    private $attr = [];
14

15 16 17 18 19 20 21 22 23 24
    /**
     * @param  array $attributes
     * @return self
     */
    public static function createWithAttributes($attributes = [])
    {
        $m = new static();
        foreach ($attributes as $attribute => $value) {
            $m->$attribute = $value;
        }
25

26 27
        return $m;
    }
28

29 30 31 32 33
    public function rules()
    {
        return [
            [['val_attr_a', 'val_attr_b'], 'required', 'on' => 'reqTest'],
            ['val_attr_c', 'integer'],
34 35
            ['attr_images', 'file', 'maxFiles' => 3, 'extensions' => ['png'], 'on' => 'validateMultipleFiles', 'checkExtensionByMimeType' => false],
            ['attr_image', 'file', 'extensions' => ['png'], 'on' => 'validateFile', 'checkExtensionByMimeType' => false]
36 37
        ];
    }
38

39 40 41 42
    public function inlineVal($attribute, $params = [])
    {
        return true;
    }
43

44 45 46 47 48
    public function __get($name)
    {
        if (stripos($name, 'attr') === 0) {
            return isset($this->attr[$name]) ? $this->attr[$name] : null;
        }
49

50 51
        return parent::__get($name);
    }
Suralc committed
52

53 54 55 56 57 58 59 60 61 62 63 64 65
    public function __set($name, $value)
    {
        if (stripos($name, 'attr') === 0) {
            $this->attr[$name] = $value;
        } else {
            parent::__set($name, $value);
        }
    }

    public function getAttributeLabel($attr)
    {
        return $attr;
    }
66
}