diff options
Diffstat (limited to 'tests/PHPUnit/TestingEnvironment.php')
-rw-r--r-- | tests/PHPUnit/TestingEnvironment.php | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/tests/PHPUnit/TestingEnvironment.php b/tests/PHPUnit/TestingEnvironment.php index df7538c63a..363c8a89b9 100644 --- a/tests/PHPUnit/TestingEnvironment.php +++ b/tests/PHPUnit/TestingEnvironment.php @@ -3,6 +3,7 @@ use Piwik\Common; use Piwik\Config; use Piwik\Piwik; +use Piwik\Option; require_once PIWIK_INCLUDE_PATH . "/core/Config.php"; @@ -61,6 +62,11 @@ class Piwik_TestingEnvironment $this->behaviorOverrideProperties[$key] = $value; } + public function __isset($name) + { + return isset($this->behaviorOverrideProperties[$name]); + } + public function save() { $overridePath = PIWIK_INCLUDE_PATH . '/tmp/testingPathOverride.json'; @@ -123,6 +129,12 @@ class Piwik_TestingEnvironment $manager = \Piwik\Plugin\Manager::getInstance(); $pluginsToLoad = $manager->getPluginsToLoadDuringTests(); + if (!empty($testingEnvironment->pluginsToLoad)) { + $pluginsToLoad = array_unique(array_merge($pluginsToLoad, $testingEnvironment->pluginsToLoad)); + } + + sort($pluginsToLoad); + $config->Plugins = array('Plugins' => $pluginsToLoad); $trackerPluginsToLoad = array_filter($pluginsToLoad, function ($plugin) use ($manager) { @@ -151,7 +163,13 @@ class Piwik_TestingEnvironment } }); } - Piwik::addAction('Request.dispatch', function() { + Piwik::addAction('Request.dispatch', function() use ($testingEnvironment) { + if ($testingEnvironment->optionsOverride) { + foreach ($testingEnvironment->optionsOverride as $name => $value) { + Option::set($name, $value); + } + } + \Piwik\Plugins\CoreVisualizations\Visualizations\Cloud::$debugDisableShuffle = true; \Piwik\Visualization\Sparkline::$enableSparklineImages = false; \Piwik\Plugins\ExampleUI\API::$disableRandomness = true; |