PluginPubsubhubbubTest.php 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. <?php
  2. require_once 'plugins/pubsubhubbub/pubsubhubbub.php';
  3. require_once 'application/Router.php';
  4. /**
  5. * Class PluginPubsubhubbubTest
  6. * Unit test for the pubsubhubbub plugin
  7. */
  8. class PluginPubsubhubbubTest extends PHPUnit_Framework_TestCase
  9. {
  10. /**
  11. * @var string Config file path (without extension).
  12. */
  13. protected static $configFile = 'tests/utils/config/configJson';
  14. /**
  15. * Reset plugin path
  16. */
  17. public function setUp()
  18. {
  19. PluginManager::$PLUGINS_PATH = 'plugins';
  20. }
  21. /**
  22. * Test render_feed hook with an RSS feed.
  23. */
  24. public function testPubSubRssRenderFeed()
  25. {
  26. $hub = 'http://domain.hub';
  27. $conf = new ConfigManager(self::$configFile);
  28. $conf->set('plugins.PUBSUBHUB_URL', $hub);
  29. $data['_PAGE_'] = Router::$PAGE_FEED_RSS;
  30. $data = hook_pubsubhubbub_render_feed($data, $conf);
  31. $expected = '<atom:link rel="hub" href="'. $hub .'" />';
  32. $this->assertEquals($expected, $data['feed_plugins_header'][0]);
  33. }
  34. /**
  35. * Test render_feed hook with an ATOM feed.
  36. */
  37. public function testPubSubAtomRenderFeed()
  38. {
  39. $hub = 'http://domain.hub';
  40. $conf = new ConfigManager(self::$configFile);
  41. $conf->set('plugins.PUBSUBHUB_URL', $hub);
  42. $data['_PAGE_'] = Router::$PAGE_FEED_ATOM;
  43. $data = hook_pubsubhubbub_render_feed($data, $conf);
  44. $expected = '<link rel="hub" href="'. $hub .'" />';
  45. $this->assertEquals($expected, $data['feed_plugins_header'][0]);
  46. }
  47. }