add testing and remove code comment
This commit is contained in:
committed by
Ronald Quenta
parent
f92f4ad170
commit
cb15e915f4
@@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
<phpunit backupGlobals="false"
|
<phpunit backupGlobals="false"
|
||||||
backupStaticAttributes="false"
|
backupStaticAttributes="false"
|
||||||
colors="false"
|
colors="true"
|
||||||
convertErrorsToExceptions="true"
|
convertErrorsToExceptions="true"
|
||||||
convertNoticesToExceptions="true"
|
convertNoticesToExceptions="true"
|
||||||
convertWarningsToExceptions="true"
|
convertWarningsToExceptions="true"
|
||||||
|
|||||||
@@ -2,6 +2,8 @@
|
|||||||
|
|
||||||
namespace Tests\ProcessMaker\Plugins;
|
namespace Tests\ProcessMaker\Plugins;
|
||||||
|
|
||||||
|
use ProcessMaker\Plugins\Interfaces\CssFile;
|
||||||
|
use ProcessMaker\Plugins\Interfaces\MenuDetail;
|
||||||
use ProcessMaker\Plugins\Interfaces\PluginDetail;
|
use ProcessMaker\Plugins\Interfaces\PluginDetail;
|
||||||
use ProcessMaker\Plugins\Interfaces\Plugins;
|
use ProcessMaker\Plugins\Interfaces\Plugins;
|
||||||
use ProcessMaker\Plugins\PluginsRegistry;
|
use ProcessMaker\Plugins\PluginsRegistry;
|
||||||
@@ -26,18 +28,18 @@ class PluginsRegistryTest extends WorkflowTestCase
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @test
|
* Test get Plugins
|
||||||
*/
|
*/
|
||||||
public function getPlugins()
|
public function testGetPlugins()
|
||||||
{
|
{
|
||||||
$this->assertObjectHasAttribute('Plugins', $this->oPluginRegistry, 'Plugins attribute does not exist');
|
$this->assertObjectHasAttribute('Plugins', $this->oPluginRegistry, 'Plugins attribute does not exist');
|
||||||
$this->assertEquals([], $this->oPluginRegistry->getPlugins(), 'The Plugins attribute is not an array');
|
$this->assertEquals([], $this->oPluginRegistry->getPlugins(), 'The Plugins attribute is not an array');
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @test
|
* Test set Plugins
|
||||||
*/
|
*/
|
||||||
public function setPlugins()
|
public function testSetPlugins()
|
||||||
{
|
{
|
||||||
$this->assertObjectHasAttribute('Plugins', $this->oPluginRegistry, 'Plugins attribute does not exist');
|
$this->assertObjectHasAttribute('Plugins', $this->oPluginRegistry, 'Plugins attribute does not exist');
|
||||||
$this->oPluginRegistry->setPlugins([]);
|
$this->oPluginRegistry->setPlugins([]);
|
||||||
@@ -45,9 +47,9 @@ class PluginsRegistryTest extends WorkflowTestCase
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @test
|
* Test load singleton of database
|
||||||
*/
|
*/
|
||||||
public function loadSingleton()
|
public function testLoadSingleton()
|
||||||
{
|
{
|
||||||
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
||||||
$this->assertObjectHasAttribute('Plugins', $oPluginRegistry, 'Plugins attribute does not exist');
|
$this->assertObjectHasAttribute('Plugins', $oPluginRegistry, 'Plugins attribute does not exist');
|
||||||
@@ -55,9 +57,9 @@ class PluginsRegistryTest extends WorkflowTestCase
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @test
|
* Test registry plugin
|
||||||
*/
|
*/
|
||||||
public function registerPlugin()
|
public function testRegisterPlugin()
|
||||||
{
|
{
|
||||||
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
||||||
$pluginFile = 'enterprise.php';
|
$pluginFile = 'enterprise.php';
|
||||||
@@ -70,9 +72,9 @@ class PluginsRegistryTest extends WorkflowTestCase
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @test
|
* Test get plugin details
|
||||||
*/
|
*/
|
||||||
public function getPluginDetails()
|
public function testGetPluginDetails()
|
||||||
{
|
{
|
||||||
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
||||||
$pluginFile = 'enterprise.php';
|
$pluginFile = 'enterprise.php';
|
||||||
@@ -86,9 +88,9 @@ class PluginsRegistryTest extends WorkflowTestCase
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @test
|
* Test enable plugin
|
||||||
*/
|
*/
|
||||||
public function enablePlugin()
|
public function testEnablePlugin()
|
||||||
{
|
{
|
||||||
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
||||||
$pluginFile = 'enterprise.php';
|
$pluginFile = 'enterprise.php';
|
||||||
@@ -102,9 +104,9 @@ class PluginsRegistryTest extends WorkflowTestCase
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @test
|
* Test disable plugin
|
||||||
*/
|
*/
|
||||||
public function disablePlugin()
|
public function testDisablePlugin()
|
||||||
{
|
{
|
||||||
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
||||||
$pluginFile = 'enterprise.php';
|
$pluginFile = 'enterprise.php';
|
||||||
@@ -118,4 +120,211 @@ class PluginsRegistryTest extends WorkflowTestCase
|
|||||||
$details = $oPluginRegistry->getPluginDetails($pluginFile);
|
$details = $oPluginRegistry->getPluginDetails($pluginFile);
|
||||||
$this->assertEquals(false, $details->enabled, 'Plugin is enable');
|
$this->assertEquals(false, $details->enabled, 'Plugin is enable');
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test get status plugin
|
||||||
|
*/
|
||||||
|
public function testGetStatusPlugin()
|
||||||
|
{
|
||||||
|
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
||||||
|
$pluginFile = 'enterprise.php';
|
||||||
|
//add the plugin php file
|
||||||
|
require_once(PATH_CORE . "methods" . PATH_SEP . "enterprise" . PATH_SEP . "enterprise.php");
|
||||||
|
//register mulitenant in the plugin registry singleton, because details are read from this instance
|
||||||
|
$details = $oPluginRegistry->getPluginDetails($pluginFile);
|
||||||
|
$result = $oPluginRegistry->getStatusPlugin($pluginFile);
|
||||||
|
$this->assertEquals(false, $result, 'Plugin is enabled');
|
||||||
|
$oPluginRegistry->enablePlugin($details->sNamespace);
|
||||||
|
$details = $oPluginRegistry->getPluginDetails($pluginFile);
|
||||||
|
$this->assertEquals(true, $details->enabled, 'Plugin is disabled');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test register menu
|
||||||
|
*/
|
||||||
|
public function testRegisterMenu()
|
||||||
|
{
|
||||||
|
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
||||||
|
$oPluginRegistry->enablePlugin("enterprise");
|
||||||
|
$oPluginRegistry->registerMenu(
|
||||||
|
"enterprise",
|
||||||
|
'setup',
|
||||||
|
PATH_CORE . "methods" . PATH_SEP . "enterprise" . PATH_SEP . "enterprise.php"
|
||||||
|
);
|
||||||
|
$this->assertEquals(
|
||||||
|
'enterprise',
|
||||||
|
$oPluginRegistry->_aMenus[0]->sNamespace,
|
||||||
|
'Namespace attribute does not equals'
|
||||||
|
);
|
||||||
|
$this->assertObjectHasAttribute('sMenuId', $oPluginRegistry->_aMenus[0], 'sMenuId attribute does not exist');
|
||||||
|
$this->assertInstanceOf(MenuDetail::class, $oPluginRegistry->_aMenus[0], '');
|
||||||
|
$oPluginRegistry->registerMenu(
|
||||||
|
"enterprise",
|
||||||
|
'setup',
|
||||||
|
PATH_CORE . "methods" . PATH_SEP . "enterprise" . PATH_SEP . "enterprise.php"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test register dashlets
|
||||||
|
*/
|
||||||
|
public function testRegisterDashlets()
|
||||||
|
{
|
||||||
|
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
||||||
|
$oPluginRegistry->enablePlugin("enterprise");
|
||||||
|
$oPluginRegistry->registerDashlets("enterprise");
|
||||||
|
$this->assertEquals(
|
||||||
|
'enterprise',
|
||||||
|
$oPluginRegistry->_aDashlets[0],
|
||||||
|
'Namespace attribute does not equals'
|
||||||
|
);
|
||||||
|
$oPluginRegistry->registerDashlets("enterprise");
|
||||||
|
$this->assertEquals('enterprise', $oPluginRegistry->_aDashlets[0], 'sMenuId attribute does not exist');
|
||||||
|
$this->assertTrue(is_array($oPluginRegistry->_aDashlets));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test register Css
|
||||||
|
*/
|
||||||
|
public function testRegisterCss()
|
||||||
|
{
|
||||||
|
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
||||||
|
$oPluginRegistry->enablePlugin("enterprise");
|
||||||
|
$oPluginRegistry->registerCss('enterprise', PATH_CORE . 'css' . PATH_SEP . 'test.css');
|
||||||
|
$this->assertEquals(
|
||||||
|
PATH_CORE . 'css' . PATH_SEP . 'test.css',
|
||||||
|
$oPluginRegistry->_aCSSStyleSheets[0]->sCssFile,
|
||||||
|
'sCssFile attribute does not equals'
|
||||||
|
);
|
||||||
|
$oPluginRegistry->registerCss('enterprise', PATH_CORE . 'css' . PATH_SEP . 'test.css');
|
||||||
|
$this->assertObjectHasAttribute(
|
||||||
|
'sCssFile',
|
||||||
|
$oPluginRegistry->_aCSSStyleSheets[0],
|
||||||
|
'sCssFile attribute does not exist'
|
||||||
|
);
|
||||||
|
$this->assertInstanceOf(CssFile::class, $oPluginRegistry->_aCSSStyleSheets[0], '');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test get registered css
|
||||||
|
*/
|
||||||
|
public function testGetRegisteredCss()
|
||||||
|
{
|
||||||
|
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
||||||
|
$oPluginRegistry->enablePlugin("enterprise");
|
||||||
|
$oPluginRegistry->registerCss('enterprise', PATH_CORE . 'css' . PATH_SEP . 'test.css');
|
||||||
|
$css = $oPluginRegistry->getRegisteredCss();
|
||||||
|
$this->assertEquals(
|
||||||
|
PATH_CORE . 'css' . PATH_SEP . 'test.css',
|
||||||
|
$css[0]->sCssFile,
|
||||||
|
'sCssFile attribute does not equals'
|
||||||
|
);
|
||||||
|
$this->assertObjectHasAttribute(
|
||||||
|
'sCssFile',
|
||||||
|
$css[0],
|
||||||
|
'sCssFile attribute does not exist'
|
||||||
|
);
|
||||||
|
$this->assertInstanceOf(CssFile::class, $css[0], '');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test register javascript
|
||||||
|
*/
|
||||||
|
public function testRegisterJavascript()
|
||||||
|
{
|
||||||
|
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
||||||
|
$oPluginRegistry->enablePlugin("enterprise");
|
||||||
|
$oPluginRegistry->registerJavascript(
|
||||||
|
'enterprise',
|
||||||
|
PATH_CORE . 'js' . PATH_SEP . 'testCore.js',
|
||||||
|
PATH_PLUGINS . 'js' . PATH_SEP . 'test.js'
|
||||||
|
);
|
||||||
|
$this->assertEquals(
|
||||||
|
PATH_PLUGINS . 'js' . PATH_SEP . 'test.js',
|
||||||
|
$oPluginRegistry->_aJavascripts[0]->pluginJsFile[0],
|
||||||
|
'sCssFile attribute does not equals'
|
||||||
|
);
|
||||||
|
$js = $oPluginRegistry->registerJavascript(
|
||||||
|
'enterprise',
|
||||||
|
PATH_CORE . 'js' . PATH_SEP . 'testCore.js',
|
||||||
|
PATH_PLUGINS . 'js' . PATH_SEP . 'test.js'
|
||||||
|
);
|
||||||
|
$this->assertEquals(
|
||||||
|
PATH_PLUGINS . 'js' . PATH_SEP . 'test.js',
|
||||||
|
$js->pluginJsFile[0],
|
||||||
|
'sCssFile attribute does not equals'
|
||||||
|
);
|
||||||
|
// Test send an array
|
||||||
|
$oPluginRegistry->registerJavascript(
|
||||||
|
'enterprise',
|
||||||
|
PATH_CORE . 'js' . PATH_SEP . 'testCore2.js',
|
||||||
|
[PATH_PLUGINS . 'js' . PATH_SEP . 'test2.js']
|
||||||
|
);
|
||||||
|
$this->assertEquals(
|
||||||
|
PATH_PLUGINS . 'js' . PATH_SEP . 'test2.js',
|
||||||
|
$oPluginRegistry->_aJavascripts[1]->pluginJsFile[0],
|
||||||
|
'sCssFile attribute does not equals'
|
||||||
|
);
|
||||||
|
$js = $oPluginRegistry->registerJavascript(
|
||||||
|
'enterprise',
|
||||||
|
PATH_CORE . 'js' . PATH_SEP . 'testCore2.js',
|
||||||
|
[PATH_PLUGINS . 'js' . PATH_SEP . 'test2.js']
|
||||||
|
);
|
||||||
|
$this->assertEquals(
|
||||||
|
PATH_PLUGINS . 'js' . PATH_SEP . 'test2.js',
|
||||||
|
$js->pluginJsFile[0],
|
||||||
|
'sCssFile attribute does not equals'
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test throw register javascript send array
|
||||||
|
*/
|
||||||
|
public function testRegisterJavascriptThrowArray()
|
||||||
|
{
|
||||||
|
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
||||||
|
$oPluginRegistry->enablePlugin("enterprise");
|
||||||
|
$this->expectException(\Exception::class);
|
||||||
|
$oPluginRegistry->registerJavascript(
|
||||||
|
'enterprise',
|
||||||
|
PATH_CORE . 'js' . PATH_SEP . 'testCore.js',
|
||||||
|
true
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test throw register javascript send string
|
||||||
|
*/
|
||||||
|
public function testRegisterJavascriptThrowString()
|
||||||
|
{
|
||||||
|
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
||||||
|
$oPluginRegistry->enablePlugin("enterprise");
|
||||||
|
$this->expectException(\Exception::class);
|
||||||
|
$oPluginRegistry->registerJavascript(
|
||||||
|
'enterprise',
|
||||||
|
PATH_CORE . 'js' . PATH_SEP . 'testCore3.js',
|
||||||
|
true
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Test get registered javascript
|
||||||
|
*/
|
||||||
|
public function testGetRegisteredJavascript()
|
||||||
|
{
|
||||||
|
$oPluginRegistry = PluginsRegistry::loadSingleton();
|
||||||
|
$oPluginRegistry->enablePlugin("enterprise");
|
||||||
|
$oPluginRegistry->registerJavascript(
|
||||||
|
'enterprise',
|
||||||
|
PATH_CORE . 'js' . PATH_SEP . 'testCore2.js',
|
||||||
|
[PATH_PLUGINS . 'js' . PATH_SEP . 'test2.js']
|
||||||
|
);
|
||||||
|
$js = $oPluginRegistry->getRegisteredJavascript();
|
||||||
|
$this->assertEquals(1, count($js));
|
||||||
|
$this->assertObjectHasAttribute(
|
||||||
|
'pluginJsFile',
|
||||||
|
$js[0],
|
||||||
|
'pluginJsFile attribute does not exist'
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -87,7 +87,3 @@ if ($handle = opendir(PATH_PLUGINS)) {
|
|||||||
}
|
}
|
||||||
closedir($handle);
|
closedir($handle);
|
||||||
}
|
}
|
||||||
|
|
||||||
//$oPluginRegistry->showArrays();
|
|
||||||
//G::Header('location: pluginsList');
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user