BooleanNodeTest.php 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. <?php
  2. namespace Symfony\Component\Config\Definition;
  3. class BooleanNodeTest extends \PHPUnit_Framework_TestCase
  4. {
  5. /**
  6. * @dataProvider getValidValues
  7. */
  8. public function testNormalize($value)
  9. {
  10. $node = new BooleanNode('test');
  11. $this->assertSame($value, $node->normalize($value));
  12. }
  13. public function getValidValues()
  14. {
  15. return array(
  16. array(false),
  17. array(true),
  18. );
  19. }
  20. /**
  21. * @dataProvider getInvalidValues
  22. * @expectedException Symfony\Component\Config\Definition\Exception\InvalidTypeException
  23. */
  24. public function testNormalizeThrowsExceptionOnInvalidValues($value)
  25. {
  26. $node = new BooleanNode('test');
  27. $node->normalize($value);
  28. }
  29. public function getInvalidValues()
  30. {
  31. return array(
  32. array(null),
  33. array(''),
  34. array('foo'),
  35. array(0),
  36. array(1),
  37. array(0.0),
  38. array(0.1),
  39. array(array()),
  40. array(array('foo' => 'bar')),
  41. array(new \stdClass()),
  42. );
  43. }
  44. }