<?php /** * Piwik - Open source web analytics * * @link http://piwik.org * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later */ use Piwik\ArchiveProcessor\Rules; use Piwik\DataAccess\ArchiveTableCreator; use Piwik\Date; use Piwik\Period; use Piwik\Plugins\VisitsSummary\API; require_once PIWIK_INCLUDE_PATH . '/tests/PHPUnit/BenchmarkTestCase.php'; /** * Runs the archiving process. */ class ArchiveQueryBenchmark extends BenchmarkTestCase { private $archivingLaunched = false; public function setUp() { $archivingTables = ArchiveTableCreator::getTablesArchivesInstalled(); if (empty($archivingTables)) { $this->archivingLaunched = true; API::getInstance()->get( self::$fixture->idSite, self::$fixture->period, self::$fixture->date); } } /** * @group Benchmarks */ public function testArchivingProcess() { if ($this->archivingLaunched) { echo "NOTE: Had to archive data, memory results will not be accurate. Run again for better results."; } Rules::$archivingDisabledByTests = true; $period = Period::factory(self::$fixture->period, Date::factory(self::$fixture->date)); $dateRange = $period->getDateStart().','.$period->getDateEnd(); API::getInstance()->get(self::$fixture->idSite, 'day', $dateRange); } }