$v->addMessage('foobar', 'foo'); $v->setMessage('foobar', 'bar'); $t->is($v->getMessage('foobar'), 'bar', '->addMessage() adds a new error code'); // ->getErrorCodes() $t->diag('->getErrorCodes()'); $t->is($v->getErrorCodes(), array('required', 'invalid', 'foo'), '->getErrorCodes() returns an array of error codes the validator can use'); // ::getCharset() ::setCharset() $t->diag('::getCharset() ::setCharset()'); $t->is(sfValidatorBase::getCharset(), 'UTF-8', '::getCharset() returns the charset to use for validators'); sfValidatorBase::setCharset('ISO-8859-1'); $t->is(sfValidatorBase::getCharset(), 'ISO-8859-1', '::setCharset() changes the charset to use for validators'); // ->asString() $t->diag('->asString()'); $v = new ValidatorIdentity(); $t->is($v->asString(), 'ValidatorIdentity()', '->asString() returns a string representation of the validator'); $v->setOption('required', false); $v->setOption('foo', 'foo'); $t->is($v->asString(), 'ValidatorIdentity({ required: false, foo: foo })', '->asString() returns a string representation of the validator'); $v->setMessage('required', 'This is required.'); $t->is($v->asString(), 'ValidatorIdentity({ required: false, foo: foo }, { required: \'This is required.\' })', '->asString() returns a string representation of the validator'); $v = new ValidatorIdentity(); $v->setMessage('required', 'This is required.'); $t->is($v->asString(), 'ValidatorIdentity({}, { required: \'This is required.\' })', '->asString() returns a string representation of the validator'); // setRequiredMessage() setInvalidMessage() $t->diag('setRequiredMessage() setInvalidMessage()'); ValidatorIdentity::setRequiredMessage('this is required by default'); ValidatorIdentity::setInvalidMessage('this is invalid by default'); $v = new ValidatorIdentity(); $defaultMessages = $v->getDefaultMessages(); $t->is($defaultMessages['required'], 'this is required by default', 'setRequiredMessage() sets the default required message'); $t->is($defaultMessages['invalid'], 'this is invalid by default', 'setInvalidMessage() sets the default required message');
$t->diag('->getErrorCodes()'); $t->is($v->getErrorCodes(), array('required', 'invalid', 'foo'), '->getErrorCodes() returns an array of error codes the validator can use'); // ::getCharset() ::setCharset() $t->diag('::getCharset() ::setCharset()'); $t->is(sfValidatorBase::getCharset(), 'UTF-8', '::getCharset() returns the charset to use for validators'); sfValidatorBase::setCharset('ISO-8859-1'); $t->is(sfValidatorBase::getCharset(), 'ISO-8859-1', '::setCharset() changes the charset to use for validators'); // ->asString() $t->diag('->asString()'); $v = new ValidatorIdentity(); $t->is($v->asString(), 'ValidatorIdentity()', '->asString() returns a string representation of the validator'); $v->setOption('required', false); $v->setOption('foo', 'foo'); $t->is($v->asString(), 'ValidatorIdentity({ required: false, foo: foo })', '->asString() returns a string representation of the validator'); $v->setMessage('required', 'This is required.'); $t->is($v->asString(), 'ValidatorIdentity({ required: false, foo: foo }, { required: \'This is required.\' })', '->asString() returns a string representation of the validator'); $v = new ValidatorIdentity(); $v->setMessage('required', 'This is required.'); $t->is($v->asString(), 'ValidatorIdentity({}, { required: \'This is required.\' })', '->asString() returns a string representation of the validator'); // ::setDefaultMessage() $t->diag('::setDefaultMessage()'); ValidatorIdentity::setDefaultMessage('required', 'This field is required.'); ValidatorIdentity::setDefaultMessage('invalid', 'This field is invalid.'); ValidatorIdentity::setDefaultMessage('foo', 'Foo bar.'); $v = new ValidatorIdentity(); $t->is($v->getMessage('required'), 'This field is required.', '::setDefaultMessage() sets the default message for an error'); $t->is($v->getMessage('invalid'), 'This field is invalid.', '::setDefaultMessage() sets the default message for an error'); $t->is($v->getMessage('foo'), 'Foo bar.', '::setDefaultMessage() sets the default message for an error'); $v = new ValidatorIdentity(array(), array('required' => 'Yep, this is required!', 'foo' => 'Yep, this is a foo error!')); $t->is($v->getMessage('required'), 'Yep, this is required!', '::setDefaultMessage() is ignored if the validator explicitly overrides the message'); $t->is($v->getMessage('foo'), 'Yep, this is a foo error!', '::setDefaultMessage() is ignored if the validator explicitly overrides the message');
$t->pass('->setMessage() throws an InvalidArgumentException if the message is not registered'); } // ->setMessages() $t->diag('->setMessages()'); $v->setMessages(array('required' => 'This is required.')); $t->is($v->getMessages(), array('required' => 'This is required.'), '->setMessages() changes all error messages'); // ->addMessage() $t->diag('->addMessage()'); $v->addMessage('foobar', 'foo'); $v->setMessage('foobar', 'bar'); $t->is($v->getMessage('foobar'), 'bar', '->addMessage() adds a new error code'); // ->getErrorCodes() $t->diag('->getErrorCodes()'); $t->is($v->getErrorCodes(), array('required', 'invalid', 'foo'), '->getErrorCodes() returns an array of error codes the validator can use'); // ::getCharset() ::setCharset() $t->diag('::getCharset() ::setCharset()'); $t->is(sfValidatorBase::getCharset(), 'UTF-8', '::getCharset() returns the charset to use for validators'); sfValidatorBase::setCharset('ISO-8859-1'); $t->is(sfValidatorBase::getCharset(), 'ISO-8859-1', '::setCharset() changes the charset to use for validators'); // ->asString() $t->diag('->asString()'); $v = new ValidatorIdentity(); $t->is($v->asString(), 'ValidatorIdentity()', '->asString() returns a string representation of the validator'); $v->setOption('required', false); $v->setOption('foo', 'foo'); $t->is($v->asString(), 'ValidatorIdentity({ required: false, foo: foo })', '->asString() returns a string representation of the validator'); $v->setMessage('required', 'This is required.'); $t->is($v->asString(), 'ValidatorIdentity({ required: false, foo: foo }, { required: \'This is required.\' })', '->asString() returns a string representation of the validator'); $v = new ValidatorIdentity(); $v->setMessage('required', 'This is required.'); $t->is($v->asString(), 'ValidatorIdentity({}, { required: \'This is required.\' })', '->asString() returns a string representation of the validator');