public function testCustomValidation()
 {
     /* @var $nameField \Mindy\Orm\Fields\Field */
     $model = new User();
     $this->assertFalse($model->isValid());
     $this->assertEquals(['username' => ['Cannot be empty', 'Minimal length is 3']], $model->getErrors());
     $nameField = $model->getField('username');
     $this->assertEquals(['Cannot be empty', 'Minimal length is 3'], $nameField->getErrors());
     $this->assertFalse($nameField->isValid());
     $this->assertEquals(['Cannot be empty', 'Minimal length is 3'], $nameField->getErrors());
     $model->username = '******';
     $this->assertEquals('hi', $model->username);
     $this->assertFalse($model->isValid());
     $this->assertEquals('hi', $model->username);
     $model->username = '******';
     $model->isValid();
     $this->assertEquals(['username' => ['Maximum length is 20']], $model->getErrors());
     $model->isValid();
     $this->assertEquals(['username' => ['Maximum length is 20']], $model->getErrors());
 }