Skip to content
Extraits de code Groupes Projets
Valider 8debbc77 rédigé par mattab's avatar mattab
Parcourir les fichiers

Merge remote-tracking branch 'origin/master'

parents fca98933 9a3ec748
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -270,10 +270,14 @@ class Fixture extends PHPUnit_Framework_Assert ...@@ -270,10 +270,14 @@ class Fixture extends PHPUnit_Framework_Assert
public static function loadAllPlugins($testEnvironment = null, $testCaseClass = false, $extraPluginsToLoad = array()) public static function loadAllPlugins($testEnvironment = null, $testCaseClass = false, $extraPluginsToLoad = array())
{ {
if (empty($testEnvironment)) {
$testEnvironment = new Piwik_TestingEnvironment();
}
DbHelper::createTables(); DbHelper::createTables();
$pluginsManager = \Piwik\Plugin\Manager::getInstance(); $pluginsManager = \Piwik\Plugin\Manager::getInstance();
$plugins = Config::getInstance()->Plugins['Plugins']; $plugins = $testEnvironment->getCoreAndSupportedPlugins();
// make sure the plugin that executed this method is included in the plugins to load // make sure the plugin that executed this method is included in the plugins to load
$extraPlugins = array_merge($extraPluginsToLoad, array( $extraPlugins = array_merge($extraPluginsToLoad, array(
......
...@@ -4,6 +4,7 @@ use Piwik\Common; ...@@ -4,6 +4,7 @@ use Piwik\Common;
use Piwik\Config; use Piwik\Config;
use Piwik\Piwik; use Piwik\Piwik;
use Piwik\Option; use Piwik\Option;
use Piwik\Plugin\Manager as PluginManager;
require_once PIWIK_INCLUDE_PATH . "/core/Config.php"; require_once PIWIK_INCLUDE_PATH . "/core/Config.php";
...@@ -92,6 +93,20 @@ class Piwik_TestingEnvironment ...@@ -92,6 +93,20 @@ class Piwik_TestingEnvironment
} }
} }
public function getCoreAndSupportedPlugins()
{
return array_filter(PluginManager::getInstance()->readPluginsDirectory(), function ($pluginName) {
if ($pluginName == 'LoginHttpAuth'
|| $pluginName == 'ExampleVisualization'
) {
return false;
}
return PluginManager::getInstance()->isPluginBundledWithCore($pluginName)
|| PluginManager::getInstance()->isPluginOfficialAndNotBundledWithCore($pluginName);
});
}
public static function addHooks() public static function addHooks()
{ {
$testingEnvironment = new Piwik_TestingEnvironment(); $testingEnvironment = new Piwik_TestingEnvironment();
...@@ -130,14 +145,14 @@ class Piwik_TestingEnvironment ...@@ -130,14 +145,14 @@ class Piwik_TestingEnvironment
} }
$manager = \Piwik\Plugin\Manager::getInstance(); $manager = \Piwik\Plugin\Manager::getInstance();
$pluginsToLoad = array(); $pluginsToLoad = $testingEnvironment->getCoreAndSupportedPlugins();
if (!empty($testingEnvironment->pluginsToLoad)) { if (!empty($testingEnvironment->pluginsToLoad)) {
$pluginsToLoad = array_unique(array_merge($pluginsToLoad, $testingEnvironment->pluginsToLoad)); $pluginsToLoad = array_unique(array_merge($pluginsToLoad, $testingEnvironment->pluginsToLoad));
} }
sort($pluginsToLoad); sort($pluginsToLoad);
$config->Plugins = array('Plugins' => array_merge($config->Plugins['Plugins'], $pluginsToLoad)); $config->Plugins = array('Plugins' => $pluginsToLoad);
$trackerPluginsToLoad = array_filter($config->Plugins['Plugins'], function ($plugin) use ($manager) { $trackerPluginsToLoad = array_filter($config->Plugins['Plugins'], function ($plugin) use ($manager) {
return $manager->isTrackerPlugin($manager->loadPlugin($plugin)); return $manager->isTrackerPlugin($manager->loadPlugin($plugin));
......
...@@ -53,9 +53,9 @@ then ...@@ -53,9 +53,9 @@ then
else else
if [ -n "$PLUGIN_NAME" ] if [ -n "$PLUGIN_NAME" ]
then then
travis_wait phpunit --configuration phpunit.xml --colors --testsuite $TEST_SUITE --group $PLUGIN_NAME travis_wait phpunit --configuration phpunit.xml --colors --testsuite $TEST_SUITE --group $PLUGIN_NAME --testdox
else else
travis_wait phpunit --configuration phpunit.xml --testsuite $TEST_SUITE --colors travis_wait phpunit --configuration phpunit.xml --testsuite $TEST_SUITE --colors --testdox
fi fi
fi fi
else else
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Terminez d'abord l'édition de ce message.
Veuillez vous inscrire ou vous pour commenter