自动填充移出Validate类

This commit is contained in:
thinkphp
2016-03-07 22:00:21 +08:00
parent 915750ee8e
commit 06816d5f52
3 changed files with 141 additions and 174 deletions

View File

@@ -98,56 +98,4 @@ class validateTest extends \PHPUnit_Framework_TestCase
}
}
public function testFill()
{
$data = [
'username' => '',
'nickname' => 'nickname',
'phone' => ' 123456',
'hobby' => ['1', '2'],
'cityid' => '1',
'a' => 'a',
'b' => 'b',
];
$auto = [
'user' => [
'__option__' => [
'value_fill' => ['username', 'password', 'phone'],
'exists_fill' => 'nickname',
],
'username' => ['strtolower', 'callback'],
'password' => ['md5', 'callback'],
'nickname' => [[ & $this, 'fillName'], 'callback', 'cn_'],
'phone' => function ($value, $data) {
return trim($value);
},
'ab' => ['a,b', 'serialize'],
'cityid' => ['1', 'ignore'],
'address' => ['address'],
'integral' => 0,
['reg_time', 'time', 'callback'],
['login_time', function ($value, $data) {
return $data['reg_time'];
}],
],
];
Config::set('auto', $auto);
$result = Validate::fill($data, 'user');
$data['nickname'] = 'cn_nickname';
$data['phone'] = '123456';
$data['ab'] = serialize(['a' => 'a', 'b' => 'b']);
$data['address'] = 'address';
$data['integral'] = 0;
$data['reg_time'] = time();
$data['login_time'] = $data['reg_time'];
unset($data['cityid'], $data['a'], $data['b']);
$this->assertEquals($data, $result);
}
public function fillName($value, $prefix)
{
return $prefix . trim($value);
}
}