[ Index ]

PHP Cross Reference of DokuWiki

title

Body

[close]

/_test/tests/Extension/ -> EventTest.php (source)

   1  <?php
   2  
   3  namespace dokuwiki\test\Extension;
   4  
   5  use dokuwiki\Extension\Event;
   6  
   7  class EventTest extends \DokuWikiTest
   8  {
   9      static public function staticFunc(&$data)
  10      {
  11          $data['test'] = strtoupper($data['test']);
  12      }
  13  
  14      public function dynamicFunc(&$data)
  15      {
  16          $data['test'] = strtoupper($data['test']);
  17      }
  18  
  19      public function testGlobal()
  20      {
  21          $data = 'test';
  22          $result = Event::createAndTrigger('TESTTRIGGER', $data, 'strtoupper');
  23          $this->assertEquals('TEST', $result);
  24      }
  25  
  26      public function testDynamic()
  27      {
  28          $data = ['test' => 'test'];
  29          Event::createAndTrigger('TESTTRIGGER', $data, [$this, 'dynamicFunc']);
  30          $this->assertEquals(['test' => 'TEST'], $data);
  31      }
  32  
  33      public function testStatic()
  34      {
  35          $data = ['test' => 'test'];
  36          Event::createAndTrigger('TESTTRIGGER', $data, self::class . '::staticFunc');
  37          $this->assertEquals(['test' => 'TEST'], $data);
  38  
  39          $data = ['test' => 'test'];
  40          Event::createAndTrigger('TESTTRIGGER', $data, [self::class, 'staticFunc']);
  41          $this->assertEquals(['test' => 'TEST'], $data);
  42      }
  43  }