NullValidatorTest.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. <?php
  2. namespace Symfony\Tests\Component\Validator;
  3. use Symfony\Component\Validator\Constraints\Null;
  4. use Symfony\Component\Validator\Constraints\NullValidator;
  5. class NullValidatorTest extends \PHPUnit_Framework_TestCase
  6. {
  7. protected $validator;
  8. protected function setUp()
  9. {
  10. $this->validator = new NullValidator();
  11. }
  12. public function testNullIsValid()
  13. {
  14. $this->assertTrue($this->validator->isValid(null, new Null()));
  15. }
  16. /**
  17. * @dataProvider getInvalidValues
  18. */
  19. public function testInvalidValues($value)
  20. {
  21. $this->assertFalse($this->validator->isValid($value, new Null()));
  22. }
  23. public function getInvalidValues()
  24. {
  25. return array(
  26. array(0),
  27. array(false),
  28. array(true),
  29. array(''),
  30. );
  31. }
  32. public function testSetMessage()
  33. {
  34. $constraint = new Null(array(
  35. 'message' => 'myMessage'
  36. ));
  37. $this->assertFalse($this->validator->isValid(1, $constraint));
  38. $this->assertEquals($this->validator->getMessageTemplate(), 'myMessage');
  39. $this->assertEquals($this->validator->getMessageParameters(), array(
  40. '{{ value }}' => 1,
  41. ));
  42. }
  43. }