CommonHelperTest.php 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126
  1. <?php
  2. App::import('Helper', 'Tools.Common');
  3. App::uses('View', 'View');
  4. App::uses('MyCakeTestCase', 'Tools.Lib');
  5. /**
  6. * Datetime Test Case
  7. *
  8. * @package cake.tests
  9. * @subpackage cake.tests.cases.libs.view.helpers
  10. */
  11. class CommonHelperTest extends MyCakeTestCase {
  12. /**
  13. * setUp method
  14. *
  15. * @access public
  16. * @return void
  17. */
  18. public function setUp() {
  19. $this->Common = new CommonHelper(new View(null));
  20. }
  21. public function testMetaCanonical() {
  22. $is = $this->Common->metaCanonical('/some/url/param1');
  23. $this->out(h($is));
  24. $this->assertEquals('<link rel="canonical" href="/some/url/param1" />', trim($is));
  25. }
  26. public function testMetaAlternate() {
  27. $is = $this->Common->metaAlternate('/some/url/param1', 'de-de');
  28. $this->out(h($is));
  29. $this->assertEquals('<link href="http://'.HTTP_HOST.'/some/url/param1" rel="alternate" hreflang="de-de" />', trim($is));
  30. $is = $this->Common->metaAlternate(array('controller'=>'some', 'action'=>'url'), 'de', true);
  31. $this->out(h($is));
  32. $this->assertEquals('<link href="http://'.HTTP_HOST.'/some/url" rel="alternate" hreflang="de" />', trim($is));
  33. $is = $this->Common->metaAlternate(array('controller'=>'some', 'action'=>'url'), array('de', 'de-ch'), true);
  34. $this->out(h($is));
  35. $this->assertEquals('<link href="http://'.HTTP_HOST.'/some/url" rel="alternate" hreflang="de" />'.PHP_EOL.'<link href="http://'.HTTP_HOST.'/some/url" rel="alternate" hreflang="de-ch" />', trim($is));
  36. $is = $this->Common->metaAlternate(array('controller'=>'some', 'action'=>'url'), array('de' => array('ch', 'at'), 'en'=>array('gb', 'us')), true);
  37. $this->out(h($is));
  38. $this->assertEquals('<link href="http://'.HTTP_HOST.'/some/url" rel="alternate" hreflang="de-ch" />'.PHP_EOL.
  39. '<link href="http://'.HTTP_HOST.'/some/url" rel="alternate" hreflang="de-at" />'.PHP_EOL.
  40. '<link href="http://'.HTTP_HOST.'/some/url" rel="alternate" hreflang="en-gb" />'.PHP_EOL.
  41. '<link href="http://'.HTTP_HOST.'/some/url" rel="alternate" hreflang="en-us" />', trim($is));
  42. }
  43. public function testEsc() {
  44. $is = $this->Common->esc('Some Cool Text with <b>Html</b>');
  45. $this->assertEquals($is, 'Some Cool Text with &lt;b&gt;Html&lt;/b&gt;');
  46. $is = $this->Common->esc('Some Cool Text'.PHP_EOL.'with <b>Html</b>');
  47. $this->assertEquals($is, 'Some Cool Text<br />'.PHP_EOL.'with &lt;b&gt;Html&lt;/b&gt;');
  48. $is = $this->Common->esc('Some Cool'.PHP_EOL.' 2 indends and'.PHP_EOL.' 5 indends'.PHP_EOL.'YEAH');
  49. $this->assertEquals($is, 'Some Cool<br />'.PHP_EOL.'&nbsp;&nbsp;2 indends and<br />'.PHP_EOL.'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;5 indends<br />'.PHP_EOL.'YEAH');
  50. $options = array('tabsToSpaces'=>2);
  51. $is = $this->Common->esc('Some Cool'.PHP_EOL.TB.'1 tab and'.PHP_EOL.TB.TB.'2 tabs'.PHP_EOL.'YEAH', $options);
  52. $this->assertEquals($is, 'Some Cool<br />'.PHP_EOL.'&nbsp;&nbsp;1 tab and<br />'.PHP_EOL.'&nbsp;&nbsp;&nbsp;&nbsp;2 tabs<br />'.PHP_EOL.'YEAH');
  53. }
  54. /**
  55. * test minimizeUrl
  56. *
  57. * @access public
  58. * @return void
  59. * 2009-03-11 ms
  60. */
  61. public function testMinimizeUrl() {
  62. $url = 'http://www.test.de';
  63. $this->assertEquals($url, $this->Common->minimizeUrl($url,20));
  64. $url = 'http://www.test.de';
  65. $this->assertEquals($url, $this->Common->minimizeUrl($url,18));
  66. $url = 'http://www.test.de';
  67. $this->assertEquals('www.test.de', $this->Common->minimizeUrl($url,17));
  68. $url = 'http://www.testpage.de';
  69. $this->assertEquals('ww&#8230;ge.de', $this->Common->minimizeUrl($url,10));
  70. $url = 'http://www.testpage.de';
  71. $this->assertEquals('ww...ge.de', $this->Common->minimizeUrl($url,10, array('placeholder'=>'...')));
  72. # without full http://
  73. $url = 'www.testpage.de';
  74. $this->assertEquals($url, $this->Common->minimizeUrl($url,15));
  75. $url = 'www.testpage.de';
  76. $this->assertEquals('www.te&#8230;ge.de', $this->Common->minimizeUrl($url,14));
  77. }
  78. /**
  79. * test shortenText
  80. *
  81. * @access public
  82. * @return void
  83. * 2009-03-11 ms
  84. */
  85. public function testShortenText() {
  86. }
  87. /**
  88. * tearDown method
  89. *
  90. * @access public
  91. * @return void
  92. */
  93. public function tearDown() {
  94. unset($this->Common);
  95. }
  96. }