1
0
قرینه از https://github.com/matomo-org/matomo.git synced 2025-08-22 15:07:44 +00:00
Files
matomo/plugins/Diagnostics/tests/Integration/Commands/ArchivingStatusTest.php
Stefan Giehl d6d72d1fa7 [Coding Style] Enable rule PSR1.Methods.CamelCapsMethodName.NotCamelCaps (#22144)
* [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>
2024-04-25 20:57:55 +02:00

221 خطوط
14 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\Diagnostics\tests\Integration\Commands;
use Piwik\Tests\Fixtures\OneVisitorTwoVisits;
use Piwik\Tests\Framework\TestCase\ConsoleCommandTestCase;
use Piwik\Plugins\SegmentEditor\API as SegmentEditorAPI;
use Piwik\Plugins\VisitsSummary\API as VisitsSummaryAPI;
use Piwik\Date;
/**
* @group ArchivingStatusTest
*/
class ArchivingStatusTest extends ConsoleCommandTestCase
{
/**
* @var OneVisitorTwoVisits
*/
public static $fixture = null;
public static function setUpBeforeClass(): void
{
parent::setUpBeforeClass();
Date::$now = strtotime('2010-03-07 01:00:00');
// make sure archiving is initiated so there is data in the archive tables
VisitsSummaryAPI::getInstance()->get(self::$fixture->idSite, 'month', '2010-02-01');
VisitsSummaryAPI::getInstance()->get(self::$fixture->idSite, 'month', '2010-02-01', 'browserCode==FF');
VisitsSummaryAPI::getInstance()->get(self::$fixture->idSite, 'month', '2010-02-01', 'daysSinceFirstVisit==2');
VisitsSummaryAPI::getInstance()->get(self::$fixture->idSite, 'month', '2010-03-01');
VisitsSummaryAPI::getInstance()->get(self::$fixture->idSite, 'month', '2010-03-01', 'browserCode==FF');
VisitsSummaryAPI::getInstance()->get(self::$fixture->idSite, 'month', '2010-03-01', 'daysSinceFirstVisit==2');
// Create a segment
SegmentEditorAPI::getInstance()->add('test segment', 'browserCode==IE', self::$fixture->idSite);
Date::$now = strtotime('2010-04-07 06:00:00');
}
public function testCommandOutputIsAsExpected()
{
$expected = <<<OUTPUT
Invalidation Queue
+--------------+---------+------+--------+-------------------------+---------------------+-----------------+---------+------------+--------+
| Invalidation | Segment | Site | Period | Date | Time Queued | Waiting | Started | Processing | Status |
+--------------+---------+------+--------+-------------------------+---------------------+-----------------+---------+------------+--------+
| 1 | | 1 | Day | 2010-03-06 | 2010-03-07 01:00:00 | 31 days 5 hours | | | Queued |
| 2 | | 1 | Week | 2010-03-01 - 2010-03-07 | 2010-03-07 01:00:00 | 31 days 5 hours | | | Queued |
| 3 | | 1 | Month | 2010-03 | 2010-03-07 01:00:00 | 31 days 5 hours | | | Queued |
| 4 | | 1 | Year | 2010 | 2010-03-07 01:00:00 | 31 days 5 hours | | | Queued |
+--------------+---------+------+--------+-------------------------+---------------------+-----------------+---------+------------+--------+
Archiving Metrics
+--------------------------------------+---------------------+
| Metric | Value |
+--------------------------------------+---------------------+
| Total Invalidation Count | 4 |
| In Progress Invalidation Count | 0 |
| Scheduled Invalidation Count | 4 |
| Earliest invalidation ts_started | |
| Latest invalidation ts_started | |
| Earliest invalidation ts_invalidated | 2010-03-07 01:00:00 |
| Latest invalidation ts_invalidated | 2010-03-07 01:00:00 |
| Number of segment invalidations | 0 |
| Number of plugin invalidations | 0 |
| List of plugins being invalidated | |
+--------------------------------------+---------------------+
Archiving Configuration Settings
+----------+-------------------------------------------------------------+-------------------+
| Section | Setting | Value |
+----------+-------------------------------------------------------------+-------------------+
| database | enable_segment_first_table_join_prefix | |
| database | enable_first_table_join_prefix | |
| general | browser_archiving_disabled_enforce | 0 |
| general | enable_processing_unique_visitors_day | 1 |
| general | enable_processing_unique_visitors_week | 1 |
| general | enable_processing_unique_visitors_month | 1 |
| general | enable_processing_unique_visitors_year | 0 |
| general | enable_processing_unique_visitors_range | 0 |
| general | enable_processing_unique_visitors_multiple_sites | 0 |
| general | process_new_segments_from | beginning_of_time |
| general | time_before_today_archive_considered_outdated | 900 |
| general | time_before_week_archive_considered_outdated | -1 |
| general | time_before_month_archive_considered_outdated | -1 |
| general | time_before_year_archive_considered_outdated | -1 |
| general | time_before_range_archive_considered_outdated | -1 |
| general | enable_browser_archiving_triggering | 1 |
| general | archiving_range_force_on_browser_request | 1 |
| general | archiving_custom_ranges[] | |
| general | archiving_query_max_execution_time | 7200 |
| general | archiving_ranking_query_row_limit | 50000 |
| general | disable_archiving_segment_for_plugins | |
| general | disable_archive_actions_goals | 0 |
| general | datatable_archiving_maximum_rows_referrers | 1000 |
| general | datatable_archiving_maximum_rows_subtable_referrers | 50 |
| general | datatable_archiving_maximum_rows_userid_users | 50000 |
| general | datatable_archiving_maximum_rows_custom_dimensions | 1000 |
| general | datatable_archiving_maximum_rows_subtable_custom_dimensions | 1000 |
| general | datatable_archiving_maximum_rows_actions | 500 |
| general | datatable_archiving_maximum_rows_subtable_actions | 100 |
| general | datatable_archiving_maximum_rows_site_search | 500 |
| general | datatable_archiving_maximum_rows_events | 500 |
| general | datatable_archiving_maximum_rows_subtable_events | 500 |
| general | datatable_archiving_maximum_rows_products | 10000 |
| general | datatable_archiving_maximum_rows_standard | 500 |
+----------+-------------------------------------------------------------+-------------------+
OUTPUT;
$this->applicationTester->run([
'command' => 'diagnostics:archiving-status'
]);
$actual = $this->applicationTester->getDisplay();
$this->assertStringMatchesFormat($expected, $actual);
}
public function testCommandOutputWithStatsOptionIsAsExpected()
{
$expected = <<<OUTPUT
Invalidation Queue
+--------------+---------+------+--------+-------------------------+---------------------+-----------------+---------+------------+--------+
| Invalidation | Segment | Site | Period | Date | Time Queued | Waiting | Started | Processing | Status |
+--------------+---------+------+--------+-------------------------+---------------------+-----------------+---------+------------+--------+
| 1 | | 1 | Day | 2010-03-06 | 2010-03-07 01:00:00 | 31 days 5 hours | | | Queued |
| 2 | | 1 | Week | 2010-03-01 - 2010-03-07 | 2010-03-07 01:00:00 | 31 days 5 hours | | | Queued |
| 3 | | 1 | Month | 2010-03 | 2010-03-07 01:00:00 | 31 days 5 hours | | | Queued |
| 4 | | 1 | Year | 2010 | 2010-03-07 01:00:00 | 31 days 5 hours | | | Queued |
+--------------+---------+------+--------+-------------------------+---------------------+-----------------+---------+------------+--------+
Archiving Metrics
+--------------------------------------+---------------------+
| Metric | Value |
+--------------------------------------+---------------------+
| Total Invalidation Count | 4 |
| In Progress Invalidation Count | 0 |
| Scheduled Invalidation Count | 4 |
| Earliest invalidation ts_started | |
| Latest invalidation ts_started | |
| Earliest invalidation ts_invalidated | 2010-03-07 01:00:00 |
| Latest invalidation ts_invalidated | 2010-03-07 01:00:00 |
| Number of segment invalidations | 0 |
| Number of plugin invalidations | 0 |
| List of plugins being invalidated | |
+--------------------------------------+---------------------+
Instance Statistics
+----------------------+------------------------+
| Statistic Name | Value |
+----------------------+------------------------+
| Site Count | 3 |
| Segment Count | 1 |
| Database Version | mysql-version-redacted |
| Last full Month Hits | 8 |
| Last 12 Month Hits | 8 |
+----------------------+------------------------+
Archiving Configuration Settings
+----------+-------------------------------------------------------------+-------------------+
| Section | Setting | Value |
+----------+-------------------------------------------------------------+-------------------+
| database | enable_segment_first_table_join_prefix | |
| database | enable_first_table_join_prefix | |
| general | browser_archiving_disabled_enforce | 0 |
| general | enable_processing_unique_visitors_day | 1 |
| general | enable_processing_unique_visitors_week | 1 |
| general | enable_processing_unique_visitors_month | 1 |
| general | enable_processing_unique_visitors_year | 0 |
| general | enable_processing_unique_visitors_range | 0 |
| general | enable_processing_unique_visitors_multiple_sites | 0 |
| general | process_new_segments_from | beginning_of_time |
| general | time_before_today_archive_considered_outdated | 900 |
| general | time_before_week_archive_considered_outdated | -1 |
| general | time_before_month_archive_considered_outdated | -1 |
| general | time_before_year_archive_considered_outdated | -1 |
| general | time_before_range_archive_considered_outdated | -1 |
| general | enable_browser_archiving_triggering | 1 |
| general | archiving_range_force_on_browser_request | 1 |
| general | archiving_custom_ranges[] | |
| general | archiving_query_max_execution_time | 7200 |
| general | archiving_ranking_query_row_limit | 50000 |
| general | disable_archiving_segment_for_plugins | |
| general | disable_archive_actions_goals | 0 |
| general | datatable_archiving_maximum_rows_referrers | 1000 |
| general | datatable_archiving_maximum_rows_subtable_referrers | 50 |
| general | datatable_archiving_maximum_rows_userid_users | 50000 |
| general | datatable_archiving_maximum_rows_custom_dimensions | 1000 |
| general | datatable_archiving_maximum_rows_subtable_custom_dimensions | 1000 |
| general | datatable_archiving_maximum_rows_actions | 500 |
| general | datatable_archiving_maximum_rows_subtable_actions | 100 |
| general | datatable_archiving_maximum_rows_site_search | 500 |
| general | datatable_archiving_maximum_rows_events | 500 |
| general | datatable_archiving_maximum_rows_subtable_events | 500 |
| general | datatable_archiving_maximum_rows_products | 10000 |
| general | datatable_archiving_maximum_rows_standard | 500 |
+----------+-------------------------------------------------------------+-------------------+
OUTPUT;
$this->applicationTester->run(array(
'command' => 'diagnostics:archiving-status',
'--with-stats' => true
));
$actual = $this->applicationTester->getDisplay();
$this->assertStringMatchesFormat($expected, $actual);
}
}
ArchivingStatusTest::$fixture = new OneVisitorTwoVisits();