Fixed plugins execution

This commit is contained in:
Dmitry Khomutov 2017-02-20 20:22:35 +07:00
parent 9fdfa967a7
commit 041ab16e71
No known key found for this signature in database
GPG key ID: 7EB36C9576F9ECB9
2 changed files with 8 additions and 12 deletions

View file

@ -176,21 +176,17 @@ class Executor
*/
public function executePlugin($plugin, $options)
{
// Any plugin name without a namespace separator is a PHPCI built in plugin
// if not we assume it's a fully name-spaced class name that implements the plugin interface.
// If not the factory will throw an exception.
if (strpos($plugin, '\\') === false) {
$class = $plugin;
if (!class_exists($class)) {
$class = str_replace('_', ' ', $plugin);
$class = ucwords($class);
$class = 'PHPCensor\\Plugin\\' . str_replace(' ', '', $class);
} else {
$class = $plugin;
}
if (!class_exists($class)) {
$this->logger->logFailure(sprintf('Plugin does not exist: %s', $plugin));
if (!class_exists($class)) {
$this->logger->logFailure(sprintf('Plugin does not exist: %s', $plugin));
return false;
return false;
}
}
try {

View file

@ -100,8 +100,8 @@ class ExecutorTest extends \PHPUnit_Framework_TestCase
{
$options = [];
$pluginName = 'DOESNTEXIST';
$this->mockBuildLogger->logFailure('Plugin does not exist: ' . $pluginName)->shouldBeCalledTimes(1);
$this->mockBuildLogger->logFailure(sprintf('Plugin does not exist: %s', $pluginName))->shouldBeCalledTimes(1);
$this->testedExecutor->executePlugin($pluginName, $options);
}