1*8449cc9dSDominik Eckelmann<?php 2*8449cc9dSDominik Eckelmann 3*8449cc9dSDominik Eckelmannclass PageUtilsIsHiddenPageTest extends DokuWikiTest { 4*8449cc9dSDominik Eckelmann 5*8449cc9dSDominik Eckelmann function prepare($hidePages = '^:test$', $act = 'show') { 6*8449cc9dSDominik Eckelmann global $conf; 7*8449cc9dSDominik Eckelmann global $ACT; 8*8449cc9dSDominik Eckelmann $conf['hidepages'] = $hidePages; 9*8449cc9dSDominik Eckelmann $ACT = $act; 10*8449cc9dSDominik Eckelmann } 11*8449cc9dSDominik Eckelmann 12*8449cc9dSDominik Eckelmann function testHiddenOff(){ 13*8449cc9dSDominik Eckelmann $this->prepare(''); 14*8449cc9dSDominik Eckelmann 15*8449cc9dSDominik Eckelmann $this->assertFalse(isHiddenPage('test')); 16*8449cc9dSDominik Eckelmann } 17*8449cc9dSDominik Eckelmann 18*8449cc9dSDominik Eckelmann function testHiddenOffAdmin(){ 19*8449cc9dSDominik Eckelmann $this->prepare('^:test$', 'admin'); 20*8449cc9dSDominik Eckelmann 21*8449cc9dSDominik Eckelmann $this->assertFalse(isHiddenPage('test')); 22*8449cc9dSDominik Eckelmann } 23*8449cc9dSDominik Eckelmann 24*8449cc9dSDominik Eckelmann function testHiddenOnMatch(){ 25*8449cc9dSDominik Eckelmann $this->prepare(); 26*8449cc9dSDominik Eckelmann 27*8449cc9dSDominik Eckelmann $this->assertTrue(isHiddenPage('test')); 28*8449cc9dSDominik Eckelmann } 29*8449cc9dSDominik Eckelmann 30*8449cc9dSDominik Eckelmann function testHiddenOnNoMatch(){ 31*8449cc9dSDominik Eckelmann $this->prepare(); 32*8449cc9dSDominik Eckelmann 33*8449cc9dSDominik Eckelmann $this->assertFalse(isHiddenPage('another')); 34*8449cc9dSDominik Eckelmann } 35*8449cc9dSDominik Eckelmann 36*8449cc9dSDominik Eckelmann function testEventHandler() { 37*8449cc9dSDominik Eckelmann global $EVENT_HANDLER; 38*8449cc9dSDominik Eckelmann $this->prepare(); 39*8449cc9dSDominik Eckelmann $EVENT_HANDLER->register_hook('PAGEUTILS_ID_HIDEPAGE', 'BEFORE', $this, 'alwaysHide'); 40*8449cc9dSDominik Eckelmann 41*8449cc9dSDominik Eckelmann $this->assertFalse(isHiddenPage('test')); 42*8449cc9dSDominik Eckelmann } 43*8449cc9dSDominik Eckelmann 44*8449cc9dSDominik Eckelmann function alwaysHide(Doku_Event &$event, $params) { 45*8449cc9dSDominik Eckelmann $event->data['hide'] = true; 46*8449cc9dSDominik Eckelmann } 47*8449cc9dSDominik Eckelmann 48*8449cc9dSDominik Eckelmann} 49*8449cc9dSDominik Eckelmann//Setup VIM: ex: et ts=4 : 50