PluginAddlinkTest.php 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <?php
  2. /**
  3. * PluginPlayvideosTest.php
  4. */
  5. require_once 'plugins/addlink_toolbar/addlink_toolbar.php';
  6. require_once 'application/Router.php';
  7. /**
  8. * Class PluginAddlinkTest
  9. * Unit test for the Addlink toolbar plugin
  10. */
  11. class PluginAddlinkTest extends PHPUnit_Framework_TestCase
  12. {
  13. /**
  14. * Reset plugin path.
  15. */
  16. function setUp()
  17. {
  18. PluginManager::$PLUGINS_PATH = 'plugins';
  19. }
  20. /**
  21. * Test render_header hook while logged in.
  22. */
  23. function testAddlinkHeaderLoggedIn()
  24. {
  25. $str = 'stuff';
  26. $data = array($str => $str);
  27. $data['_PAGE_'] = Router::$PAGE_LINKLIST;
  28. $data['_LOGGEDIN_'] = true;
  29. $data = hook_addlink_toolbar_render_header($data);
  30. $this->assertEquals($str, $data[$str]);
  31. $this->assertEquals(1, count($data['fields_toolbar']));
  32. $data = array($str => $str);
  33. $data['_PAGE_'] = $str;
  34. $data['_LOGGEDIN_'] = true;
  35. $data = hook_addlink_toolbar_render_header($data);
  36. $this->assertEquals($str, $data[$str]);
  37. $this->assertArrayNotHasKey('fields_toolbar', $data);
  38. }
  39. /**
  40. * Test render_header hook while logged out.
  41. */
  42. function testAddlinkHeaderLoggedOut()
  43. {
  44. $str = 'stuff';
  45. $data = array($str => $str);
  46. $data['_PAGE_'] = Router::$PAGE_LINKLIST;
  47. $data['_LOGGEDIN_'] = false;
  48. $data = hook_addlink_toolbar_render_header($data);
  49. $this->assertEquals($str, $data[$str]);
  50. $this->assertArrayNotHasKey('fields_toolbar', $data);
  51. }
  52. /**
  53. * Test render_includes hook while logged in.
  54. */
  55. function testAddlinkIncludesLoggedIn()
  56. {
  57. $str = 'stuff';
  58. $data = array($str => $str);
  59. $data['_PAGE_'] = Router::$PAGE_LINKLIST;
  60. $data['_LOGGEDIN_'] = true;
  61. $data = hook_addlink_toolbar_render_includes($data);
  62. $this->assertEquals($str, $data[$str]);
  63. $this->assertEquals(1, count($data['css_files']));
  64. $str = 'stuff';
  65. $data = array($str => $str);
  66. $data['_PAGE_'] = $str;
  67. $data['_LOGGEDIN_'] = true;
  68. $data = hook_addlink_toolbar_render_includes($data);
  69. $this->assertEquals($str, $data[$str]);
  70. $this->assertArrayNotHasKey('css_files', $data);
  71. }
  72. /**
  73. * Test render_includes hook.
  74. * Should not affect css files while logged out.
  75. */
  76. function testAddlinkIncludesLoggedOut()
  77. {
  78. $str = 'stuff';
  79. $data = array($str => $str);
  80. $data['_PAGE_'] = Router::$PAGE_LINKLIST;
  81. $data['_LOGGEDIN_'] = false;
  82. $data = hook_addlink_toolbar_render_includes($data);
  83. $this->assertEquals($str, $data[$str]);
  84. $this->assertArrayNotHasKey('css_files', $data);
  85. }
  86. }