1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82
|
<?php
/**
* Matomo - free/libre analytics platform
*
* @link https://matomo.org
* @license https://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
*/
namespace Piwik\Plugins\Live\tests\System;
use Piwik\Plugins\Live\tests\Fixtures\TwoSitesWithBorderTimezones;
use Piwik\Tests\Framework\TestCase\SystemTestCase;
/**
* @group Live
* @group ApiTest
* @group Api
* @group Plugins
*
* @group BorderTimezones
*/
class ApiBorderTimezonesTest extends SystemTestCase
{
/**
* @var TwoSitesWithBorderTimezones
*/
public static $fixture = null; // initialized below class definition
/**
* @dataProvider getApiForTesting
*/
public function testApi($api, $params)
{
// results should contain
// - first visit: January 31
// - last visit: February 1
$this->runApiTests($api, $params);
}
/**
* @return iterable<string, array>
*/
public function getApiForTesting(): iterable
{
yield 'UTC-12' => [
['Live.getVisitorProfile'],
[
'idSite' => self::$fixture->idSiteUtcMinus,
'date' => self::$fixture->dateTime,
'periods' => ['day'],
'testSuffix' => 'utcMinus',
'keepLiveDates' => true,
'xmlFieldsToRemove' => ['daysAgo'],
],
];
yield 'UTC+14' => [
['Live.getVisitorProfile'],
[
'idSite' => self::$fixture->idSiteUtcPlus,
'date' => self::$fixture->dateTime,
'periods' => ['day'],
'testSuffix' => 'utcPlus',
'keepLiveDates' => true,
'xmlFieldsToRemove' => ['daysAgo'],
],
];
}
public static function getOutputPrefix()
{
return '';
}
public static function getPathToTestDirectory()
{
return dirname(__FILE__);
}
}
ApiBorderTimezonesTest::$fixture = new TwoSitesWithBorderTimezones();
|