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:
authormattab <matthieu.aubry@gmail.com>2014-12-05 15:09:12 +0300
committermattab <matthieu.aubry@gmail.com>2014-12-05 15:09:12 +0300
commit9610d1b785cb05e06b94eb2c749e7a7f80dcc90b (patch)
tree934b4b06752f5f64f2c0268cdc68a11177818b54 /plugins/Live/tests/Integration
parent966fb421bcf0d8efe792797e138d6a7afce31ebe (diff)
Added integration test for the model, to test the SQL query generated
Diffstat (limited to 'plugins/Live/tests/Integration')
-rw-r--r--plugins/Live/tests/Integration/APITest.php152
1 files changed, 0 insertions, 152 deletions
diff --git a/plugins/Live/tests/Integration/APITest.php b/plugins/Live/tests/Integration/APITest.php
deleted file mode 100644
index 2c85088a19..0000000000
--- a/plugins/Live/tests/Integration/APITest.php
+++ /dev/null
@@ -1,152 +0,0 @@
-<?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\Live\tests\Integration;
-
-use Piwik\Date;
-use Piwik\Db;
-use Piwik\Plugins\Goals\API as GoalsApi;
-use Piwik\Plugins\Live\API;
-use Piwik\Access;
-use Piwik\Tests\Framework\Fixture;
-use Piwik\Tests\Framework\Mock\FakeAccess;
-use Piwik\Tests\Framework\TestCase\SystemTestCase;
-
-/**
- * @group Live
- * @group APITest
- * @group Plugins
- */
-class APITest extends SystemTestCase
-{
- /**
- * @var API
- */
- private $api;
- private $idSite = 1;
-
- public function setUp()
- {
- parent::setUp();
-
- $this->api = API::getInstance();
- $this->setSuperUser();
- $this->createSite();
- }
-
- /**
- * @expectedException \Exception
- * @expectedExceptionMessage checkUserHasViewAccess Fake exception
- */
- public function test_GetCounters_ShouldFail_IfUserHasNoPermission()
- {
- $this->setAnonymous();
- $this->api->getCounters($this->idSite, 5);
- }
-
- public function test_GetCounters_ShouldReturnZeroForAllCounters_IfThereAreNoVisitsEtc()
- {
- $counters = $this->api->getCounters($this->idSite, 5);
-
- $this->assertEquals($this->buildCounter(0, 0, 0, 0), $counters);
- }
-
- public function test_GetCounters_ShouldOnlyReturnResultsOfLastMinutes()
- {
- $this->trackSomeVisits();
-
- $counters = $this->api->getCounters($this->idSite, 5);
- $this->assertEquals($this->buildCounter(19, 32, 16, 16), $counters);
-
- $counters = $this->api->getCounters($this->idSite, 20);
- $this->assertEquals($this->buildCounter(24, 60, 20, 40), $counters);
-
- $counters = $this->api->getCounters($this->idSite, 0);
- $this->assertEquals($this->buildCounter(0, 0, 0, 0), $counters);
- }
-
- private function trackSomeVisits()
- {
- $nowTimestamp = time();
-
- // use local tracker so mock location provider can be used
- $t = Fixture::getTracker($this->idSite, $nowTimestamp, $defaultInit = true, $useLocal = false);
- $t->enableBulkTracking();
-
- for ($i = 0; $i != 20; ++$i) {
- $t->setForceNewVisit();
- $t->setVisitorId( substr(md5($i * 1000), 0, $t::LENGTH_VISITOR_ID));
-
- $factor = 10;
- if ($i > 15) {
- $factor = 30; // make sure first 15 visits are always within 5 minutes to prevent any random fails
- }
- $time = $nowTimestamp - ($i * $factor);
-
- // first visit -> this one is > 5 minutes and should be ignored in one test
- $date = Date::factory($time - 600);
- $t->setForceVisitDateTime($date->getDatetime());
- $t->setUrl("http://piwik.net/space/quest/iv");
- $t->doTrackPageView("Space Quest XV");
-
- $t->doTrackGoal(1); // this one is > 5 minutes and should be ignored in one test
-
- // second visit
- $date = Date::factory($time - 1);
- $t->setForceVisitDateTime($date->getDatetime());
- $t->setUrl("http://piwik.net/space/quest/iv");
- $t->doTrackPageView("Space Quest XII");
-
- if ($i % 6 == 0) {
- $t->setForceNewVisit(); // to test visitors vs visits
- }
-
- // third visit
- $date = Date::factory($time);
- $t->setForceVisitDateTime($date->getDatetime());
- $t->setUrl("http://piwik.net/grue/$i");
- $t->doTrackPageView('It is pitch black...');
-
- $t->doTrackGoal(2);
- }
-
- $t->doBulkTrack();
- }
-
- private function buildCounter($visits, $actions, $visitors, $visitsConverted)
- {
- return array(array(
- 'visits' => $visits,
- 'actions' => $actions,
- 'visitors' => $visitors,
- 'visitsConverted' => $visitsConverted,
- ));
- }
-
- private function createSite()
- {
- Fixture::createWebsite('2013-01-23 01:23:45');
- GoalsApi::getInstance()->addGoal(1, 'MyName', 'manually', '', 'contains');
- GoalsApi::getInstance()->addGoal(1, 'MyGoal', 'manually', '', 'contains');
- }
-
- private function setSuperUser()
- {
- $pseudoMockAccess = new FakeAccess();
- FakeAccess::$superUser = true;
- Access::setSingletonInstance($pseudoMockAccess);
- }
-
- private function setAnonymous()
- {
- $pseudoMockAccess = new FakeAccess();
- FakeAccess::$superUser = false;
- Access::setSingletonInstance($pseudoMockAccess);
- }
-
-}