mirror of
https://github.com/vlucas/valitron.git
synced 2025-12-30 23:01:52 +00:00
refactor test to use public interface instead of protected data by reflection
This commit is contained in:
parent
cf12d976a6
commit
8ec9d8affe
@ -11,6 +11,7 @@ class BaseTestCase extends \PHPUnit_Framework_TestCase
|
||||
{
|
||||
$this->resetProperty('_lang');
|
||||
$this->resetProperty('_langDir');
|
||||
$this->resetProperty('_rules', array());
|
||||
$this->resetProperty('_ruleMessages', array());
|
||||
}
|
||||
|
||||
|
||||
@ -17,19 +17,14 @@ class StaticVsInstanceTest extends BaseTestCase
|
||||
public function testRuleMessagesReplacedAfterConstructor()
|
||||
{
|
||||
$customMessage = 'custom message';
|
||||
$ruleName = 'foo';
|
||||
$ruleName = 'customRule';
|
||||
$fieldName = 'fieldName';
|
||||
Validator::addRule($ruleName, function() {}, $customMessage);
|
||||
|
||||
$prop = new ReflectionProperty('Valitron\Validator', '_ruleMessages');
|
||||
$prop->setAccessible(true);
|
||||
$messages = $prop->getValue();
|
||||
|
||||
$this->assertEquals($customMessage, $messages[$ruleName]);
|
||||
|
||||
new Validator(array(), array());
|
||||
|
||||
$messages = $prop->getValue();
|
||||
$this->assertArrayHasKey($ruleName, $messages);
|
||||
$this->assertEquals($customMessage, $messages[$ruleName]);
|
||||
$v = new Validator(array($fieldName => $fieldName));
|
||||
$v->rule($ruleName, $fieldName);
|
||||
$v->validate();
|
||||
$messages = $v->errors();
|
||||
$this->assertArrayHasKey($fieldName, $messages);
|
||||
$this->assertEquals(ucfirst("$fieldName $customMessage"), $messages[$fieldName][0]);
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user