1*55d5df8cSAnna Dabrowska<?php 2*55d5df8cSAnna Dabrowska 3*55d5df8cSAnna Dabrowskanamespace dokuwiki\plugin\tagging\test; 4*55d5df8cSAnna Dabrowska 5*55d5df8cSAnna Dabrowskause \DokuWikiTest; 6*55d5df8cSAnna Dabrowska 7*55d5df8cSAnna Dabrowska/** 8*55d5df8cSAnna Dabrowska * Syntax tests for the tagging plugin 9*55d5df8cSAnna Dabrowska * 10*55d5df8cSAnna Dabrowska * @group plugin_tagging 11*55d5df8cSAnna Dabrowska * @group plugins 12*55d5df8cSAnna Dabrowska */ 13*55d5df8cSAnna Dabrowskaclass SyntaxTest extends DokuWikiTest 14*55d5df8cSAnna Dabrowska{ 15*55d5df8cSAnna Dabrowska protected $pluginsEnabled = ['tagging', 'sqlite']; 16*55d5df8cSAnna Dabrowska 17*55d5df8cSAnna Dabrowska /** 18*55d5df8cSAnna Dabrowska * Provide the test data 19*55d5df8cSAnna Dabrowska * 20*55d5df8cSAnna Dabrowska * @return array 21*55d5df8cSAnna Dabrowska */ 22*55d5df8cSAnna Dabrowska public function nsFilters() 23*55d5df8cSAnna Dabrowska { 24*55d5df8cSAnna Dabrowska return [ 25*55d5df8cSAnna Dabrowska [ 26*55d5df8cSAnna Dabrowska [], 27*55d5df8cSAnna Dabrowska 'test:plugins:tagging' 28*55d5df8cSAnna Dabrowska ], 29*55d5df8cSAnna Dabrowska [ 30*55d5df8cSAnna Dabrowska ['ns' => '*'], 31*55d5df8cSAnna Dabrowska ':' 32*55d5df8cSAnna Dabrowska ], 33*55d5df8cSAnna Dabrowska [ 34*55d5df8cSAnna Dabrowska ['ns' => 'foo'], 35*55d5df8cSAnna Dabrowska 'foo' 36*55d5df8cSAnna Dabrowska ], 37*55d5df8cSAnna Dabrowska [ 38*55d5df8cSAnna Dabrowska ['ns' => ':foo'], 39*55d5df8cSAnna Dabrowska 'foo' 40*55d5df8cSAnna Dabrowska ], 41*55d5df8cSAnna Dabrowska [ 42*55d5df8cSAnna Dabrowska ['ns' => 'foo:bar'], 43*55d5df8cSAnna Dabrowska 'foo:bar' 44*55d5df8cSAnna Dabrowska ], 45*55d5df8cSAnna Dabrowska [ 46*55d5df8cSAnna Dabrowska ['ns' => '.'], 47*55d5df8cSAnna Dabrowska 'test:plugins:tagging' 48*55d5df8cSAnna Dabrowska ], 49*55d5df8cSAnna Dabrowska [ 50*55d5df8cSAnna Dabrowska ['ns' => '..'], 51*55d5df8cSAnna Dabrowska 'test:plugins' 52*55d5df8cSAnna Dabrowska ], 53*55d5df8cSAnna Dabrowska [ 54*55d5df8cSAnna Dabrowska ['ns' => '.:sub'], 55*55d5df8cSAnna Dabrowska 'test:plugins:tagging:sub' 56*55d5df8cSAnna Dabrowska ], 57*55d5df8cSAnna Dabrowska ]; 58*55d5df8cSAnna Dabrowska } 59*55d5df8cSAnna Dabrowska 60*55d5df8cSAnna Dabrowska /** 61*55d5df8cSAnna Dabrowska * Search results 62*55d5df8cSAnna Dabrowska * 63*55d5df8cSAnna Dabrowska * @dataProvider nsFilters 64*55d5df8cSAnna Dabrowska * @param array $data 65*55d5df8cSAnna Dabrowska * @param string $expected 66*55d5df8cSAnna Dabrowska */ 67*55d5df8cSAnna Dabrowska public function testNs($data, $expected) 68*55d5df8cSAnna Dabrowska { 69*55d5df8cSAnna Dabrowska global $ID; 70*55d5df8cSAnna Dabrowska $ID = 'test:plugins:tagging:start'; 71*55d5df8cSAnna Dabrowska 72*55d5df8cSAnna Dabrowska $hlp = plugin_load('helper', 'tagging'); 73*55d5df8cSAnna Dabrowska 74*55d5df8cSAnna Dabrowska $actual = $hlp->resolveNs($data); 75*55d5df8cSAnna Dabrowska $this->assertEquals($expected, $actual); 76*55d5df8cSAnna Dabrowska } 77*55d5df8cSAnna Dabrowska} 78