HtmlHelperTest.php 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <?php
  2. namespace fphammerle\helpers\tests;
  3. use fphammerle\helpers\HtmlHelper;
  4. class HtmlHelperTest extends \PHPUnit_Framework_TestCase
  5. {
  6. public function encodeProvider()
  7. {
  8. return [
  9. ['abc', 'abc'],
  10. ['可以', '可以'],
  11. ['⚕', '⚕'],
  12. ['<abc>', '&lt;abc&gt;'],
  13. ['alert(":-)");', 'alert(&quot;:-)&quot;);'],
  14. ['alert(\':-)\');', 'alert(&#039;:-)&#039;);'],
  15. ];
  16. }
  17. /**
  18. * @dataProvider encodeProvider
  19. */
  20. public function testEncode($string, $expected)
  21. {
  22. $this->assertSame($expected, HtmlHelper::encode($string));
  23. }
  24. public function endTagTypeErrorProvider()
  25. {
  26. return [
  27. [1],
  28. [false],
  29. ];
  30. }
  31. /**
  32. * @dataProvider endTagTypeErrorProvider
  33. * @expectedException \TypeError
  34. */
  35. public function testEndTagTypeError($name)
  36. {
  37. HtmlHelper::endTag($name);
  38. }
  39. public function endTagProvider()
  40. {
  41. return [
  42. ['tag', '</tag>'],
  43. ['end', '</end>'],
  44. [null, null],
  45. ];
  46. }
  47. /**
  48. * @dataProvider endTagProvider
  49. */
  50. public function testEndTag($name, $expected_tag)
  51. {
  52. $this->assertSame($expected_tag, HtmlHelper::endTag($name));
  53. }
  54. }