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

github.com/matomo-org/matomo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/UserId/tests/System/ApiTest.php')
-rw-r--r--plugins/UserId/tests/System/ApiTest.php154
1 files changed, 154 insertions, 0 deletions
diff --git a/plugins/UserId/tests/System/ApiTest.php b/plugins/UserId/tests/System/ApiTest.php
new file mode 100644
index 0000000000..ca73c2792d
--- /dev/null
+++ b/plugins/UserId/tests/System/ApiTest.php
@@ -0,0 +1,154 @@
+<?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\UserId\tests\System;
+
+use Piwik\Plugins\UserId\tests\Fixtures\TrackFewVisitsAndCreateUsers;
+use Piwik\Tests\Framework\TestCase\SystemTestCase;
+
+/**
+ * Run system tests against the UserId.getUsers API method
+ *
+ * @group UserId
+ * @group ApiTest
+ * @group Plugins
+ */
+class ApiTest extends SystemTestCase
+{
+ /**
+ * @var TrackFewVisitsAndCreateUsers
+ */
+ public static $fixture;
+
+ /**
+ * @dataProvider getApiForTesting
+ */
+ public function testApi($api, $params)
+ {
+ $this->runApiTests($api, $params);
+ }
+
+ public function getApiForTesting()
+ {
+ $api = 'UserId.getUsers';
+ $startDate = substr(self::$fixture->dateTime, 0, 10);
+ $endDate = date('Y-m-d', strtotime($startDate) + 3600*24*365);
+
+ $apiToTest = array();
+ $apiToTest[] = array(
+ $api,
+ array(
+ 'date' => $startDate,
+ 'periods' => array('day'),
+ 'idSite' => 1,
+ 'testSuffix' => ''
+ )
+ );
+ $apiToTest[] = array(
+ $api,
+ array(
+ 'date' => "$startDate,$endDate",
+ 'periods' => array('range'),
+ 'idSite' => 1,
+ 'testSuffix' => ''
+ )
+ );
+
+ $apiToTest[] = array(
+ $api,
+ array(
+ 'date' => $startDate,
+ 'periods' => array('day'),
+ 'idSite' => 1,
+ 'testSuffix' => 'limit',
+ 'otherRequestParameters' => array(
+ 'filter_limit' => '2',
+ 'filter_offset' => '1',
+ )
+ )
+ );
+ $apiToTest[] = array(
+ $api,
+ array(
+ 'date' => "$startDate,$endDate",
+ 'periods' => array('range'),
+ 'idSite' => 1,
+ 'testSuffix' => 'limit',
+ 'otherRequestParameters' => array(
+ 'filter_limit' => '2',
+ 'filter_offset' => '1',
+ )
+ )
+ );
+
+ $apiToTest[] = array(
+ $api,
+ array(
+ 'date' => $startDate,
+ 'periods' => array('day'),
+ 'idSite' => 1,
+ 'testSuffix' => 'ascSortOrder',
+ 'otherRequestParameters' => array(
+ 'filter_sort_order' => 'asc',
+ )
+ )
+ );
+ $apiToTest[] = array(
+ $api,
+ array(
+ 'date' => "$startDate,$endDate",
+ 'periods' => array('range'),
+ 'idSite' => 1,
+ 'testSuffix' => 'ascSortOrder',
+ 'otherRequestParameters' => array(
+ 'filter_sort_order' => 'asc',
+ )
+ )
+ );
+
+ $apiToTest[] = array(
+ $api,
+ array(
+ 'date' => $startDate,
+ 'periods' => array('day'),
+ 'idSite' => 1,
+ 'testSuffix' => 'searchByUserId',
+ 'otherRequestParameters' => array(
+ 'filter_pattern' => 'user2'
+ )
+ )
+ );
+ $apiToTest[] = array(
+ $api,
+ array(
+ 'date' => "$startDate,$endDate",
+ 'periods' => array('range'),
+ 'idSite' => 1,
+ 'testSuffix' => 'searchByUserId',
+ 'otherRequestParameters' => array(
+ 'filter_pattern' => 'user2'
+ )
+ )
+ );
+
+ return $apiToTest;
+ }
+
+ public static function getOutputPrefix()
+ {
+ return '';
+ }
+
+ public static function getPathToTestDirectory()
+ {
+ return dirname(__FILE__);
+ }
+
+}
+
+ApiTest::$fixture = new TrackFewVisitsAndCreateUsers(); \ No newline at end of file