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