قرینه از
https://github.com/matomo-org/matomo.git
synced 2025-08-22 15:07:44 +00:00

* [Coding Style] Enable rule PSR12.Files.FileHeader * Apply CS * Replace Piwik with Matomo in file headers * Unify file headers (position, no. of lines, https links) * Rebuild dist files * Apply CS * Fix system test that relies on line numbers in a file that had the file header updated --------- Co-authored-by: Stefan Giehl <stefan@matomo.org>
83 خطوط
2.2 KiB
PHP
83 خطوط
2.2 KiB
PHP
<?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\Goals\tests\System;
|
|
|
|
use Piwik\Plugins\Goals\API;
|
|
use Piwik\Tests\Framework\TestCase\SystemTestCase;
|
|
use Piwik\Tests\Fixtures\SomeVisitsAllConversions;
|
|
|
|
/**
|
|
* Tests API methods with goals that do and don't allow multiple
|
|
* conversions per visit.
|
|
*
|
|
* @group TrackGoalsAllowMultipleConversionsPerVisitTest
|
|
* @group Plugins
|
|
*/
|
|
class TrackGoalsAllowMultipleConversionsPerVisitTest extends SystemTestCase
|
|
{
|
|
public static $fixture = null;
|
|
|
|
/**
|
|
* @dataProvider getApiForTesting
|
|
*/
|
|
public function testApi($api, $params)
|
|
{
|
|
$this->runApiTests($api, $params);
|
|
}
|
|
|
|
/**
|
|
* @depends testApi
|
|
*/
|
|
public function testCheck()
|
|
{
|
|
$idSite = self::$fixture->idSite;
|
|
|
|
// test delete is working as expected
|
|
$goals = API::getInstance()->getGoals($idSite);
|
|
$this->assertTrue(5 == count($goals));
|
|
API::getInstance()->deleteGoal($idSite, self::$fixture->idGoal_OneConversionPerVisit);
|
|
API::getInstance()->deleteGoal($idSite, self::$fixture->idGoal_MultipleConversionPerVisit);
|
|
$goals = API::getInstance()->getGoals($idSite);
|
|
$this->assertTrue(3 == count($goals));
|
|
}
|
|
|
|
public function getApiForTesting()
|
|
{
|
|
$apiToCall = array(
|
|
'VisitTime.getVisitInformationPerServerTime',
|
|
'VisitsSummary.get',
|
|
'Goals.get'
|
|
);
|
|
|
|
return array(
|
|
array($apiToCall, array('idSite' => self::$fixture->idSite, 'date' => self::$fixture->dateTime)),
|
|
array(array('Goals.get'), array(
|
|
'idSite' => self::$fixture->idSite,
|
|
'date' => self::$fixture->dateTime,
|
|
'segment' => 'pageUrl=@/',
|
|
'testSuffix' => '_withLogLinkVisitActionSegment'
|
|
)),
|
|
|
|
);
|
|
}
|
|
|
|
public static function getOutputPrefix()
|
|
{
|
|
return 'trackGoals_allowMultipleConversionsPerVisit';
|
|
}
|
|
|
|
public static function getPathToTestDirectory()
|
|
{
|
|
return dirname(__FILE__);
|
|
}
|
|
}
|
|
|
|
TrackGoalsAllowMultipleConversionsPerVisitTest::$fixture = new SomeVisitsAllConversions();
|