Welcome to mirror list, hosted at ThFree Co, Russian Federation.

PrivacyManagerTest.php « tests « PrivacyManager « plugins - github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: f9e3b43079ee0909a37122956ab70a2f45612020 (plain)
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
83
84
85
86
<?php
/**
 * Piwik - free/libre analytics platform
 *
 * @link http://piwik.org
 * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
 */

namespace Piwik\Plugins\PrivacyManager\tests;

use Piwik\Plugins\PrivacyManager\PrivacyManager;
use IntegrationTestCase;

/**
 * Class Plugins_SitesManagerTest
 *
 * @group Plugins
 */
class PrivacyManagerTest extends IntegrationTestCase
{
    /**
     * @var PrivacyManager
     */
    private $manager;

    public function setUp()
    {
        parent::setUp();

        $this->manager = new PrivacyManager();
        \Piwik\Option::set('delete_logs_enable', 1);
        \Piwik\Option::set('delete_logs_older_than', 270);
        \Piwik\Option::set('delete_reports_keep_week_reports', 1);
    }

    public function test_getPurgeDataSettings_shouldUseOnlyConfigValuesIfUIisDisabled()
    {
        $this->setUIEnabled(false);

        $settings = $this->manager->getPurgeDataSettings();
        $expected = $this->getDefaultPurgeSettings();

        $this->assertEquals($expected, $settings);
    }

    public function test_getPurgeDataSettings_shouldAlsoUseOptionValuesIfUIisEnabled()
    {
        $this->setUIEnabled(true);

        $settings = $this->manager->getPurgeDataSettings();
        $expected = $this->getDefaultPurgeSettings();

        $expected['delete_logs_enable'] = 1;
        $expected['delete_logs_older_than'] = 270;
        $expected['delete_reports_keep_week_reports'] = 1;

        $this->assertEquals($expected, $settings);
    }

    private function setUIEnabled($enabled)
    {
        \Piwik\Config::getInstance()->General['enable_delete_old_data_settings_admin'] = $enabled;
    }

    private function getDefaultPurgeSettings()
    {
        $expected = array(
            'delete_logs_enable' => 0,
            'delete_logs_schedule_lowest_interval' => 7,
            'delete_logs_older_than' => 180,
            'delete_logs_max_rows_per_query' => 100000,
            'enable_auto_database_size_estimate' => 1,
            'delete_reports_enable' => 0,
            'delete_reports_older_than' => 12,
            'delete_reports_keep_basic_metrics' => 1,
            'delete_reports_keep_day_reports' => 0,
            'delete_reports_keep_week_reports' => 0,
            'delete_reports_keep_month_reports' => 1,
            'delete_reports_keep_year_reports' => 1,
            'delete_reports_keep_range_reports' => 0,
            'delete_reports_keep_segment_reports' => 0,
        );
        return $expected;
    }

}