예제 #1
0
 /**
  * FIXME should we test this without internet first?
  *
  * @group internet
  */
 public function testExtensionParameters()
 {
     $extension = new helper_plugin_extension_extension();
     $extension->setExtension('extension');
     $this->assertEquals('extension', $extension->getID());
     $this->assertEquals('extension', $extension->getBase());
     $this->assertEquals('Extension Manager', $extension->getDisplayName());
     $this->assertEquals('Michael Hamann', $extension->getAuthor());
     $this->assertEquals('*****@*****.**', $extension->getEmail());
     $this->assertEquals(md5('*****@*****.**'), $extension->getEmailID());
     $this->assertEquals('https://www.dokuwiki.org/plugin:extension', $extension->getURL());
     $this->assertEquals('Allows managing and installing plugins and templates', $extension->getDescription());
     $this->assertFalse($extension->isTemplate());
     $this->assertTrue($extension->isEnabled());
     $this->assertTrue($extension->isInstalled());
     $this->assertTrue($extension->isBundled());
     $extension->setExtension('testing');
     $this->assertEquals('testing', $extension->getID());
     $this->assertEquals('testing', $extension->getBase());
     $this->assertEquals('Testing Plugin', $extension->getDisplayName());
     $this->assertEquals('Tobias Sarnowski', $extension->getAuthor());
     $this->assertEquals('*****@*****.**', $extension->getEmail());
     $this->assertEquals(md5('*****@*****.**'), $extension->getEmailID());
     $this->assertEquals('http://www.dokuwiki.org/plugin:testing', $extension->getURL());
     $this->assertEquals('Used to test the test framework. Should always be disabled.', $extension->getDescription());
     $this->assertFalse($extension->isTemplate());
     $this->assertFalse($extension->isEnabled());
     $this->assertTrue($extension->isInstalled());
     $this->assertTrue($extension->isBundled());
     $extension->setExtension('template:dokuwiki');
     $this->assertEquals('template:dokuwiki', $extension->getID());
     $this->assertEquals('dokuwiki', $extension->getBase());
     $this->assertEquals('DokuWiki Template', $extension->getDisplayName());
     $this->assertEquals('Anika Henke', $extension->getAuthor());
     $this->assertEquals('*****@*****.**', $extension->getEmail());
     $this->assertEquals(md5('*****@*****.**'), $extension->getEmailID());
     $this->assertEquals('http://www.dokuwiki.org/template:dokuwiki', $extension->getURL());
     $this->assertEquals('DokuWiki\'s default template since 2012', $extension->getDescription());
     $this->assertTrue($extension->isTemplate());
     $this->assertTrue($extension->isEnabled());
     $this->assertTrue($extension->isInstalled());
     $this->assertTrue($extension->isBundled());
 }
예제 #2
0
파일: list.php 프로젝트: rsnitsch/dokuwiki
 /**
  * Plugin/template status
  *
  * @param helper_plugin_extension_extension $extension The extension
  * @return string The description of all relevant statusses
  */
 function make_status(helper_plugin_extension_extension $extension)
 {
     $status = array();
     if ($extension->isInstalled()) {
         $status[] = $this->getLang('status_installed');
         if ($extension->isProtected()) {
             $status[] = $this->getLang('status_protected');
         } else {
             $status[] = $extension->isEnabled() ? $this->getLang('status_enabled') : $this->getLang('status_disabled');
         }
     } else {
         $status[] = $this->getLang('status_not_installed');
     }
     if (!$extension->canModify()) {
         $status[] = $this->getLang('status_unmodifiable');
     }
     if ($extension->isBundled()) {
         $status[] = $this->getLang('status_bundled');
     }
     $status[] = $extension->isTemplate() ? $this->getLang('status_template') : $this->getLang('status_plugin');
     return join(', ', $status);
 }