本文整理汇总了PHP中Piwik\Site::setSites方法的典型用法代码示例。如果您正苦于以下问题:PHP Site::setSites方法的具体用法?PHP Site::setSites怎么用?PHP Site::setSites使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Piwik\Site
的用法示例。
在下文中一共展示了Site::setSites方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: testGetUnit
/**
* @dataProvider getUnitColumns
* @group Core
*/
public function testGetUnit($column, $expected)
{
Site::setSites(array(1 => array('name' => 'TestSite', 'currency' => 'EUR')));
FakeAccess::$superUser = true;
$actual = Metrics::getUnit($column, 1);
$this->assertEquals($expected, $actual);
}
示例2: testGetUnit
/**
* @dataProvider getUnitColumns
* @group Core
*/
public function testGetUnit($column, $expected)
{
\Piwik\Site::setSites(array(1 => array('name' => 'TestSite', 'currency' => 'EUR')));
$pseudoMockAccess = new FakeAccess();
FakeAccess::$superUser = true;
Access::setSingletonInstance($pseudoMockAccess);
$actual = Metrics::getUnit($column, 1);
$this->assertEquals($expected, $actual);
}
示例3: testGetScheduledTasks
/**
* @group Plugins
*/
public function testGetScheduledTasks()
{
// stub API to control getReports() return values
$report1 = self::getDailyPDFReportData($this->idSite);
$report1['idreport'] = 1;
$report1['hour'] = 0;
$report1['deleted'] = 0;
$report2 = self::getMonthlyEmailReportData($this->idSite);
$report2['idreport'] = 2;
$report2['idsite'] = 2;
$report2['hour'] = 0;
$report2['deleted'] = 0;
$report3 = self::getMonthlyEmailReportData($this->idSite);
$report3['idreport'] = 3;
$report3['deleted'] = 1;
// should not be scheduled
$report4 = self::getMonthlyEmailReportData($this->idSite);
$report4['idreport'] = 4;
$report4['idsite'] = 1;
$report4['hour'] = 8;
$report4['deleted'] = 0;
$report5 = self::getMonthlyEmailReportData($this->idSite);
$report5['idreport'] = 5;
$report5['idsite'] = 2;
$report5['hour'] = 8;
$report5['deleted'] = 0;
// test no exception is raised when a scheduled report is set to never send
$report6 = self::getMonthlyEmailReportData($this->idSite);
$report6['idreport'] = 6;
$report6['period'] = Schedule::PERIOD_NEVER;
$report6['deleted'] = 0;
$stubbedAPIScheduledReports = $this->getMock('\\Piwik\\Plugins\\ScheduledReports\\API', array('getReports', 'getInstance'), $arguments = array(), $mockClassName = '', $callOriginalConstructor = false);
$stubbedAPIScheduledReports->expects($this->any())->method('getReports')->will($this->returnValue(array($report1, $report2, $report3, $report4, $report5, $report6)));
\Piwik\Plugins\ScheduledReports\API::setSingletonInstance($stubbedAPIScheduledReports);
// initialize sites 1 and 2
Site::setSites(array(1 => array('timezone' => 'Europe/Paris'), 2 => array('timezone' => 'UTC-6.5')));
// expected tasks
$scheduleTask1 = Schedule::factory('daily');
$scheduleTask1->setHour(0);
// paris is UTC-1, period ends at 23h UTC
$scheduleTask1->setTimezone('Europe/Paris');
$scheduleTask2 = new Monthly();
$scheduleTask2->setHour(0);
// site is UTC-6.5, period ends at 6h30 UTC, smallest resolution is hour
$scheduleTask2->setTimezone('UTC-6.5');
$scheduleTask3 = new Monthly();
$scheduleTask3->setHour(8);
// paris is UTC-1, configured to be sent at 8h
$scheduleTask3->setTimezone('Europe/Paris');
$scheduleTask4 = new Monthly();
$scheduleTask4->setHour(8);
// site is UTC-6.5, configured to be sent at 8h
$scheduleTask4->setTimezone('UTC-6.5');
$expectedTasks = array(new Task(APIScheduledReports::getInstance(), 'sendReport', 1, $scheduleTask1), new Task(APIScheduledReports::getInstance(), 'sendReport', 2, $scheduleTask2), new Task(APIScheduledReports::getInstance(), 'sendReport', 4, $scheduleTask3), new Task(APIScheduledReports::getInstance(), 'sendReport', 5, $scheduleTask4));
$pdfReportPlugin = new Tasks();
$pdfReportPlugin->schedule();
$tasks = $pdfReportPlugin->getScheduledTasks();
$this->assertEquals($expectedTasks, $tasks);
\Piwik\Plugins\ScheduledReports\API::unsetInstance();
}