1*ab9621a8SMark Prins<?php 2*ab9621a8SMark Prins 3*ab9621a8SMark Prins/** 4*ab9621a8SMark Prins * Syntax 'keyword_source' tests for the description plugin. 5*ab9621a8SMark Prins * 6*ab9621a8SMark Prins * @group plugin_description 7*ab9621a8SMark Prins * @group plugins 8*ab9621a8SMark Prins * 9*ab9621a8SMark Prins * @author Mark C. Prins <mprins@users.sf.net> 10*ab9621a8SMark Prins * 11*ab9621a8SMark Prins * @noinspection AutoloadingIssuesInspection 12*ab9621a8SMark Prins * @phpcs:disable Squiz.Classes.ValidClassName.NotCamelCaps 13*ab9621a8SMark Prins */ 14*ab9621a8SMark Prinsclass global_plugin_description_test extends DokuWikiTest 15*ab9621a8SMark Prins{ 16*ab9621a8SMark Prins protected $pluginsEnabled = array('description'); 17*ab9621a8SMark Prins 18*ab9621a8SMark Prins /** 19*ab9621a8SMark Prins * copy data and pages. 20*ab9621a8SMark Prins */ 21*ab9621a8SMark Prins public static function setUpBeforeClass(): void 22*ab9621a8SMark Prins { 23*ab9621a8SMark Prins parent::setUpBeforeClass(); 24*ab9621a8SMark Prins TestUtils::rcopy(TMP_DIR, __DIR__ . '/data/'); 25*ab9621a8SMark Prins } 26*ab9621a8SMark Prins 27*ab9621a8SMark Prins final public function setUp(): void 28*ab9621a8SMark Prins { 29*ab9621a8SMark Prins global $conf; 30*ab9621a8SMark Prins parent::setUp(); 31*ab9621a8SMark Prins $conf['plugin']['description']['keyword_source'] = 'global'; 32*ab9621a8SMark Prins $conf['plugin']['description']['global_description'] = 'my global description'; 33*ab9621a8SMark Prins } 34*ab9621a8SMark Prins 35*ab9621a8SMark Prins /** 36*ab9621a8SMark Prins * @throws Exception if anything goes wrong 37*ab9621a8SMark Prins */ 38*ab9621a8SMark Prins final public function testHeaderFromSyntax(): void 39*ab9621a8SMark Prins { 40*ab9621a8SMark Prins $index = plugin_load('syntax', 'description'); 41*ab9621a8SMark Prins $this->assertInstanceOf(syntax_plugin_description::class, $index); 42*ab9621a8SMark Prins 43*ab9621a8SMark Prins $request = new TestRequest(); 44*ab9621a8SMark Prins $response = $request->get(array('id' => 'description_syntax')); 45*ab9621a8SMark Prins 46*ab9621a8SMark Prins // check description meta headers, set from file 47*ab9621a8SMark Prins $this->assertEquals( 48*ab9621a8SMark Prins 'my global description', 49*ab9621a8SMark Prins $response->queryHTML('meta[name="description"]')->attr('content') 50*ab9621a8SMark Prins ); 51*ab9621a8SMark Prins } 52*ab9621a8SMark Prins}