CommonHelperTest.php 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. <?php
  2. App::uses('CommonHelper', 'Tools.View/Helper');
  3. App::uses('View', 'View');
  4. App::uses('MyCakeTestCase', 'Tools.TestSuite');
  5. /**
  6. * 2012-11-23 ms
  7. */
  8. class CommonHelperTest extends MyCakeTestCase {
  9. public $Common;
  10. public function setUp() {
  11. parent::setUp();
  12. $this->Common = new CommonHelper(new View(null));
  13. }
  14. /**
  15. */
  16. public function testMetaCanonical() {
  17. $is = $this->Common->metaCanonical('/some/url/param1');
  18. $this->out(h($is));
  19. $this->assertEquals('<link href="'.$this->Common->url('/some/url/param1', true).'" rel="canonical" />', trim($is));
  20. }
  21. /**
  22. */
  23. public function testMetaAlternate() {
  24. $is = $this->Common->metaAlternate('/some/url/param1', 'de-de');
  25. $this->out(h($is));
  26. $this->assertEquals('<link href="' . FULL_BASE_URL.$this->Common->url('/some/url/param1').'" rel="alternate" hreflang="de-de" />', trim($is));
  27. $is = $this->Common->metaAlternate(array('controller'=>'some', 'action'=>'url'), 'de', true);
  28. $this->out(h($is));
  29. $this->assertEquals('<link href="' . FULL_BASE_URL.$this->Common->url('/some/url').'" rel="alternate" hreflang="de" />', trim($is));
  30. $is = $this->Common->metaAlternate(array('controller'=>'some', 'action'=>'url'), array('de', 'de-ch'), true);
  31. $this->out(h($is));
  32. $this->assertEquals('<link href="' . FULL_BASE_URL.$this->Common->url('/some/url').'" rel="alternate" hreflang="de" />'.PHP_EOL.'<link href="' . FULL_BASE_URL.$this->Common->url('/some/url').'" rel="alternate" hreflang="de-ch" />', trim($is));
  33. $is = $this->Common->metaAlternate(array('controller'=>'some', 'action'=>'url'), array('de' => array('ch', 'at'), 'en'=>array('gb', 'us')), true);
  34. $this->out(h($is));
  35. $this->assertEquals('<link href="' . FULL_BASE_URL.$this->Common->url('/some/url').'" rel="alternate" hreflang="de-ch" />'.PHP_EOL.
  36. '<link href="' . FULL_BASE_URL.$this->Common->url('/some/url').'" rel="alternate" hreflang="de-at" />'.PHP_EOL.
  37. '<link href="' . FULL_BASE_URL.$this->Common->url('/some/url').'" rel="alternate" hreflang="en-gb" />'.PHP_EOL.
  38. '<link href="' . FULL_BASE_URL.$this->Common->url('/some/url').'" rel="alternate" hreflang="en-us" />', trim($is));
  39. }
  40. /**
  41. */
  42. public function testEsc() {
  43. $is = $this->Common->esc('Some Cool Text with <b>Html</b>');
  44. $this->assertEquals($is, 'Some Cool Text with &lt;b&gt;Html&lt;/b&gt;');
  45. $is = $this->Common->esc('Some Cool Text'.PHP_EOL.'with <b>Html</b>');
  46. $this->assertEquals($is, 'Some Cool Text<br />'.PHP_EOL.'with &lt;b&gt;Html&lt;/b&gt;');
  47. $is = $this->Common->esc('Some Cool'.PHP_EOL.' 2 indends and'.PHP_EOL.' 5 indends'.PHP_EOL.'YEAH');
  48. $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');
  49. $options = array('tabsToSpaces'=>2);
  50. $is = $this->Common->esc('Some Cool'.PHP_EOL.TB.'1 tab and'.PHP_EOL.TB.TB.'2 tabs'.PHP_EOL.'YEAH', $options);
  51. $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');
  52. }
  53. public function testAsp() {
  54. $res = $this->Common->asp('House', 2, true);
  55. $expected = __('Houses');
  56. $this->assertEquals($expected, $res);
  57. $res = $this->Common->asp('House', 1, true);
  58. $expected = __('House');
  59. $this->assertEquals($expected, $res);
  60. }
  61. public function testSp() {
  62. $res = $this->Common->sp('House', 'Houses', 0, true);
  63. $expected = __('Houses');
  64. $this->assertEquals($expected, $res);
  65. $res = $this->Common->sp('House', 'Houses', 2, true);
  66. $this->assertEquals($expected, $res);
  67. $res = $this->Common->sp('House', 'Houses', 1, true);
  68. $expected = __('House');
  69. $this->assertEquals($expected, $res);
  70. $res = $this->Common->sp('House', 'Houses', 1);
  71. $expected = 'House';
  72. $this->assertEquals($expected, $res);
  73. }
  74. /**
  75. * tearDown method
  76. *
  77. * @return void
  78. */
  79. public function tearDown() {
  80. parent::tearDown();
  81. unset($this->Common);
  82. }
  83. }