Skip to content
Extraits de code Groupes Projets
Valider adfe1bb8 rédigé par diosmosis's avatar diosmosis
Parcourir les fichiers

Define observer in proxy piwik.php through TestingEnvironment, instead of...

Define observer in proxy piwik.php through TestingEnvironment, instead of calling Piwik::addAction, since the latter needs the DI container (which is not setup yet).
parent 0647faa7
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -178,19 +178,8 @@ class Piwik_TestingEnvironment
}
}
if (!empty($diConfig)) {
StaticContainer::addDefinitions($diConfig);
}
\Piwik\Cache\Backend\File::$invalidateOpCacheBeforeRead = true;
Piwik::addAction('Access.createAccessSingleton', function($access) use ($testingEnvironment) {
if (!$testingEnvironment->testUseRegularAuth) {
$access = new Piwik_MockAccess($access);
\Piwik\Access::setSingletonInstance($access);
}
});
$pluginsToLoad = $testingEnvironment->getCoreAndSupportedPlugins();
if (!empty($testingEnvironment->pluginsToLoad)) {
$pluginsToLoad = array_unique(array_merge($pluginsToLoad, $testingEnvironment->pluginsToLoad));
......@@ -198,6 +187,13 @@ class Piwik_TestingEnvironment
sort($pluginsToLoad);
$globalObservers[] = array('Access.createAccessSingleton', function($access) use ($testingEnvironment) {
if (!$testingEnvironment->testUseRegularAuth) {
$access = new Piwik_MockAccess($access);
\Piwik\Access::setSingletonInstance($access);
}
});
if (!$testingEnvironment->dontUseTestConfig) {
$globalObservers[] = array('Config.createConfigSingleton', function(IniFileChain $chain) use ($testingEnvironment, $pluginsToLoad) {
$general =& $chain->get('General');
......@@ -307,6 +303,8 @@ class Piwik_TestingEnvironment
});
$diConfig['observers.global'] = \DI\add($globalObservers);
StaticContainer::addDefinitions($diConfig);
}
public function arrayMergeRecursiveDistinct(array $array1, array $array2)
......
......@@ -20,16 +20,18 @@ require realpath(dirname(__FILE__)) . "/includes.php";
ob_start();
try {
Piwik_TestingEnvironment::addHooks();
$globalObservers = array(
array('Environment.bootstrapped', function () {
Tracker::setTestEnvironment();
Manager::getInstance()->deleteAll();
Option::clearCache();
Site::clearCache();
})
);
GeoIp::$geoIPDatabaseDir = 'tests/lib/geoip-files';
Piwik_TestingEnvironment::addHooks($globalObservers);
\Piwik\Piwik::addAction('Environment.bootstrapped', function () {
Tracker::setTestEnvironment();
Manager::getInstance()->deleteAll();
Option::clearCache();
Site::clearCache();
});
GeoIp::$geoIPDatabaseDir = 'tests/lib/geoip-files';
include PIWIK_INCLUDE_PATH . '/piwik.php';
} catch (Exception $ex) {
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter