قرینه از
https://github.com/matomo-org/matomo.git
synced 2025-08-25 00:17:37 +00:00

* [Coding Style] Enable rule PSR1.Methods.CamelCapsMethodName.NotCamelCaps * [Coding Style] Use camel case for method names in API plugin tests (#22145) * [Coding Style] Use camel case for method names in Core* plugin tests (#22147) * [Coding Style] Use camel case for method names in core Unit tests (#22149) * [Coding Style] Use camel case for method names in Actions and BulkTracking plugin tests (#22146) * [Coding Style] Use camel case for method names in CustomDimensions and CustomJSTracker plugin tests (#22148) * [Coding Style] Use camel case for method names in core Integration tests (#22151) * [Coding Style] Use camel case for method names in more core plugin tests (#22153) * [Coding Style] Use camel case for method names in more core plugin tests (#22157) * [Coding Style] Use camel case for method names in more core plugin tests * Update plugins/Monolog/tests/Unit/Processor/ExceptionToTextProcessorTest.php Co-authored-by: Michal Kleiner <michal@innocraft.com> --------- Co-authored-by: Michal Kleiner <michal@innocraft.com> * [Coding Style] Use camel case for method names in more core plugin tests (#22159) * [Coding Style] Use camel case for method names in remaining tests (#22160) * [Coding Style] Use camel case for method names in remaining tests * rename expected test files --------- Co-authored-by: Michal Kleiner <michal@innocraft.com>
110 خطوط
3.4 KiB
PHP
110 خطوط
3.4 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\Tests\Unit\Report;
|
|
|
|
use Piwik\Plugin\Report;
|
|
use Piwik\Report\ReportWidgetConfig;
|
|
use Piwik\Report\ReportWidgetFactory;
|
|
use Piwik\Widget\WidgetContainerConfig;
|
|
|
|
class GetBasicReport extends Report
|
|
{
|
|
protected function init()
|
|
{
|
|
parent::init();
|
|
|
|
$this->name = 'Report_MyCustomReportName';
|
|
$this->order = 20;
|
|
$this->module = 'TestPlugin';
|
|
$this->action = 'getBasicReport';
|
|
$this->categoryId = 'Goals_Goals';
|
|
$this->subcategoryId = 'General_Overview';
|
|
$this->actionToLoadSubTables = 'invalidReport';
|
|
$this->parameters = array('idGoal' => '1');
|
|
}
|
|
|
|
public function getDefaultTypeViewDataTable()
|
|
{
|
|
return 'graph';
|
|
}
|
|
}
|
|
|
|
/**
|
|
* @group Widget
|
|
* @group Report
|
|
* @group ReportWidgetFactory
|
|
* @group ReportWidgetFactoryTest
|
|
*/
|
|
class ReportWidgetFactoryTest extends \PHPUnit\Framework\TestCase
|
|
{
|
|
/**
|
|
* @var ReportWidgetFactory
|
|
*/
|
|
private $factory;
|
|
|
|
public function setUp(): void
|
|
{
|
|
parent::setUp();
|
|
|
|
$this->factory = new ReportWidgetFactory(new GetBasicReport());
|
|
}
|
|
|
|
public function testCreateContainerWidgetShouldCreateAContainerBasedOnReportWithGivenId()
|
|
{
|
|
$config = $this->factory->createContainerWidget('myId');
|
|
|
|
$this->assertTrue($config instanceof WidgetContainerConfig);
|
|
$this->assertSame('myId', $config->getId());
|
|
$this->assertSame('Goals_Goals', $config->getCategoryId());
|
|
$this->assertSame('General_Overview', $config->getSubcategoryId());
|
|
$this->assertSame(100 + 20, $config->getOrder());
|
|
}
|
|
|
|
public function testCreateWidgetShouldCreateAContainerBasedOnReportWithGivenId()
|
|
{
|
|
$config = $this->factory->createWidget();
|
|
|
|
$this->assertTrue($config instanceof ReportWidgetConfig);
|
|
$this->assertSame('Report_MyCustomReportName', $config->getName());
|
|
$this->assertSame('Goals_Goals', $config->getCategoryId());
|
|
$this->assertSame('General_Overview', $config->getSubcategoryId());
|
|
$this->assertSame('graph', $config->getViewDataTable());
|
|
$this->assertSame(100 + 20, $config->getOrder());
|
|
$this->assertSame('TestPlugin', $config->getModule());
|
|
$this->assertSame('getBasicReport', $config->getAction());
|
|
|
|
$this->assertSame(array(
|
|
'module' => 'TestPlugin',
|
|
'action' => 'getBasicReport',
|
|
'idGoal' => '1'
|
|
), $config->getParameters());
|
|
}
|
|
|
|
public function testCreateCustomWidgetShouldCreateAContainerBasedOnReportWithGivenId()
|
|
{
|
|
$config = $this->factory->createCustomWidget('customAction');
|
|
|
|
$this->assertTrue($config instanceof ReportWidgetConfig);
|
|
$this->assertSame('Report_MyCustomReportName', $config->getName());
|
|
$this->assertSame('Goals_Goals', $config->getCategoryId());
|
|
$this->assertSame('General_Overview', $config->getSubcategoryId());
|
|
$this->assertNull($config->getViewDataTable());
|
|
$this->assertSame(100 + 20, $config->getOrder());
|
|
$this->assertSame('TestPlugin', $config->getModule());
|
|
$this->assertSame('customAction', $config->getAction());
|
|
|
|
$this->assertSame(array(
|
|
'module' => 'TestPlugin',
|
|
'action' => 'customAction',
|
|
'idGoal' => '1'
|
|
), $config->getParameters());
|
|
}
|
|
}
|