Пример #1
0
<?php

use Interop\Container\ContainerInterface;
use Piwik\Common;
use Piwik\Tests\Framework\Mock\FakeAccess;
use Piwik\Tests\Framework\Mock\TestConfig;
return array('Psr\\Log\\LoggerInterface' => DI\object('Psr\\Log\\NullLogger'), 'Piwik\\Cache\\Backend' => function () {
    return \Piwik\Cache::buildBackend('file');
}, 'cache.eager.cache_id' => 'eagercache-test-', 'Piwik\\Translation\\Translator' => DI\decorate(function ($previous, ContainerInterface $c) {
    $loadRealTranslations = $c->get('test.vars.loadRealTranslations');
    if (!$loadRealTranslations) {
        return new \Piwik\Translation\Translator($c->get('Piwik\\Translation\\Loader\\LoaderInterface'), $directories = array());
    } else {
        return $previous;
    }
}), 'Piwik\\Config' => DI\decorate(function ($previous, ContainerInterface $c) {
    $testingEnvironment = $c->get('Piwik\\Tests\\Framework\\TestingEnvironmentVariables');
    $dontUseTestConfig = $c->get('test.vars.dontUseTestConfig');
    if (!$dontUseTestConfig) {
        $settingsProvider = $c->get('Piwik\\Application\\Kernel\\GlobalSettingsProvider');
        return new TestConfig($settingsProvider, $testingEnvironment, $allowSave = false, $doSetTestEnvironment = true);
    } else {
        return $previous;
    }
}), 'Piwik\\Access' => DI\decorate(function ($previous, ContainerInterface $c) {
    $testUseMockAuth = $c->get('test.vars.testUseMockAuth');
    if ($testUseMockAuth) {
        $access = new FakeAccess();
        FakeAccess::$superUser = true;
        FakeAccess::$superUserLogin = '******';
        return $access;
Пример #2
0
        $instanceId = $instanceId ? '/' . $instanceId : '';
    } else {
        $instanceId = '';
    }
    return $root . '/tmp' . $instanceId;
}, 'path.cache' => DI\string('{path.tmp}/cache/tracker/'), 'Piwik\\Cache\\Eager' => function (ContainerInterface $c) {
    $backend = $c->get('Piwik\\Cache\\Backend');
    $cacheId = $c->get('cache.eager.cache_id');
    if (SettingsServer::isTrackerApiRequest()) {
        $eventToPersist = 'Tracker.end';
        $cacheId .= 'tracker';
    } else {
        $eventToPersist = 'Request.dispatch.end';
        $cacheId .= 'ui';
    }
    $cache = new Eager($backend, $cacheId);
    \Piwik\Piwik::addAction($eventToPersist, function () use($cache) {
        $cache->persistCacheIfNeeded(43200);
    });
    return $cache;
}, 'Piwik\\Cache\\Backend' => function (ContainerInterface $c) {
    try {
        $backend = $c->get('ini.Cache.backend');
    } catch (NotFoundException $ex) {
        $backend = 'chained';
        // happens if global.ini.php is not available
    }
    return \Piwik\Cache::buildBackend($backend);
}, 'cache.eager.cache_id' => function () {
    return 'eagercache-' . str_replace(array('.', '-'), '', \Piwik\Version::VERSION) . '-';
}, 'Psr\\Log\\LoggerInterface' => DI\object('Psr\\Log\\NullLogger'), 'Piwik\\Translation\\Loader\\LoaderInterface' => DI\object('Piwik\\Translation\\Loader\\LoaderCache')->constructor(DI\get('Piwik\\Translation\\Loader\\JsonFileLoader')), 'observers.global' => array(), 'Piwik\\EventDispatcher' => DI\object()->constructorParameter('observers', DI\get('observers.global')));
Пример #3
0
use Piwik\SettingsServer;
return array('path.root' => PIWIK_USER_PATH, 'path.tmp' => function (ContainerInterface $c) {
    $root = $c->get('path.root');
    // TODO remove that special case and instead have plugins override 'path.tmp' to add the instance id
    if ($c->has('ini.General.instance_id')) {
        $instanceId = $c->get('ini.General.instance_id');
        $instanceId = $instanceId ? '/' . $instanceId : '';
    } else {
        $instanceId = '';
    }
    return $root . '/tmp' . $instanceId;
}, 'path.cache' => DI\string('{path.tmp}/cache/tracker/'), 'Piwik\\Cache\\Eager' => function (ContainerInterface $c) {
    $backend = $c->get('Piwik\\Cache\\Backend');
    $cacheId = $c->get('cache.eager.cache_id');
    if (SettingsServer::isTrackerApiRequest()) {
        $eventToPersist = 'Tracker.end';
        $cacheId .= 'tracker';
    } else {
        $eventToPersist = 'Request.dispatch.end';
        $cacheId .= 'ui';
    }
    $cache = new Eager($backend, $cacheId);
    \Piwik\Piwik::addAction($eventToPersist, function () use($cache) {
        $cache->persistCacheIfNeeded(43200);
    });
    return $cache;
}, 'Piwik\\Cache\\Backend' => function (ContainerInterface $c) {
    return \Piwik\Cache::buildBackend($c->get('ini.Cache.backend'));
}, 'cache.eager.cache_id' => function () {
    return 'eagercache-' . str_replace(array('.', '-'), '', \Piwik\Version::VERSION) . '-';
}, 'Psr\\Log\\LoggerInterface' => DI\object('Psr\\Log\\NullLogger'), 'Piwik\\Translation\\Loader\\LoaderInterface' => DI\object('Piwik\\Translation\\Loader\\LoaderCache')->constructor(DI\get('Piwik\\Translation\\Loader\\JsonFileLoader')));