diff --git a/.scrutinizer.yml b/.scrutinizer.yml index 555eaaf2bfdb55ec6b40f1a9c8898b07a471e345..b52ca59452125907e571c2c31952f8306e1aa162 100644 --- a/.scrutinizer.yml +++ b/.scrutinizer.yml @@ -5,13 +5,16 @@ tools: config: check_variables: enabled: false + dependency_paths: + - libs/ filter: + paths: + - core/ + - plugins/ excluded_paths: - - 'tests/*' - - 'libs/*' - - 'misc/*' - - 'lang/*' + - '*/tests/*' + - '*/Test/*' build: environment: diff --git a/.travis.yml b/.travis.yml index 54575ea7979b8983361fad3b11b1beb016c11e2e..ee3153ad650f5c5310c62b5807f1b14b753d963b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -103,8 +103,6 @@ before_script: # configure mysql - mysql -e "SET GLOBAL sql_mode = 'NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES'" # Travis default - # Uncomment to enable sql_mode STRICT_TRANS_TABLES (new default in Mysql 5.6) - - mysql -e "SET GLOBAL sql_mode = 'NO_ENGINE_SUBSTITUTION'" - mysql -e "SELECT @@sql_mode;" - mysql -e "SHOW GLOBAL VARIABLES;" diff --git a/composer.lock b/composer.lock index 3f75b7218269c542d8343c1404fb29d3d1ccbae6..fdddc728f8c39eacad888d88c7da51c704215cbe 100644 --- a/composer.lock +++ b/composer.lock @@ -269,12 +269,12 @@ "source": { "type": "git", "url": "https://github.com/mnapoli/PHP-DI.git", - "reference": "27341c05b930e3768f19f4c4b20eec14ce84bd06" + "reference": "d7f54f3c1b3523493eb5f4b5ca38bcfd74d96169" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mnapoli/PHP-DI/zipball/27341c05b930e3768f19f4c4b20eec14ce84bd06", - "reference": "27341c05b930e3768f19f4c4b20eec14ce84bd06", + "url": "https://api.github.com/repos/mnapoli/PHP-DI/zipball/d7f54f3c1b3523493eb5f4b5ca38bcfd74d96169", + "reference": "d7f54f3c1b3523493eb5f4b5ca38bcfd74d96169", "shasum": "" }, "require": { @@ -299,10 +299,8 @@ } }, "autoload": { - "psr-0": { - "DI\\": "src/", - "IntegrationTests\\": "tests/", - "UnitTests\\": "tests/" + "psr-4": { + "DI\\": "src/DI/" }, "files": [ "src/DI/functions.php" @@ -319,7 +317,7 @@ "dependency injection", "di" ], - "time": "2014-11-12 03:18:24" + "time": "2014-12-11 22:24:18" }, { "name": "mnapoli/phpdocreader", diff --git a/core/Container/IniConfigDefinitionSource.php b/core/Container/IniConfigDefinitionSource.php index b84d33d94f6e3e0226d837229843b83d7c1b184a..5d4518196bd527828a8f15181a9b3cc1a4a37bcb 100644 --- a/core/Container/IniConfigDefinitionSource.php +++ b/core/Container/IniConfigDefinitionSource.php @@ -9,16 +9,14 @@ namespace Piwik\Container; use DI\Definition\Exception\DefinitionException; -use DI\Definition\MergeableDefinition; use DI\Definition\Source\ChainableDefinitionSource; -use DI\Definition\Source\DefinitionSource; use DI\Definition\ValueDefinition; use Piwik\Config; /** * Import the old INI config into PHP-DI. */ -class IniConfigDefinitionSource implements DefinitionSource, ChainableDefinitionSource +class IniConfigDefinitionSource extends ChainableDefinitionSource { /** * @var Config @@ -30,11 +28,6 @@ class IniConfigDefinitionSource implements DefinitionSource, ChainableDefinition */ private $prefix; - /** - * @var DefinitionSource - */ - private $chainedSource; - /** * @param Config $config * @param string $prefix Prefix for the container entries. @@ -45,15 +38,10 @@ class IniConfigDefinitionSource implements DefinitionSource, ChainableDefinition $this->prefix = $prefix; } - public function getDefinition($name, MergeableDefinition $parentDefinition = null) + protected function findDefinition($name) { - // INI only contains values, so no definition merging here - if ($parentDefinition) { - return $this->notFound($name, $parentDefinition); - } - if (strpos($name, $this->prefix) !== 0) { - return $this->notFound($name, $parentDefinition); + return null; } list($sectionName, $configKey) = $this->parseEntryName($name); @@ -65,17 +53,12 @@ class IniConfigDefinitionSource implements DefinitionSource, ChainableDefinition } if (! array_key_exists($configKey, $section)) { - return $this->notFound($name, $parentDefinition); + return null; } return new ValueDefinition($name, $section[$configKey]); } - public function chain(DefinitionSource $source) - { - $this->chainedSource = $source; - } - private function parseEntryName($name) { $parts = explode('.', $name, 3); @@ -102,13 +85,4 @@ class IniConfigDefinitionSource implements DefinitionSource, ChainableDefinition return $section; } - - private function notFound($name, $parentDefinition) - { - if ($this->chainedSource) { - return $this->chainedSource->getDefinition($name, $parentDefinition); - } - - return null; - } } diff --git a/core/CronArchive.php b/core/CronArchive.php index 1859e9fbbae54fbbe2eaee872daeca2898248ab5..5e1770c0471df052428d336f891cdd02ad8691b9 100644 --- a/core/CronArchive.php +++ b/core/CronArchive.php @@ -427,10 +427,10 @@ class CronArchive if ($this->archiveAndRespectTTL) { Option::clearCachedOption($this->lastRunKey($idSite, "periods")); - $lastTimestampWebsiteProcessedPeriods = Option::get($this->lastRunKey($idSite, "periods")); + $lastTimestampWebsiteProcessedPeriods = $this->getPeriodLastProcessedTimestamp($idSite); Option::clearCachedOption($this->lastRunKey($idSite, "day")); - $lastTimestampWebsiteProcessedDay = Option::get($this->lastRunKey($idSite, "day")); + $lastTimestampWebsiteProcessedDay = $this->getDayLastProcessedTimestamp($idSite); } $this->updateIdSitesInvalidatedOldReports(); @@ -895,7 +895,7 @@ class CronArchive { $this->todayArchiveTimeToLive = Rules::getTodayArchiveTimeToLive(); $this->processPeriodsMaximumEverySeconds = $this->getDelayBetweenPeriodsArchives(); - $this->lastSuccessRunTimestamp = Option::get(self::OPTION_ARCHIVING_FINISHED_TS); + $this->lastSuccessRunTimestamp = $this->getLastSuccessRunTimestamp(); $this->shouldArchiveOnlySitesWithTrafficSince = $this->isShouldArchiveAllSitesWithTrafficSince(); $this->shouldArchiveOnlySpecificPeriods = $this->getPeriodsToProcess(); @@ -1386,4 +1386,39 @@ class CronArchive return self::MAX_CONCURRENT_API_REQUESTS; } + + /** + * @param $idSite + * @return false|string + */ + private function getPeriodLastProcessedTimestamp($idSite) + { + $timestamp = Option::get($this->lastRunKey($idSite, "periods")); + return $this->sanitiseTimestamp($timestamp); + } + + /** + * @param $idSite + * @return false|string + */ + private function getDayLastProcessedTimestamp($idSite) + { + $timestamp = Option::get($this->lastRunKey($idSite, "day")); + return $this->sanitiseTimestamp($timestamp); + } + + /** + * @return false|string + */ + private function getLastSuccessRunTimestamp() + { + $timestamp = Option::get(self::OPTION_ARCHIVING_FINISHED_TS); + return $this->sanitiseTimestamp($timestamp); + } + + private function sanitiseTimestamp($timestamp) + { + $now = time(); + return ($timestamp < $now) ? $timestamp : $now; + } } diff --git a/core/DataTable.php b/core/DataTable.php index 61e8abb1eb29224b1903811b8e0b961aea780db0..895645af0fbcb0626a4c48d5e7f7ae9cf27c6b7b 100644 --- a/core/DataTable.php +++ b/core/DataTable.php @@ -356,10 +356,11 @@ class DataTable implements DataTableInterface, \IteratorAggregate, \ArrayAccess if ($this->enableRecursiveSort === true) { foreach ($this->getRows() as $row) { - if (($idSubtable = $row->getIdSubDataTable()) !== null) { - $table = Manager::getInstance()->getTable($idSubtable); - $table->enableRecursiveSort(); - $table->sort($functionCallback, $columnSortedBy); + + $subTable = $row->getSubtable(); + if ($subTable) { + $subTable->enableRecursiveSort(); + $subTable->sort($functionCallback, $columnSortedBy); } } } @@ -868,8 +869,8 @@ class DataTable implements DataTableInterface, \IteratorAggregate, \ArrayAccess { $totalCount = 0; foreach ($this->rows as $row) { - if (($idSubTable = $row->getIdSubDataTable()) !== null) { - $subTable = Manager::getInstance()->getTable($idSubTable); + $subTable = $row->getSubtable(); + if ($subTable) { $count = $subTable->getRowsCountRecursive(); $totalCount += $count; } @@ -907,8 +908,9 @@ class DataTable implements DataTableInterface, \IteratorAggregate, \ArrayAccess $row->renameColumn($oldName, $newName); if ($doRenameColumnsOfSubTables) { - if (($idSubDataTable = $row->getIdSubDataTable()) !== null) { - Manager::getInstance()->getTable($idSubDataTable)->renameColumn($oldName, $newName); + $subTable = $row->getSubtable(); + if ($subTable) { + $subTable->renameColumn($oldName, $newName); } } } @@ -929,8 +931,9 @@ class DataTable implements DataTableInterface, \IteratorAggregate, \ArrayAccess foreach ($names as $name) { $row->deleteColumn($name); } - if (($idSubDataTable = $row->getIdSubDataTable()) !== null) { - Manager::getInstance()->getTable($idSubDataTable)->deleteColumns($names, $deleteRecursiveInSubtables); + $subTable = $row->getSubtable(); + if ($subTable) { + $subTable->deleteColumns($names, $deleteRecursiveInSubtables); } } if (!is_null($this->summaryRow)) { @@ -1110,20 +1113,13 @@ class DataTable implements DataTableInterface, \IteratorAggregate, \ArrayAccess // but returns all serialized tables and subtable in an array of 1 dimension $aSerializedDataTable = array(); foreach ($this->rows as $row) { - if (($idSubTable = $row->getIdSubDataTable()) !== null) { - $subTable = null; - try { - $subTable = Manager::getInstance()->getTable($idSubTable); - } catch(TableNotFoundException $e) { - // This occurs is an unknown & random data issue. Catch Exception and remove subtable from the row. - $row->removeSubtable(); - // Go to next row - continue; - } - + $subTable = $row->getSubtable(); + if ($subTable) { $depth++; $aSerializedDataTable = $aSerializedDataTable + $subTable->getSerialized($maximumRowsInSubDataTable, $maximumRowsInSubDataTable, $columnToSortByBeforeTruncation); $depth--; + } else { + $row->removeSubtable(); } } // we load the current Id of the DataTable @@ -1616,8 +1612,8 @@ class DataTable implements DataTableInterface, \IteratorAggregate, \ArrayAccess // we simply add it (cloning the subtable) // if the row has the subtable already // then we have to recursively sum the subtables - if (($idSubTable = $row->getIdSubDataTable()) !== null) { - $subTable = Manager::getInstance()->getTable($idSubTable); + $subTable = $row->getSubtable(); + if ($subTable) { $subTable->metadata[self::COLUMN_AGGREGATION_OPS_METADATA_NAME] = $this->getMetadata(self::COLUMN_AGGREGATION_OPS_METADATA_NAME); $rowFound->sumSubtable($subTable); diff --git a/core/DataTable/BaseFilter.php b/core/DataTable/BaseFilter.php index fb2dc009f9db209f26361e63b4051ae9c73737e6..dc4756d82ed438fc7957d1c96d94051e02b44461 100644 --- a/core/DataTable/BaseFilter.php +++ b/core/DataTable/BaseFilter.php @@ -73,8 +73,8 @@ abstract class BaseFilter if (!$this->enableRecursive) { return; } - if ($row->isSubtableLoaded()) { - $subTable = Manager::getInstance()->getTable($row->getIdSubDataTable()); + $subTable = $row->getSubtable(); + if ($subTable) { $this->filter($subTable); } } diff --git a/core/DataTable/Filter/PatternRecursive.php b/core/DataTable/Filter/PatternRecursive.php index 697403c2e340d3c6b6341a16780958b908e0a56e..f383a132609e427ed8dbb45930474606b365a97a 100644 --- a/core/DataTable/Filter/PatternRecursive.php +++ b/core/DataTable/Filter/PatternRecursive.php @@ -62,18 +62,15 @@ class PatternRecursive extends BaseFilter // AND 2 - the label is not found in the children $patternNotFoundInChildren = false; - try { - $idSubTable = $row->getIdSubDataTable(); - $subTable = Manager::getInstance()->getTable($idSubTable); - + $subTable = $row->getSubtable(); + if(!$subTable) { + $patternNotFoundInChildren = true; + } else { // we delete the row if we couldn't find the pattern in any row in the // children hierarchy if ($this->filter($subTable) == 0) { $patternNotFoundInChildren = true; } - } catch (Exception $e) { - // there is no subtable loaded for example - $patternNotFoundInChildren = true; } if ($patternNotFoundInChildren diff --git a/core/DataTable/Filter/ReplaceSummaryRowLabel.php b/core/DataTable/Filter/ReplaceSummaryRowLabel.php index 3c1e31e2d0cd9a99e22c0fc3c2fb4b55536ae887..1e550f6e3ff2185bd83b0fdcefb29664450967bd 100644 --- a/core/DataTable/Filter/ReplaceSummaryRowLabel.php +++ b/core/DataTable/Filter/ReplaceSummaryRowLabel.php @@ -65,8 +65,8 @@ class ReplaceSummaryRowLabel extends BaseFilter // recurse foreach ($rows as $row) { - if ($row->isSubtableLoaded()) { - $subTable = Manager::getInstance()->getTable($row->getIdSubDataTable()); + $subTable = $row->getSubtable(); + if ($subTable) { $this->filter($subTable); } } diff --git a/core/DataTable/Manager.php b/core/DataTable/Manager.php index d225b8fb87a3ad6e3e0899ec4065ae39defc18aa..07e7bc01b2e70a5d4c991ad75d4a30bcd2488271 100644 --- a/core/DataTable/Manager.php +++ b/core/DataTable/Manager.php @@ -61,7 +61,7 @@ class Manager extends Singleton public function getTable($idTable) { if (!isset($this->tables[$idTable])) { - throw new TableNotFoundException(sprintf("This report has been reprocessed since your last click. To see this error less often, please increase the timeout value in seconds in Settings > General Settings. (error: id %s not found).", $idTable)); + throw new TableNotFoundException(sprintf("Error: table id %s not found in memory. (If this error is causing you problems in production, please report it in Piwik issue tracker.)", $idTable)); } return $this->tables[$idTable]; diff --git a/core/DataTable/Renderer/Console.php b/core/DataTable/Renderer/Console.php index 0e1c127fb140f3a6186f4ffb0fca9243d9882d98..a4fcbff0c5af2ef9aaff9e4b342f2de3fa91892c 100644 --- a/core/DataTable/Renderer/Console.php +++ b/core/DataTable/Renderer/Console.php @@ -120,14 +120,10 @@ class Console extends Renderer . $row->getIdSubDataTable() . "]<br />\n"; if (!is_null($row->getIdSubDataTable())) { - if ($row->isSubtableLoaded()) { + $subTable = $row->getSubtable(); + if ($subTable) { $depth++; - $output .= $this->renderTable( - Manager::getInstance()->getTable( - $row->getIdSubDataTable() - ), - $prefix . ' ' - ); + $output .= $this->renderTable($subTable, $prefix . ' '); $depth--; } else { $output .= "-- Sub DataTable not loaded<br />\n"; diff --git a/core/DataTable/Renderer/Php.php b/core/DataTable/Renderer/Php.php index 56360b939ca41b2b04739ac098100f246de2cfaa..eb6d32a3e3e8c8634146146d9dd6e1970a829c67 100644 --- a/core/DataTable/Renderer/Php.php +++ b/core/DataTable/Renderer/Php.php @@ -206,10 +206,11 @@ class Php extends Renderer $newRow['issummaryrow'] = true; } + $subTable = $row->getSubtable(); if ($this->isRenderSubtables() - && $row->isSubtableLoaded() + && $subTable ) { - $subTable = $this->renderTable(Manager::getInstance()->getTable($row->getIdSubDataTable())); + $subTable = $this->renderTable($subTable); $newRow['subtable'] = $subTable; if ($this->hideIdSubDatatable === false && isset($newRow['metadata']['idsubdatatable_in_db']) diff --git a/core/DataTable/Row.php b/core/DataTable/Row.php index c6c0d21e9f5041c814bab9539f62a24294d81f60..0e7d329d779b0f283356d90beeb6b4db9c795cb6 100644 --- a/core/DataTable/Row.php +++ b/core/DataTable/Row.php @@ -317,7 +317,11 @@ class Row implements \ArrayAccess, \IteratorAggregate public function getSubtable() { if ($this->isSubtableLoaded()) { - return Manager::getInstance()->getTable($this->getIdSubDataTable()); + try { + return Manager::getInstance()->getTable($this->getIdSubDataTable()); + } catch(TableNotFoundException $e) { + // edge case + } } return false; } diff --git a/core/DataTable/Row/DataTableSummaryRow.php b/core/DataTable/Row/DataTableSummaryRow.php index 7d477a304cee1ef7737a45ffcbc9e5bc9d45049d..2c9eda5e8e0e782df461111c4ee08b2d5b9ff590 100644 --- a/core/DataTable/Row/DataTableSummaryRow.php +++ b/core/DataTable/Row/DataTableSummaryRow.php @@ -47,9 +47,8 @@ class DataTableSummaryRow extends Row */ public function recalculate() { - $id = $this->getIdSubDataTable(); - if ($id !== null) { - $subTable = Manager::getInstance()->getTable($id); + $subTable = $this->getSubtable(); + if ($subTable) { $this->sumTable($subTable); } } diff --git a/core/Tracker/PageUrl.php b/core/Tracker/PageUrl.php index ae55b48aac3169e8abd3bb72e9131fdfe2e45831..4174a3168fd862ff464a75938cf1ccc13e32b0e4 100644 --- a/core/Tracker/PageUrl.php +++ b/core/Tracker/PageUrl.php @@ -256,13 +256,18 @@ class PageUrl */ public static function reencodeParameters(&$queryParameters, $encoding = false) { - // if query params are encoded w/ non-utf8 characters (due to browser bug or whatever), - // encode to UTF-8. - if (false !== $encoding - && 'utf-8' != strtolower($encoding) - && function_exists('mb_check_encoding') - ) { - $queryParameters = PageUrl::reencodeParametersArray($queryParameters, $encoding); + if (function_exists('mb_check_encoding')) { + // if query params are encoded w/ non-utf8 characters (due to browser bug or whatever), + // encode to UTF-8. + if (strtolower($encoding) != 'utf-8' + && $encoding != false + ) { + Common::printDebug("Encoding page URL query parameters to $encoding."); + + $queryParameters = PageUrl::reencodeParametersArray($queryParameters, $encoding); + } + } else { + Common::printDebug("Page charset supplied in tracking request, but mbstring extension is not available."); } return $queryParameters; @@ -349,5 +354,15 @@ class PageUrl return array(); } -} + public static function urldecodeValidUtf8($value) + { + $value = urldecode($value); + if (function_exists('mb_check_encoding') + && !@mb_check_encoding($value, 'utf-8') + ) { + return urlencode($value); + } + return $value; + } +} \ No newline at end of file diff --git a/libs/PiwikTracker/PiwikTracker.php b/libs/PiwikTracker/PiwikTracker.php index c998e1913dee40dd1031c880f561a9788c833a68..ffb57b619548188b110ee8c2f360a9029299c54f 100644 --- a/libs/PiwikTracker/PiwikTracker.php +++ b/libs/PiwikTracker/PiwikTracker.php @@ -160,22 +160,28 @@ class PiwikTracker */ function __construct($idSite, $apiUrl = '') { - $this->userAgent = false; - $this->localHour = false; - $this->localMinute = false; - $this->localSecond = false; - $this->hasCookies = false; - $this->plugins = false; - $this->pageCustomVar = false; + $this->ecommerceItems = array(); + $this->attributionInfo = false; $this->eventCustomVar = false; - $this->customData = false; $this->forcedDatetime = false; $this->forcedNewVisit = false; - $this->token_auth = false; - $this->attributionInfo = false; - $this->ecommerceLastOrderTimestamp = false; - $this->ecommerceItems = array(); $this->generationTime = false; + $this->pageCustomVar = false; + $this->customData = false; + $this->hasCookies = false; + $this->token_auth = false; + $this->userAgent = false; + $this->country = false; + $this->region = false; + $this->city = false; + $this->lat = false; + $this->long = false; + $this->width = false; + $this->height = false; + $this->plugins = false; + $this->localHour = false; + $this->localMinute = false; + $this->localSecond = false; $this->idSite = $idSite; $this->urlReferrer = !empty($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : false; @@ -212,7 +218,7 @@ class PiwikTracker $this->visitCount = 0; $this->currentVisitTs = false; $this->lastVisitTs = false; - $this->lastEcommerceOrderTs = false; + $this->ecommerceLastOrderTimestamp = false; // Allow debug while blocking the request $this->requestTimeout = 600; @@ -529,6 +535,8 @@ class PiwikTracker /** * Get cookie name with prefix and domain hash + * @param string $cookieName + * @return string */ protected function getCookieName($cookieName) { // NOTE: If the cookie name is changed, we must also update the method in piwik.js with the same name. @@ -553,8 +561,8 @@ class PiwikTracker * * @param string $category The Event Category (Videos, Music, Games...) * @param string $action The Event's Action (Play, Pause, Duration, Add Playlist, Downloaded, Clicked...) - * @param string $name (optional) The Event's object Name (a particular Movie name, or Song name, or File name...) - * @param float $value (optional) The Event's value + * @param string|bool $name (optional) The Event's object Name (a particular Movie name, or Song name, or File name...) + * @param float|bool $value (optional) The Event's value * @return mixed Response string or true if using bulk requests. */ public function doTrackEvent($category, $action, $name = false, $value = false) @@ -568,7 +576,7 @@ class PiwikTracker * * @param string $contentName The name of the content. For instance 'Ad Foo Bar' * @param string $contentPiece The actual content. For instance the path to an image, video, audio, any text - * @param string|false $contentTarget (optional) The target of the content. For instance the URL of a landing page. + * @param string|bool $contentTarget (optional) The target of the content. For instance the URL of a landing page. * @return mixed Response string or true if using bulk requests. */ public function doTrackContentImpression($contentName, $contentPiece = 'Unknown', $contentTarget = false) @@ -584,7 +592,7 @@ class PiwikTracker * @param string $interaction The name of the interaction with the content. For instance a 'click' * @param string $contentName The name of the content. For instance 'Ad Foo Bar' * @param string $contentPiece The actual content. For instance the path to an image, video, audio, any text - * @param string|false $contentTarget (optional) The target the content leading to when an interaction occurs. For instance the URL of a landing page. + * @param string|bool $contentTarget (optional) The target the content leading to when an interaction occurs. For instance the URL of a landing page. * @return mixed Response string or true if using bulk requests. */ public function doTrackContentInteraction($interaction, $contentName, $contentPiece = 'Unknown', $contentTarget = false) @@ -891,9 +899,10 @@ class PiwikTracker * @see doTrackEvent() * @param string $category The Event Category (Videos, Music, Games...) * @param string $action The Event's Action (Play, Pause, Duration, Add Playlist, Downloaded, Clicked...) - * @param string $name (optional) The Event's object Name (a particular Movie name, or Song name, or File name...) - * @param float $value (optional) The Event's value + * @param string|bool $name (optional) The Event's object Name (a particular Movie name, or Song name, or File name...) + * @param float|bool $value (optional) The Event's value * @return string URL to piwik.php with all parameters set to track the pageview + * @throws */ public function getUrlTrackEvent($category, $action, $name = false, $value = false) { @@ -1199,7 +1208,7 @@ class PiwikTracker $this->currentVisitTs = $parts[3]; $this->lastVisitTs = $parts[4]; if(isset($parts[5])) { - $this->lastEcommerceOrderTs = $parts[5]; + $this->ecommerceLastOrderTimestamp = $parts[5]; } return true; } @@ -1496,14 +1505,13 @@ class PiwikTracker '&_idts=' . $this->createTs . '&_idvc=' . $this->visitCount . (!empty($this->lastVisitTs) ? '&_viewts=' . $this->lastVisitTs : '' ) . - (!empty($this->lastEcommerceOrderTs) ? '&_ects=' . $this->lastEcommerceOrderTs : '' ) . + (!empty($this->ecommerceLastOrderTimestamp) ? '&_ects=' . urlencode($this->ecommerceLastOrderTimestamp) : '') . // These parameters are set by the JS, but optional when using API (!empty($this->plugins) ? $this->plugins : '') . (($this->localHour !== false && $this->localMinute !== false && $this->localSecond !== false) ? '&h=' . $this->localHour . '&m=' . $this->localMinute . '&s=' . $this->localSecond : '') . (!empty($this->width) && !empty($this->height) ? '&res=' . $this->width . 'x' . $this->height : '') . (!empty($this->hasCookies) ? '&cookie=' . $this->hasCookies : '') . - (!empty($this->ecommerceLastOrderTimestamp) ? '&_ects=' . urlencode($this->ecommerceLastOrderTimestamp) : '') . // Various important attributes (!empty($this->customData) ? '&data=' . $this->customData : '') . @@ -1694,7 +1702,7 @@ class PiwikTracker // Set the 'id' cookie $visitCount = $this->visitCount + 1; - $cookieValue = $this->getVisitorId() . '.' . $this->createTs . '.' . $visitCount . '.' . $this->currentTs . '.' . $this->lastVisitTs . '.' . $this->lastEcommerceOrderTs; + $cookieValue = $this->getVisitorId() . '.' . $this->createTs . '.' . $visitCount . '.' . $this->currentTs . '.' . $this->lastVisitTs . '.' . $this->ecommerceLastOrderTimestamp; $this->setCookie('id', $cookieValue, $this->configVisitorCookieTimeout); // Set the 'cvar' cookie diff --git a/libs/upgradephp/upgrade.php b/libs/upgradephp/upgrade.php index 322ffd0455ea11c5959707c4c044c87b5c4748e4..903611c9705feb23d72ab2705329176b091b2b19 100644 --- a/libs/upgradephp/upgrade.php +++ b/libs/upgradephp/upgrade.php @@ -633,8 +633,8 @@ function _readfile($filename, $byteStart, $byteEnd, $useIncludePath = false, $co for ($pos = $byteStart; $pos < $byteEnd && !feof($handle); $pos = ftell($handle)) { echo fread($handle, min(8192, $byteEnd - $pos)); - ob_flush(); - flush(); + @ob_flush(); + @flush(); } fclose($handle); diff --git a/misc/log-analytics/README.md b/misc/log-analytics/README.md index a9d53d8dfc16910b3ba7113a39ac4b50c49b2721..d7eb5aff3a552dc623ea15c01148c6cacd3e2895 100644 --- a/misc/log-analytics/README.md +++ b/misc/log-analytics/README.md @@ -22,6 +22,12 @@ If you wish to track all requests the following command would be used: python /path/to/piwik/misc/log-analytics/import_logs.py --url=http://mysite/piwik/ --idsite=1234 --recorders=4 --enable-http-errors --enable-http-redirects --enable-static --enable-bots access.log +### Format Specific Details + +* If you are importing Netscaler log files, make sure to specify the **--iis-time-taken-secs** option. Netscaler stores + the time-taken field in seconds while most other formats use milliseconds. Using this option will ensure that the + log importer interprets the field correctly. + ## How to import your logs automatically every day? You must first make sure your logs are automatically rotated every day. The most diff --git a/misc/log-analytics/import_logs.py b/misc/log-analytics/import_logs.py index 7b46ea3e11b01d738b0ef5a9e229fe83336c1b39..9e57eeb4cb40a8fe7c62873fc77ac058cd78b141 100755 --- a/misc/log-analytics/import_logs.py +++ b/misc/log-analytics/import_logs.py @@ -187,48 +187,76 @@ class RegexFormat(BaseFormat): def get_all(self,): return self.matched.groupdict() -class IisFormat(RegexFormat): +class W3cExtendedFormat(RegexFormat): + + FIELDS_LINE_PREFIX = '#Fields: ' + + fields = { + 'date': '(?P<date>^\d+[-\d+]+', + 'time': '[\d+:]+)[.\d]*?', # TODO should not assume date & time will be together not sure how to fix ATM. + 'cs-uri-stem': '(?P<path>/\S*)', + 'cs-uri-query': '(?P<query_string>\S*)', + 'c-ip': '"?(?P<ip>[\d*.]*)"?', + 'cs(User-Agent)': '(?P<user_agent>".*?"|\S+)', + 'cs(Referer)': '(?P<referrer>\S+)', + 'sc-status': '(?P<status>\d+)', + 'sc-bytes': '(?P<length>\S+)', + 'cs-host': '(?P<host>\S+)', + 'cs-username': '(?P<userid>\S+)', + 'time-taken': '(?P<generation_time_milli>\d+)' + } def __init__(self): - super(IisFormat, self).__init__('iis', None, '%Y-%m-%d %H:%M:%S') + super(W3cExtendedFormat, self).__init__('w3c_extended', None, '%Y-%m-%d %H:%M:%S') def check_format(self, file): - line = file.readline() - if not line.startswith('#Software: Microsoft Internet Information Services '): + # collect all header lines and the first line of the logfile + header_lines = [] + while True: + line = file.readline() + + if line.startswith('#'): + header_lines.append(line) + else: + break + first_line = line + fields_line = next((line for line in header_lines if line.startswith(W3cExtendedFormat.FIELDS_LINE_PREFIX)), None) + + if not header_lines or not fields_line: file.seek(0) return - # Skip the next 2 lines. - for i in xrange(2): - file.readline() - # Parse the 4th line (regex) + + # Parse the 4th 'Fields: ' line to create the regex to use full_regex = [] - line = file.readline() - fields = { - 'date': '(?P<date>^\d+[-\d+]+', - 'time': '[\d+:]+)', - 'cs-uri-stem': '(?P<path>/\S*)', - 'cs-uri-query': '(?P<query_string>\S*)', - 'c-ip': '(?P<ip>[\d*.]*)', - 'cs(User-Agent)': '(?P<user_agent>\S+)', - 'cs(Referer)': '(?P<referrer>\S+)', - 'sc-status': '(?P<status>\d+)', - 'sc-bytes': '(?P<length>\S+)', - 'cs-host': '(?P<host>\S+)', - } + + expected_fields = W3cExtendedFormat.fields.copy() # turn custom field mapping into field => regex mapping + for mapped_field_name, field_name in config.options.custom_w3c_fields.iteritems(): + expected_fields[mapped_field_name] = W3cExtendedFormat.fields[field_name] + del expected_fields[field_name] + + # if the --w3c-time-taken-secs option is used, make sure the time-taken field is interpreted as seconds + if config.options.w3c_time_taken_in_secs: + expected_fields['time-taken'] = '(?P<generation_time_secs>\S+)' + else: + # check if we're importing netscaler logs and if so, issue a warning + if 'netscaler' in header_lines[1].lower(): + logging.info("WARNING: netscaler log file being parsed without --w3c-time-taken-secs option. Netscaler" + " stores second values in the time-taken field. If your logfile does this, the aforementioned" + " option must be used in order to get accurate generation times.") + # Skip the 'Fields: ' prefix. - line = line[9:] - for field in line.split(): + fields_line = fields_line[9:] + for field in fields_line.split(): try: - regex = fields[field] + regex = expected_fields[field] except KeyError: regex = '\S+' full_regex.append(regex) self.regex = re.compile(' '.join(full_regex)) - start_pos = file.tell() - nextline = file.readline() + start_pos = file.tell() - len(first_line) file.seek(start_pos) - return self.check_format_line(nextline) + return self.check_format_line(first_line) _HOST_PREFIX = '(?P<host>[\w\-\.]*)(?::\d+)? ' _COMMON_LOG_FORMAT = ( @@ -252,7 +280,8 @@ FORMATS = { 'common_vhost': RegexFormat('common_vhost', _HOST_PREFIX + _COMMON_LOG_FORMAT), 'ncsa_extended': RegexFormat('ncsa_extended', _NCSA_EXTENDED_LOG_FORMAT), 'common_complete': RegexFormat('common_complete', _HOST_PREFIX + _NCSA_EXTENDED_LOG_FORMAT), - 'iis': IisFormat(), + 'w3c_extended': W3cExtendedFormat(), + 'iis': W3cExtendedFormat(), # for backwards compatibility TODO test 's3': RegexFormat('s3', _S3_LOG_FORMAT), 'icecast2': RegexFormat('icecast2', _ICECAST2_LOG_FORMAT), 'nginx_json': JsonFormat('nginx_json'), @@ -485,8 +514,37 @@ class Configuration(object): '--download-extensions', dest='download_extensions', default=None, help="By default Piwik tracks as Downloads the most popular file extensions. If you set this parameter (format: pdf,doc,...) then files with an extension found in the list will be imported as Downloads, other file extensions downloads will be skipped." ) + option_parser.add_option( + '--w3c-map-field', action='callback', callback=self._set_w3c_field_map, type='string', + help="Map a custom log entry field in your W3C log to a default one. Use this option to load custom log " + "files that use the W3C extended log format such as those from the Advanced Logging W3C module. Used " + "as, eg, --w3c-map-field my-date=date. Recognized default fields include: %s" + % (', '.join(W3cExtendedFormat.fields.keys())) + ) + option_parser.add_option( + '--w3c-time-taken-secs', action='store_true', default=False, dest='w3c_time_taken_in_secs', + help="If set, interprets the time-taken W3C log field as a number of seconds. This must be set for importing" + " netscaler logs." + ) return option_parser + def _set_w3c_field_map(self, option, opt_str, value, parser): + parts = value.split('=') + + if len(parts) != 2: + fatal_error("Invalid --w3c-map-field option: '%s'" % value) + + custom_name, default_name = parts + + if default_name not in W3cExtendedFormat.fields: + fatal_error("custom W3C field mapping error: don't know how to parse and use the '%' field" % default_name) + return + + if not hasattr(parser.values, 'custom_w3c_fields'): + parser.values.custom_w3c_fields = {} + + parser.values.custom_w3c_fields[custom_name] = default_name + def _parse_args(self, option_parser): """ Parse the command line args and create self.options and self.filenames. @@ -500,6 +558,9 @@ class Configuration(object): print(option_parser.format_help()) sys.exit(1) + if not hasattr(self.options, 'custom_w3c_fields'): + self.options.custom_w3c_fields = {} + # Configure logging before calling logging.{debug,info}. logging.basicConfig( format='%(asctime)s: [%(levelname)s] %(message)s', @@ -1250,8 +1311,9 @@ class Recorder(object): 'cdt': self.date_to_piwik(hit.date), 'idsite': site_id, 'dp': '0' if config.options.reverse_dns else '1', - 'ua': hit.user_agent.encode('utf8'), + 'ua': hit.user_agent.encode('utf8') } + if config.options.replay_tracking: # prevent request to be force recorded when option replay-tracking args['rec'] = '0' @@ -1499,7 +1561,7 @@ class Parser(object): format = False - # check the format using the file (for formats like the IIS one) + # check the format using the file (for formats like the W3cExtendedFormat one) format = Parser.check_format(file) # check the format using the first N lines (to avoid irregular ones) @@ -1507,6 +1569,9 @@ class Parser(object): limit = 100000 while not format and lineno < limit: line = file.readline() + if not line: # if at eof, don't keep looping + break + lineno = lineno + 1 logging.debug("Detecting format against line %i" % lineno) @@ -1610,7 +1675,7 @@ class Parser(object): except BaseFormatException: hit.path, _, hit.query_string = hit.full_path.partition(config.options.query_string_delimiter) - # IIS detaults to - when there is no query string, but we want empty string + # W3cExtendedFormat detaults to - when there is no query string, but we want empty string if hit.query_string == '-': hit.query_string = '' @@ -1625,6 +1690,11 @@ class Parser(object): try: hit.user_agent = format.get('user_agent') + + # in case a format parser included enclosing quotes, remove them so they are not + # sent to Piwik + if hit.user_agent.startswith('"'): + hit.user_agent = hit.user_agent[1:-1] except BaseFormatException: hit.user_agent = '' @@ -1632,7 +1702,7 @@ class Parser(object): try: hit.length = int(format.get('length')) except (ValueError, BaseFormatException): - # Some lines or formats don't have a length (e.g. 304 redirects, IIS logs) + # Some lines or formats don't have a length (e.g. 304 redirects, W3C logs) hit.length = 0 try: @@ -1641,7 +1711,10 @@ class Parser(object): try: hit.generation_time_milli = int(format.get('generation_time_micro')) / 1000 except BaseFormatException: - hit.generation_time_milli = 0 + try: + hit.generation_time_milli = int(format.get('generation_time_secs')) * 1000 + except BaseFormatException: + hit.generation_time_milli = 0 if config.options.log_hostname: hit.host = config.options.log_hostname @@ -1652,6 +1725,16 @@ class Parser(object): # Some formats have no host. pass + # Add userid + try: + hit.userid = None + + userid = format.get('userid') + if userid != '-': + hit.args['uid'] = userid + except: + pass + # Check if the hit must be excluded. if not all((method(hit) for method in self.check_methods)): continue diff --git a/misc/log-analytics/tests/logs/iis_custom.log b/misc/log-analytics/tests/logs/iis_custom.log new file mode 100644 index 0000000000000000000000000000000000000000..73797b64ddc641a07209dbb212d307bef0127e60 --- /dev/null +++ b/misc/log-analytics/tests/logs/iis_custom.log @@ -0,0 +1,7 @@ +#Software: IIS Advanced Logging Module +#Version: 1.0 +#Start-Date: 2014-11-18 00:00:00.128 +#Fields: date-local time-local s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) cs(Referer) cs(Host) sc-status sc-substatus sc-win32-status TimeTakenMS +2012-08-15 17:00:00.363 10.10.28.140 GET /Products/theProduct - 80 - "70.95.0.0" "Mozilla/5.0 (Linux; Android 4.4.4; SM-G900V Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.59 Mobile Safari/537.36" "http://example.com/Search/SearchResults.pg?informationRecipient.languageCode.c=en" "xzy.example.com" 200 0 0 109 +2012-08-15 17:00:00.660 10.10.28.140 GET /Topic/hw43061 - 80 - "70.95.32.0" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.1 Safari/537.36" - "example.hello.com" 301 0 0 0 +2012-08-15 17:00:00.675 10.10.28.140 GET /hello/world/6,681965 - 80 - "173.5.0.0" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36" - "hello.example.com" 404 0 0 359 diff --git a/misc/log-analytics/tests/logs/netscaler.log b/misc/log-analytics/tests/logs/netscaler.log new file mode 100644 index 0000000000000000000000000000000000000000..380c09d2c449c25a3fb410758f676673749adfb4 --- /dev/null +++ b/misc/log-analytics/tests/logs/netscaler.log @@ -0,0 +1,5 @@ +#Version: 1.0 +#Software: Netscaler Web Logging(NSWL) +#Date: 2014-02-18 11:55:13 +#Fields: date time c-ip cs-username sc-servicename s-ip s-port cs-method cs-uri-stem cs-uri-query sc-status cs-bytes sc-bytes time-taken cs-version cs(User-Agent) cs(Cookie) cs(Referer) +2012-08-16 11:55:13 172.20.1.0 - HTTP 192.168.6.254 8080 GET /Citrix/XenApp/Wan/auth/login.jsp - 302 247 355 1 HTTP/1.1 Mozilla/4.0+(compatible;+MSIE+7.0;+Windows+NT+5.1;+Trident/4.0;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727;+.NET+CLR+3.0.04506.648;+.NET+CLR+3.5.21022) - - diff --git a/misc/log-analytics/tests/tests.py b/misc/log-analytics/tests/tests.py index 37af5eee8f5ab9bf9dd3b8ae1eaf35d0cc8a1d03..73811a37176e32d60f566633e52956b2d3a02489 100644 --- a/misc/log-analytics/tests/tests.py +++ b/misc/log-analytics/tests/tests.py @@ -1,6 +1,7 @@ # vim: et sw=4 ts=4: import functools import os +import datetime import import_logs @@ -23,19 +24,30 @@ def tearDownModule(): def test_format_detection(): def _test(format_name): file = open('logs/%s.log' % format_name) + import_logs.config = Config() format = import_logs.Parser.detect_format(file) assert(format is not None) - assert(format.name == format_name) + if format_name == 'iis': + assert(format.name == 'w3c_extended') + else: + assert(format.name == format_name) def _test_junk(format_name): tmp_path = add_junk_to_file('logs/%s.log' % format_name) file = open(tmp_path) + import_logs.config = Config() format = import_logs.Parser.detect_format(file) assert(format is not None) - assert(format.name == format_name) + if format_name == 'iis': + assert(format.name == 'w3c_extended') + else: + assert(format.name == format_name) for format_name in import_logs.FORMATS.iterkeys(): + if format_name == 'w3c_extended': # tested by iis and netscaler log files + continue + f = functools.partial(_test, format_name) f.description = 'Testing autodetection of format ' + format_name yield f @@ -64,6 +76,8 @@ class Options(object): included_paths = [] enable_http_errors = False download_extensions = 'doc,pdf' + custom_w3c_fields = {} + w3c_time_taken_in_secs = False class Config(object): """Mock configuration.""" @@ -183,6 +197,8 @@ def test_replay_tracking_arguments(): def parse_log_file_line(format_name, file_): format = import_logs.FORMATS[format_name] + import_logs.config.options.custom_w3c_fields = {} + file = open(file_) match = format.check_format(file) file.close() @@ -226,7 +242,8 @@ def check_iis_groups(groups): assert groups['host'] == 'example.com' expected_hit_properties = ['date', 'path', 'query_string', 'ip', 'referrer', 'user_agent', - 'status', 'length', 'host'] + 'status', 'length', 'host', 'userid', 'generation_time_milli'] + for property_name in groups.keys(): assert property_name in expected_hit_properties @@ -272,15 +289,135 @@ def test_format_parsing(): _test(format_name, tmp_path) for format_name in import_logs.FORMATS.iterkeys(): + if format_name == 'w3c_extended': # tested by IIS and netscaler logs + continue + f = functools.partial(_test, format_name, 'logs/' + format_name + '.log') f.description = 'Testing parsing of format "%s"' % format_name yield f f = functools.partial(_test_with_junk, format_name, 'logs/' + format_name + '.log') - f.description = 'Testing parsin of format "%s" with junk appended to path' % format_name + f.description = 'Testing parsing of format "%s" with junk appended to path' % format_name yield f f = functools.partial(_test, 'common', 'logs/ncsa_extended.log') f.description = 'Testing parsing of format "common" with ncsa_extended log' yield f + +def test_iis_custom_format(): + """test IIS custom format name parsing.""" + + file_ = 'logs/iis_custom.log' + + # have to override previous globals override for this test + import_logs.config.options.custom_w3c_fields = { + 'date-local': 'date', + 'time-local': 'time', + 'cs(Host)': 'cs-host', + 'TimeTakenMS': 'time-taken' + } + Recorder.recorders = [] + import_logs.parser = import_logs.Parser() + import_logs.config.format = None + import_logs.config.options.enable_http_redirects = True + import_logs.config.options.enable_http_errors = True + import_logs.config.options.replay_tracking = False + import_logs.parser.parse(file_) + + hits = [hit.__dict__ for hit in Recorder.recorders] + + assert hits[0]['status'] == '200' + assert hits[0]['is_error'] == False + assert hits[0]['extension'] == u'/products/theproduct' + assert hits[0]['is_download'] == False + assert hits[0]['referrer'] == u'"http://example.com/Search/SearchResults.pg?informationRecipient.languageCode.c=en"' + assert hits[0]['args'] == {} + assert hits[0]['generation_time_milli'] == 109 + assert hits[0]['host'] == 'foo' + assert hits[0]['filename'] == 'logs/iis_custom.log' + assert hits[0]['is_redirect'] == False + assert hits[0]['date'] == datetime.datetime(2012, 8, 15, 17, 0) + assert hits[0]['lineno'] == 4 + assert hits[0]['ip'] == u'70.95.0.0' + assert hits[0]['query_string'] == '' + assert hits[0]['path'] == u'/Products/theProduct' + assert hits[0]['is_robot'] == False + assert hits[0]['full_path'] == u'/Products/theProduct' + assert hits[0]['user_agent'] == u'Mozilla/5.0 (Linux; Android 4.4.4; SM-G900V Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.59 Mobile Safari/537.36' + + assert hits[1]['status'] == u'301' + assert hits[1]['is_error'] == False + assert hits[1]['extension'] == u'/topic/hw43061' + assert hits[1]['is_download'] == False + assert hits[1]['referrer'] == '' + assert hits[1]['args'] == {} + assert hits[1]['generation_time_milli'] == 0 + assert hits[1]['host'] == 'foo' + assert hits[1]['filename'] == 'logs/iis_custom.log' + assert hits[1]['is_redirect'] == True + assert hits[1]['date'] == datetime.datetime(2012, 8, 15, 17, 0) + assert hits[1]['lineno'] == 5 + assert hits[1]['ip'] == '70.95.32.0' + assert hits[1]['query_string'] == '' + assert hits[1]['path'] == u'/Topic/hw43061' + assert hits[1]['is_robot'] == False + assert hits[1]['full_path'] == u'/Topic/hw43061' + assert hits[1]['user_agent'] == u'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.1 Safari/537.36' + + assert hits[2]['status'] == u'404' + assert hits[2]['is_error'] == True + assert hits[2]['extension'] == u'/hello/world/6,681965' + assert hits[2]['is_download'] == False + assert hits[2]['referrer'] == '' + assert hits[2]['args'] == {} + assert hits[2]['generation_time_milli'] == 359 + assert hits[2]['host'] == 'foo' + assert hits[2]['filename'] == 'logs/iis_custom.log' + assert hits[2]['is_redirect'] == False + assert hits[2]['date'] == datetime.datetime(2012, 8, 15, 17, 0) + assert hits[2]['lineno'] == 6 + assert hits[2]['ip'] == u'173.5.0.0' + assert hits[2]['query_string'] == '' + assert hits[2]['path'] == u'/hello/world/6,681965' + assert hits[2]['is_robot'] == False + assert hits[2]['full_path'] == u'/hello/world/6,681965' + assert hits[2]['user_agent'] == u'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36' + +def test_netscaler_parsing(): + """test parsing of netscaler logs (which use extended W3C log format)""" + + file_ = 'logs/netscaler.log' + + # have to override previous globals override for this test + import_logs.config.options.custom_w3c_fields = {} + Recorder.recorders = [] + import_logs.parser = import_logs.Parser() + import_logs.config.format = None + import_logs.config.options.enable_http_redirects = True + import_logs.config.options.enable_http_errors = True + import_logs.config.options.replay_tracking = False + import_logs.config.options.w3c_time_taken_in_secs = True + import_logs.parser.parse(file_) + + hits = [hit.__dict__ for hit in Recorder.recorders] + + assert hits[0]['status'] == u'302' + assert hits[0]['userid'] == None + assert hits[0]['is_error'] == False + assert hits[0]['extension'] == u'jsp' + assert hits[0]['is_download'] == False + assert hits[0]['referrer'] == '' + assert hits[0]['args'] == {} + assert hits[0]['generation_time_milli'] == 1000 + assert hits[0]['host'] == 'foo' + assert hits[0]['filename'] == 'logs/netscaler.log' + assert hits[0]['is_redirect'] == True + assert hits[0]['date'] == datetime.datetime(2012, 8, 16, 11, 55, 13) + assert hits[0]['lineno'] == 4 + assert hits[0]['ip'] == u'172.20.1.0' + assert hits[0]['query_string'] == '' + assert hits[0]['path'] == u'/Citrix/XenApp/Wan/auth/login.jsp' + assert hits[0]['is_robot'] == False + assert hits[0]['full_path'] == u'/Citrix/XenApp/Wan/auth/login.jsp' + assert hits[0]['user_agent'] == u'Mozilla/4.0+(compatible;+MSIE+7.0;+Windows+NT+5.1;+Trident/4.0;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727;+.NET+CLR+3.0.04506.648;+.NET+CLR+3.5.21022)' \ No newline at end of file diff --git a/plugins/Actions/Actions/ActionSiteSearch.php b/plugins/Actions/Actions/ActionSiteSearch.php index d19cfaa6fc71ac0942b926ed2e25c803d017e1ba..392e3777f8dc4a15675c9d74d0baac89125add9c 100644 --- a/plugins/Actions/Actions/ActionSiteSearch.php +++ b/plugins/Actions/Actions/ActionSiteSearch.php @@ -180,14 +180,19 @@ class ActionSiteSearch extends Action if (is_array($actionName)) { $actionName = reset($actionName); } - $actionName = trim(urldecode($actionName)); + + $actionName = PageUrl::urldecodeValidUtf8($actionName); + $actionName = trim($actionName); if (empty($actionName)) { return false; } + if (is_array($categoryName)) { $categoryName = reset($categoryName); } - $categoryName = trim(urldecode($categoryName)); + $categoryName = PageUrl::urldecodeValidUtf8($categoryName); + $categoryName = trim($categoryName); + return array($url, $actionName, $categoryName, $count); } diff --git a/plugins/Actions/ArchivingHelper.php b/plugins/Actions/ArchivingHelper.php index e168f5d742530d4075d4388d7262164944e83d81..34873eb194a164bd173cdbc3293efe493d8b2cc0 100644 --- a/plugins/Actions/ArchivingHelper.php +++ b/plugins/Actions/ArchivingHelper.php @@ -198,9 +198,9 @@ class ArchivingHelper if (($idSubtable = $row->getIdSubDataTable()) !== null || $id === DataTable::ID_SUMMARY_ROW ) { - if ($idSubtable !== null) { - $subtable = Manager::getInstance()->getTable($idSubtable); - self::deleteInvalidSummedColumnsFromDataTable($subtable); + $subTable = $row->getSubtable(); + if ($subTable) { + self::deleteInvalidSummedColumnsFromDataTable($subTable); } if ($row instanceof DataTableSummaryRow) { diff --git a/plugins/CustomAlerts b/plugins/CustomAlerts index 8ad0ac8638c27a93cb4bef80ecdd29b56876430b..2f10c8b496252d1527a47864cf39d18b359b7ae3 160000 --- a/plugins/CustomAlerts +++ b/plugins/CustomAlerts @@ -1 +1 @@ -Subproject commit 8ad0ac8638c27a93cb4bef80ecdd29b56876430b +Subproject commit 2f10c8b496252d1527a47864cf39d18b359b7ae3 diff --git a/plugins/MultiSites/angularjs/site/site.controller.js b/plugins/MultiSites/angularjs/site/site.controller.js index 7488b8330297a18338131deece6cd1d9499e59b5..2815ed4a777f785dc4b343b945c6d63218c11c8d 100644 --- a/plugins/MultiSites/angularjs/site/site.controller.js +++ b/plugins/MultiSites/angularjs/site/site.controller.js @@ -26,7 +26,21 @@ append = '&token_auth=' + token_auth; } - return piwik.piwik_url + '?module=MultiSites&action=getEvolutionGraph&period=' + $scope.period + '&date=' + $scope.dateSparkline + '&evolutionBy=' +$scope.metric + '&columns=' + $scope.metric + '&idSite=' + website.idsite + '&idsite=' + website.idsite + '&viewDataTable=sparkline' + append + '&colors=' + encodeURIComponent(JSON.stringify(piwik.getSparklineColors())); + var metric = $scope.metric; + + switch ($scope.evolutionMetric) { + case 'visits_evolution': + metric = 'nb_visits'; + break; + case 'pageviews_evolution': + metric = 'nb_pageviews'; + break; + case 'revenue_evolution': + metric = 'revenue'; + break; + } + + return piwik.piwik_url + '?module=MultiSites&action=getEvolutionGraph&period=' + $scope.period + '&date=' + $scope.dateSparkline + '&evolutionBy=' + metric + '&columns=' + metric + '&idSite=' + website.idsite + '&idsite=' + website.idsite + '&viewDataTable=sparkline' + append + '&colors=' + encodeURIComponent(JSON.stringify(piwik.getSparklineColors())); } } })(); diff --git a/plugins/QueuedTracking b/plugins/QueuedTracking index 657d46244b3b8345250f474e49a6af84f918a3de..8a04e7aee9cfc2f0c74c98e9c4ae84457e7e33d6 160000 --- a/plugins/QueuedTracking +++ b/plugins/QueuedTracking @@ -1 +1 @@ -Subproject commit 657d46244b3b8345250f474e49a6af84f918a3de +Subproject commit 8a04e7aee9cfc2f0c74c98e9c4ae84457e7e33d6 diff --git a/plugins/TestRunner/Commands/TestsRun.php b/plugins/TestRunner/Commands/TestsRun.php index 0aaef900496921308b1e2836215843646c583cd4..e7b02512b39a094f04034b677efcbecb4078afa5 100644 --- a/plugins/TestRunner/Commands/TestsRun.php +++ b/plugins/TestRunner/Commands/TestsRun.php @@ -47,7 +47,11 @@ class TestsRun extends ConsoleCommand $command = '../../vendor/phpunit/phpunit/phpunit'; if (!$this->isCoverageEnabled($options) && $this->isXdebugLoaded()) { - $output->writeln('<comment>Did you know? You can run tests faster by disabling xdebug</comment>'); + $message = 'Did you know? You can run tests faster by disabling xdebug'; + if($this->isXdebugCodeCoverageEnabled()) { + $message .= ' (if you need xdebug, speed up tests by setting xdebug.coverage_enable=0)</comment>'; + } + $output->writeln('<comment>' . $message .'</comment>'); } // force xdebug usage for coverage options @@ -255,6 +259,11 @@ class TestsRun extends ConsoleCommand return extension_loaded('xdebug'); } + private function isXdebugCodeCoverageEnabled() + { + return (bool)ini_get('xdebug.coverage_enable'); + } + private function fixPathToTestFileOrDirectory($testFile) { if ('/' !== substr($testFile, 0, 1)) { diff --git a/plugins/TestRunner/templates/travis.yml.twig b/plugins/TestRunner/templates/travis.yml.twig index 1972feb6c82eea7b6ba3e42dcf2dc76e47e6acef..c7faa74372508f64ee1cfd7525bf5bb893a2488b 100644 --- a/plugins/TestRunner/templates/travis.yml.twig +++ b/plugins/TestRunner/templates/travis.yml.twig @@ -146,8 +146,6 @@ before_script: # configure mysql - mysql -e "SET GLOBAL sql_mode = 'NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES'" # Travis default - # Uncomment to enable sql_mode STRICT_TRANS_TABLES (new default in Mysql 5.6) - - mysql -e "SET GLOBAL sql_mode = 'NO_ENGINE_SUBSTITUTION'" - mysql -e "SELECT @@sql_mode;" - mysql -e "SHOW GLOBAL VARIABLES;" {% if pluginName is empty %} diff --git a/plugins/Transitions/API.php b/plugins/Transitions/API.php index 44a39fdcf52a03f28acc42a1f19e23fc470e48ea..7092fee8f89318e7701caadefb6a0c48ecee4335 100644 --- a/plugins/Transitions/API.php +++ b/plugins/Transitions/API.php @@ -523,8 +523,8 @@ class API extends \Piwik\Plugin\API if ($visits) { // load details (i.e. subtables) $details = array(); - if ($idSubTable = $row->getIdSubDataTable()) { - $subTable = Manager::getInstance()->getTable($idSubTable); + $subTable = $row->getSubtable(); + if ($subTable) { foreach ($subTable->getRows() as $subRow) { $details[] = array( 'label' => $subRow->getColumn('label'), diff --git a/tests/PHPUnit/Fixtures/ManySitesImportedLogs.php b/tests/PHPUnit/Fixtures/ManySitesImportedLogs.php index e72708a11d7438589afdc85acdef08ea6fd4b889..830d22778cdcc505b297d94ea185e12aa80cc935 100644 --- a/tests/PHPUnit/Fixtures/ManySitesImportedLogs.php +++ b/tests/PHPUnit/Fixtures/ManySitesImportedLogs.php @@ -27,6 +27,8 @@ class ManySitesImportedLogs extends Fixture public $segments = null; // should be array mapping segment name => segment definition public $addSegments = false; + public $includeIisWithCustom = false; + public $includeNetscaler = false; public static function createAccessInstance() { @@ -111,6 +113,14 @@ class ManySitesImportedLogs extends Fixture $this->logVisitsWithAllEnabled(); $this->replayLogFile(); $this->logCustomFormat(); + + if ($this->includeIisWithCustom) { + $this->logIisWithCustomFormat(); + } + + if ($this->includeNetscaler) { + $this->logNetscaler(); + } } private function setupSegments() @@ -229,4 +239,32 @@ class ManySitesImportedLogs extends Fixture self::executeLogImporter($logFile, $opts); } + + private function logIisWithCustomFormat() + { + $logFile = PIWIK_INCLUDE_PATH . '/tests/resources/access-logs/fake_logs_custom_iis.log'; + + $opts = array('--idsite' => $this->idSite, + '--token-auth' => self::getTokenAuth(), + '--w3c-map-field' => array('date-local=date', 'time-local=time', 'cs(Host)=cs-host', 'TimeTakenMS=time-taken'), + '--enable-http-errors' => false, + '--enable-http-redirects' => false); + + self::executeLogImporter($logFile, $opts); + } + + private function logNetscaler() + { + $logFile = PIWIK_INCLUDE_PATH . '/tests/resources/access-logs/fake_logs_netscaler.log'; + + $opts = array('--idsite' => $this->idSite, + '--token-auth' => self::getTokenAuth(), + '--w3c-map-field' => array(), + '--enable-http-redirects' => false); + + $output = self::executeLogImporter($logFile, $opts); + + // make sure warning about --w3c-time-taken-secs appears in importer output + self::assertContains("WARNING: netscaler log file being parsed without --w3c-time-taken-secs option.", implode("\n", $output)); + } } \ No newline at end of file diff --git a/tests/PHPUnit/Framework/Fixture.php b/tests/PHPUnit/Framework/Fixture.php index 693b76e2804a037d328b21fd2f67c0f0c9c3f6e5..a2d6a6327a819ad67dd9f186d933debd74fa7a4e 100644 --- a/tests/PHPUnit/Framework/Fixture.php +++ b/tests/PHPUnit/Framework/Fixture.php @@ -758,12 +758,18 @@ class Fixture extends \PHPUnit_Framework_Assert . '--url="' . self::getRootUrl() . 'tests/PHPUnit/proxy/" ' # proxy so that piwik uses test config files ; - foreach ($options as $name => $value) { - $cmd .= $name; - if ($value !== false) { - $cmd .= '="' . $value . '"'; + foreach ($options as $name => $values) { + if (!is_array($values)) { + $values = array($values); + } + + foreach ($values as $value) { + $cmd .= $name; + if ($value !== false) { + $cmd .= '="' . $value . '"'; + } + $cmd .= ' '; } - $cmd .= ' '; } $cmd .= '"' . $logFile . '" 2>&1'; diff --git a/tests/PHPUnit/Framework/TestRequest/Response.php b/tests/PHPUnit/Framework/TestRequest/Response.php index 3d0b1622d42622ad276aa60561efb8669456300e..676c859b81579d72393e5667812fb86c2dc5c37c 100644 --- a/tests/PHPUnit/Framework/TestRequest/Response.php +++ b/tests/PHPUnit/Framework/TestRequest/Response.php @@ -161,6 +161,7 @@ class Response 'goalTimePretty', 'serverTimePretty', 'visitServerHour', + 'timestamp', 'date', 'prettyDate', 'serverDateTimePrettyFirstAction' diff --git a/tests/PHPUnit/System/ImportLogsTest.php b/tests/PHPUnit/System/ImportLogsTest.php index 44c6b7b0b9c137d7b33c5fca26e8f8ae1322b213..b13317b68fc8c1a750ead36465cf7489bae0510c 100755 --- a/tests/PHPUnit/System/ImportLogsTest.php +++ b/tests/PHPUnit/System/ImportLogsTest.php @@ -102,4 +102,6 @@ class ImportLogsTest extends SystemTestCase } } -ImportLogsTest::$fixture = new ManySitesImportedLogs(); \ No newline at end of file +ImportLogsTest::$fixture = new ManySitesImportedLogs(); +ImportLogsTest::$fixture->includeIisWithCustom = true; +ImportLogsTest::$fixture->includeNetscaler = true; \ No newline at end of file diff --git a/tests/PHPUnit/System/PrivacyManagerTest.php b/tests/PHPUnit/System/PrivacyManagerTest.php index 18b197a4102eb215279cd01ad4d5110f8a86f57e..0d99d0816d3eded22b790ff012469961dfb08c32 100644 --- a/tests/PHPUnit/System/PrivacyManagerTest.php +++ b/tests/PHPUnit/System/PrivacyManagerTest.php @@ -374,7 +374,7 @@ class PrivacyManagerTest extends SystemTestCase // perform checks $this->checkLogDataPurged(); - $this->_checkReportsAndMetricsPurged($janBlobsRemaining = 5, $janNumericRemaining = 68); // 5 blobs for 5 days + $this->_checkReportsAndMetricsPurged($janBlobsRemaining = 5, $janNumericRemaining = 69); // 5 blobs for 5 days } /** @@ -574,7 +574,7 @@ class PrivacyManagerTest extends SystemTestCase // perform checks $this->checkLogDataPurged(); - $this->_checkReportsAndMetricsPurged($janBlobsRemaining = 6, $janNumericRemaining = 70); // 1 segmented blob + 5 day blobs + $this->_checkReportsAndMetricsPurged($janBlobsRemaining = 6, $janNumericRemaining = 71); // 1 segmented blob + 5 day blobs } // --- utility functions follow --- @@ -720,15 +720,15 @@ class PrivacyManagerTest extends SystemTestCase // one metric for jan & one for feb Db::query(sprintf($sql, Common::prefixTable($archiveTables['numeric'][0])), - array(self::GARBAGE_FIELD, $janDate1, $janDate1, $janDate1, 1, 100)); + array(self::GARBAGE_FIELD, $janDate1, $janDate1, 1, $janDate1, 100)); Db::query(sprintf($sql, Common::prefixTable($archiveTables['numeric'][1])), - array(self::GARBAGE_FIELD, $febDate1, $febDate1, $febDate1, 1, 200)); + array(self::GARBAGE_FIELD, $febDate1, $febDate1, 1, $febDate1, 200)); // add garbage reports Db::query(sprintf($sql, Common::prefixTable($archiveTables['blob'][0])), - array(self::GARBAGE_FIELD, $janDate1, $janDate1, $janDate1, 10, 'blobval')); + array(self::GARBAGE_FIELD, $janDate1, $janDate1, 10, $janDate1, 'blobval')); Db::query(sprintf($sql, Common::prefixTable($archiveTables['blob'][1])), - array(self::GARBAGE_FIELD, $febDate1, $febDate1, $febDate1, 20, 'blobval')); + array(self::GARBAGE_FIELD, $febDate1, $febDate1, 20, $febDate1, 'blobval')); } protected function _checkNoDataChanges() diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageTitles_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageTitles_month.xml index 77e2b6491835297b7eb1a9a68914273d2c611640..b979b765d88dd5de3339ebdcd139c34823f1be64 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageTitles_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageTitles_month.xml @@ -2,16 +2,21 @@ <result> <row> <label>301</label> - <nb_visits>1</nb_visits> - <nb_hits>1</nb_hits> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> <sum_time_spent>180</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>2</entry_nb_actions> <entry_sum_visit_length>182</entry_sum_visit_length> <entry_bounce_count>0</entry_bounce_count> - <avg_time_on_page>180</avg_time_on_page> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>90</avg_time_on_page> <bounce_rate>0%</bounce_rate> - <exit_rate>0%</exit_rate> + <exit_rate>50%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label> URL = http://piwik.net/moved-permanently</label> @@ -32,23 +37,51 @@ </row> <row> <label>404</label> - <nb_visits>1</nb_visits> - <nb_hits>1</nb_hits> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> <sum_time_spent>0</sum_time_spent> - <entry_nb_visits>1</entry_nb_visits> - <entry_nb_actions>1</entry_nb_actions> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>2</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> - <entry_bounce_count>1</entry_bounce_count> - <exit_nb_visits>1</exit_nb_visits> + <entry_bounce_count>2</entry_bounce_count> + <exit_nb_visits>2</exit_nb_visits> <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> <subtable> + <row> + <label> URL = http://piwik.net/hello/world/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + </row> <row> <label> URL = http://piwik.net/this/is/not/the/page/i/am/looking/for/</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -60,6 +93,44 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + </row> + </subtable> + </row> + <row> + <label>302</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>240</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>240</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label> URL = http://piwik.net/Citrix/XenApp/Wan/auth/login.jsp</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>240</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> </row> </subtable> </row> @@ -68,6 +139,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -76,6 +150,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label> URL = http://piwik.net/to-an-error</label> @@ -101,6 +176,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -112,12 +190,16 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> </row> <row> <label> Piwik Forums</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -129,5 +211,6 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageTitles_range.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageTitles_range.xml index 2d81bb9f1952ed50ffb4d556dcac944b8092cfae..81d66a066b9a3f8debabe34c7b789d42609282f0 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageTitles_range.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageTitles_range.xml @@ -22,30 +22,9 @@ <avg_time_generation>0.177</avg_time_generation> </row> <row> - <label> Log Analytics - Analytics - Piwik</label> + <label>301</label> <nb_visits>2</nb_visits> <nb_hits>2</nb_hits> - <sum_time_spent>0</sum_time_spent> - <nb_hits_with_time_generation>1</nb_hits_with_time_generation> - <min_time_generation>0.145</min_time_generation> - <max_time_generation>0.145</max_time_generation> - <entry_nb_visits>2</entry_nb_visits> - <entry_nb_actions>2</entry_nb_actions> - <entry_sum_visit_length>0</entry_sum_visit_length> - <entry_bounce_count>2</entry_bounce_count> - <exit_nb_visits>2</exit_nb_visits> - <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> - <sum_daily_entry_nb_uniq_visitors>2</sum_daily_entry_nb_uniq_visitors> - <sum_daily_exit_nb_uniq_visitors>2</sum_daily_exit_nb_uniq_visitors> - <avg_time_on_page>0</avg_time_on_page> - <bounce_rate>100%</bounce_rate> - <exit_rate>100%</exit_rate> - <avg_time_generation>0.145</avg_time_generation> - </row> - <row> - <label>301</label> - <nb_visits>1</nb_visits> - <nb_hits>1</nb_hits> <sum_time_spent>180</sum_time_spent> <nb_hits_with_time_generation>0</nb_hits_with_time_generation> <min_time_generation /> @@ -54,9 +33,10 @@ <entry_nb_actions>2</entry_nb_actions> <entry_sum_visit_length>182</entry_sum_visit_length> <entry_bounce_count>0</entry_bounce_count> - <avg_time_on_page>180</avg_time_on_page> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>90</avg_time_on_page> <bounce_rate>0%</bounce_rate> - <exit_rate>0%</exit_rate> + <exit_rate>50%</exit_rate> <avg_time_generation>0</avg_time_generation> <subtable> <row> @@ -78,27 +58,51 @@ </row> <row> <label>404</label> - <nb_visits>1</nb_visits> - <nb_hits>1</nb_hits> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> <sum_time_spent>0</sum_time_spent> - <nb_hits_with_time_generation>0</nb_hits_with_time_generation> - <min_time_generation /> - <max_time_generation>0</max_time_generation> - <entry_nb_visits>1</entry_nb_visits> - <entry_nb_actions>1</entry_nb_actions> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>2</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> - <entry_bounce_count>1</entry_bounce_count> - <exit_nb_visits>1</exit_nb_visits> + <entry_bounce_count>2</entry_bounce_count> + <exit_nb_visits>2</exit_nb_visits> <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> - <avg_time_generation>0</avg_time_generation> + <avg_time_generation>0.359</avg_time_generation> <subtable> + <row> + <label> URL = http://piwik.net/hello/world/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + </row> <row> <label> URL = http://piwik.net/this/is/not/the/page/i/am/looking/for/</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -110,6 +114,65 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + </row> + </subtable> + </row> + <row> + <label> Log Analytics - Analytics - Piwik</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.145</min_time_generation> + <max_time_generation>0.145</max_time_generation> + <entry_nb_visits>2</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>2</entry_bounce_count> + <exit_nb_visits>2</exit_nb_visits> + <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>2</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>2</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.145</avg_time_generation> + </row> + <row> + <label>302</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>240</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>240</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label> URL = http://piwik.net/Citrix/XenApp/Wan/auth/login.jsp</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>240</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> </row> </subtable> </row> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageUrls_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageUrls_month.xml index 8845a80655eae7ba734c6e965f1cca9f4c164cc9..6ae99318f04ceb69b903a9f26ed3bbdb661418b1 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageUrls_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageUrls_month.xml @@ -5,6 +5,9 @@ <nb_visits>5</nb_visits> <nb_hits>5</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>5</entry_nb_visits> <entry_nb_actions>5</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -13,6 +16,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>category</label> @@ -171,6 +175,9 @@ <nb_visits>4</nb_visits> <nb_hits>4</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>4</entry_nb_visits> <entry_nb_actions>4</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -179,6 +186,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>manage-websites</label> @@ -273,6 +281,9 @@ <nb_visits>4</nb_visits> <nb_hits>4</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>4</entry_nb_visits> <entry_nb_actions>4</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -281,6 +292,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> @@ -375,6 +387,9 @@ <nb_visits>2</nb_visits> <nb_hits>2</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>2</entry_nb_visits> <entry_nb_actions>2</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -386,13 +401,245 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://piwik.net/</url> </row> + <row> + <label>Citrix</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label>XenApp</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>Wan</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>auth</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>/login.jsp</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <avg_time_on_page>240</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>0%</exit_rate> + <url>http://piwik.net/Citrix/XenApp/Wan/auth/login.jsp</url> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + <row> + <label>hello</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>2</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>2</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>2</entry_bounce_count> + <exit_nb_visits>2</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>from</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>another</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>world</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <url>http://piwik.net/hello/from/another/world/6,681965</url> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + <row> + <label>world</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <url>http://piwik.net/hello/world/6,681965</url> + </row> + </subtable> + </row> + </subtable> + </row> <row> <label>/index.htm</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -404,6 +651,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://example.org/index.htm</url> </row> <row> @@ -411,6 +659,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>180</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>2</entry_nb_actions> <entry_sum_visit_length>182</entry_sum_visit_length> @@ -420,6 +671,7 @@ <avg_time_on_page>180</avg_time_on_page> <bounce_rate>0%</bounce_rate> <exit_rate>0%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://piwik.net/moved-permanently</url> </row> <row> @@ -427,6 +679,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -438,6 +693,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://forum.piwik.org/register.php?0,approve=9a94a02145599</url> </row> <row> @@ -445,6 +701,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -456,6 +715,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://piwik.net/to-an-error</url> </row> <row> @@ -463,6 +723,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -471,6 +734,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>counter</label> @@ -513,6 +777,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -521,6 +788,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> @@ -547,6 +815,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -555,6 +826,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> @@ -581,6 +853,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -589,6 +864,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> @@ -610,11 +886,53 @@ </row> </subtable> </row> + <row> + <label>Products</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.109</min_time_generation> + <max_time_generation>0.109</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>2</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>0%</exit_rate> + <avg_time_generation>0.109</avg_time_generation> + <subtable> + <row> + <label>/theProduct</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.109</min_time_generation> + <max_time_generation>0.109</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>2</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>0%</exit_rate> + <avg_time_generation>0.109</avg_time_generation> + <url>http://piwik.net/Products/theProduct</url> + </row> + </subtable> + </row> <row> <label>this</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -623,6 +941,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>is</label> @@ -777,6 +1096,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -785,6 +1107,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageUrls_range.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageUrls_range.xml index b7cbdc125bd73a263cb736382a5f155057cccf6a..cce26eeec72765adb4285292177ce0cf99b691c8 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageUrls_range.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getEntryPageUrls_range.xml @@ -646,6 +646,90 @@ </row> </subtable> </row> + <row> + <label>Citrix</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label>XenApp</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>Wan</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>auth</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>/login.jsp</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <avg_time_on_page>240</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>0%</exit_rate> + <url>http://piwik.net/Citrix/XenApp/Wan/auth/login.jsp</url> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> <row> <label>download</label> <nb_visits>2</nb_visits> @@ -700,6 +784,150 @@ </row> </subtable> </row> + <row> + <label>hello</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>2</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>2</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>2</entry_bounce_count> + <exit_nb_visits>2</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>from</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>another</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>world</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <url>http://piwik.net/hello/from/another/world/6,681965</url> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + <row> + <label>world</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <url>http://piwik.net/hello/world/6,681965</url> + </row> + </subtable> + </row> + </subtable> + </row> <row> <label>log-analytics</label> <nb_visits>2</nb_visits> @@ -999,6 +1227,45 @@ </row> </subtable> </row> + <row> + <label>Products</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.109</min_time_generation> + <max_time_generation>0.109</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>2</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>0%</exit_rate> + <avg_time_generation>0.109</avg_time_generation> + <subtable> + <row> + <label>/theProduct</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.109</min_time_generation> + <max_time_generation>0.109</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>2</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>0%</exit_rate> + <avg_time_generation>0.109</avg_time_generation> + <url>http://piwik.net/Products/theProduct</url> + </row> + </subtable> + </row> <row> <label>this</label> <nb_visits>1</nb_visits> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageTitles_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageTitles_month.xml index f1b90a5e1d6590f0f2bdb0bbbd6434a70bdfa868..8789133564dac4a61c9da2e0bc5cd7cba23643fb 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageTitles_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageTitles_month.xml @@ -1,17 +1,25 @@ <?xml version="1.0" encoding="utf-8" ?> <result> <row> - <label>307</label> - <nb_visits>1</nb_visits> - <nb_hits>1</nb_hits> - <sum_time_spent>0</sum_time_spent> + <label>301</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>180</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>182</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> <exit_nb_visits>1</exit_nb_visits> - <avg_time_on_page>0</avg_time_on_page> + <avg_time_on_page>90</avg_time_on_page> <bounce_rate>0%</bounce_rate> - <exit_rate>100%</exit_rate> + <exit_rate>50%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> - <label> URL = http://piwik.net/temp-redirect</label> + <label> URL = http://piwik.net/Topic/hw43061</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> @@ -26,23 +34,51 @@ </row> <row> <label>404</label> - <nb_visits>1</nb_visits> - <nb_hits>1</nb_hits> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> <sum_time_spent>0</sum_time_spent> - <entry_nb_visits>1</entry_nb_visits> - <entry_nb_actions>1</entry_nb_actions> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>2</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> - <entry_bounce_count>1</entry_bounce_count> - <exit_nb_visits>1</exit_nb_visits> + <entry_bounce_count>2</entry_bounce_count> + <exit_nb_visits>2</exit_nb_visits> <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> <subtable> + <row> + <label> URL = http://piwik.net/hello/world/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + </row> <row> <label> URL = http://piwik.net/this/is/not/the/page/i/am/looking/for/</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -54,6 +90,72 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + </row> + </subtable> + </row> + <row> + <label>302</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>240</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>240</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label> URL = http://piwik.net/Citrix/XenApp/Wan/auth/login.jsp</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>240</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + </row> + </subtable> + </row> + <row> + <label>307</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label> URL = http://piwik.net/temp-redirect</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> </row> </subtable> </row> @@ -62,6 +164,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -70,6 +175,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label> URL = http://piwik.net/to-an-error</label> @@ -95,6 +201,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -106,12 +215,16 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> </row> <row> <label> Piwik Forums</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -123,5 +236,6 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageTitles_range.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageTitles_range.xml index 867e27cd0da22e0b1448b491aeb399f0a1eff8e4..401a36b8355c22c3f8d8694510879c909c550387 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageTitles_range.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageTitles_range.xml @@ -21,6 +21,100 @@ <exit_rate>50%</exit_rate> <avg_time_generation>0.177</avg_time_generation> </row> + <row> + <label>301</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>180</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>182</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>90</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label> URL = http://piwik.net/Topic/hw43061</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + </row> + </subtable> + </row> + <row> + <label>404</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>2</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>2</entry_bounce_count> + <exit_nb_visits>2</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label> URL = http://piwik.net/hello/world/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + </row> + <row> + <label> URL = http://piwik.net/this/is/not/the/page/i/am/looking/for/</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + </row> + </subtable> + </row> <row> <label> Log Analytics - Analytics - Piwik</label> <nb_visits>2</nb_visits> @@ -43,66 +137,66 @@ <avg_time_generation>0.145</avg_time_generation> </row> <row> - <label>307</label> + <label>302</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> - <sum_time_spent>0</sum_time_spent> + <sum_time_spent>240</sum_time_spent> <nb_hits_with_time_generation>0</nb_hits_with_time_generation> <min_time_generation /> <max_time_generation>0</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> <exit_nb_visits>1</exit_nb_visits> - <avg_time_on_page>0</avg_time_on_page> + <avg_time_on_page>240</avg_time_on_page> <bounce_rate>0%</bounce_rate> <exit_rate>100%</exit_rate> <avg_time_generation>0</avg_time_generation> <subtable> <row> - <label> URL = http://piwik.net/temp-redirect</label> + <label> URL = http://piwik.net/Citrix/XenApp/Wan/auth/login.jsp</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> - <sum_time_spent>0</sum_time_spent> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> <exit_nb_visits>1</exit_nb_visits> <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> - <avg_time_on_page>0</avg_time_on_page> + <avg_time_on_page>240</avg_time_on_page> <bounce_rate>0%</bounce_rate> <exit_rate>100%</exit_rate> </row> </subtable> </row> <row> - <label>404</label> + <label>307</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> <nb_hits_with_time_generation>0</nb_hits_with_time_generation> <min_time_generation /> <max_time_generation>0</max_time_generation> - <entry_nb_visits>1</entry_nb_visits> - <entry_nb_actions>1</entry_nb_actions> - <entry_sum_visit_length>0</entry_sum_visit_length> - <entry_bounce_count>1</entry_bounce_count> <exit_nb_visits>1</exit_nb_visits> <avg_time_on_page>0</avg_time_on_page> - <bounce_rate>100%</bounce_rate> + <bounce_rate>0%</bounce_rate> <exit_rate>100%</exit_rate> <avg_time_generation>0</avg_time_generation> <subtable> <row> - <label> URL = http://piwik.net/this/is/not/the/page/i/am/looking/for/</label> + <label> URL = http://piwik.net/temp-redirect</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> - <entry_nb_visits>1</entry_nb_visits> - <entry_nb_actions>1</entry_nb_actions> - <entry_sum_visit_length>0</entry_sum_visit_length> - <entry_bounce_count>1</entry_bounce_count> <exit_nb_visits>1</exit_nb_visits> <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> - <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> <avg_time_on_page>0</avg_time_on_page> - <bounce_rate>100%</bounce_rate> + <bounce_rate>0%</bounce_rate> <exit_rate>100%</exit_rate> </row> </subtable> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageUrls_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageUrls_month.xml index 28acca124218020bd3796fd88b46ec2e1538c067..f3ebc92964dd361358d43a0be56aa6d954ec2ded 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageUrls_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageUrls_month.xml @@ -5,6 +5,9 @@ <nb_visits>5</nb_visits> <nb_hits>5</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>5</entry_nb_visits> <entry_nb_actions>5</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -13,6 +16,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>category</label> @@ -171,6 +175,9 @@ <nb_visits>4</nb_visits> <nb_hits>4</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>4</entry_nb_visits> <entry_nb_actions>4</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -179,6 +186,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>manage-websites</label> @@ -273,6 +281,9 @@ <nb_visits>4</nb_visits> <nb_hits>4</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>4</entry_nb_visits> <entry_nb_actions>4</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -281,6 +292,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> @@ -375,6 +387,9 @@ <nb_visits>2</nb_visits> <nb_hits>2</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>2</entry_nb_visits> <entry_nb_actions>2</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -386,13 +401,242 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://piwik.net/</url> </row> + <row> + <label>Citrix</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label>XenApp</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>Wan</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>auth</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>/silentDetection.jsp</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <url>http://piwik.net/Citrix/XenApp/Wan/auth/silentDetection.jsp</url> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + <row> + <label>hello</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>2</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>2</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>2</entry_bounce_count> + <exit_nb_visits>2</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>from</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>another</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>world</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <url>http://piwik.net/hello/from/another/world/6,681965</url> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + <row> + <label>world</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <url>http://piwik.net/hello/world/6,681965</url> + </row> + </subtable> + </row> + </subtable> + </row> <row> <label>/index.htm</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -404,6 +648,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://example.org/index.htm</url> </row> <row> @@ -411,6 +656,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -422,6 +670,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://forum.piwik.org/register.php?0,approve=9a94a02145599</url> </row> <row> @@ -429,12 +678,16 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <exit_nb_visits>1</exit_nb_visits> <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> <avg_time_on_page>0</avg_time_on_page> <bounce_rate>0%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://piwik.net/temp-redirect</url> </row> <row> @@ -442,6 +695,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -453,6 +709,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://piwik.net/to-an-error</url> </row> <row> @@ -460,6 +717,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -468,6 +728,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>counter</label> @@ -510,6 +771,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -518,6 +782,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> @@ -544,6 +809,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -552,6 +820,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> @@ -578,6 +847,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -586,6 +858,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> @@ -612,6 +885,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -620,6 +896,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>is</label> @@ -769,11 +1046,43 @@ </row> </subtable> </row> + <row> + <label>Topic</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label>/hw43061</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <url>http://piwik.net/Topic/hw43061</url> + </row> + </subtable> + </row> <row> <label>translations</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -782,6 +1091,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageUrls_range.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageUrls_range.xml index 7721a10da115ff80a5f193526eb82773b2f7465a..63c3d594e0641f8630e1894f7f298828fb5dedbb 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageUrls_range.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getExitPageUrls_range.xml @@ -646,6 +646,87 @@ </row> </subtable> </row> + <row> + <label>Citrix</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label>XenApp</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>Wan</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>auth</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>/silentDetection.jsp</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <url>http://piwik.net/Citrix/XenApp/Wan/auth/silentDetection.jsp</url> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> <row> <label>download</label> <nb_visits>2</nb_visits> @@ -700,6 +781,150 @@ </row> </subtable> </row> + <row> + <label>hello</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>2</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>2</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>2</entry_bounce_count> + <exit_nb_visits>2</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>from</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>another</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>world</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <url>http://piwik.net/hello/from/another/world/6,681965</url> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + <row> + <label>world</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <url>http://piwik.net/hello/world/6,681965</url> + </row> + </subtable> + </row> + </subtable> + </row> <row> <label>log-analytics</label> <nb_visits>2</nb_visits> @@ -1156,6 +1381,35 @@ </row> </subtable> </row> + <row> + <label>Topic</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label>/hw43061</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <url>http://piwik.net/Topic/hw43061</url> + </row> + </subtable> + </row> <row> <label>translations</label> <nb_visits>1</nb_visits> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageTitles_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageTitles_month.xml index 143229b5e7a2f8b22b4cc36c80e3f9014cd136da..7ecefada5550ab2cbd281d0f8738766448fbc7e7 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageTitles_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageTitles_month.xml @@ -2,26 +2,35 @@ <result> <row> <label>Page Name not defined</label> - <nb_visits>20</nb_visits> - <nb_hits>20</nb_hits> + <nb_visits>23</nb_visits> + <nb_hits>23</nb_hits> <sum_time_spent>0</sum_time_spent> - <sum_daily_nb_uniq_visitors>20</sum_daily_nb_uniq_visitors> + <nb_hits_with_time_generation>2</nb_hits_with_time_generation> + <min_time_generation>0.109</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <sum_daily_nb_uniq_visitors>23</sum_daily_nb_uniq_visitors> <avg_time_on_page>0</avg_time_on_page> <bounce_rate>0%</bounce_rate> <exit_rate>0%</exit_rate> + <avg_time_generation>0.234</avg_time_generation> </row> <row> <label>301</label> - <nb_visits>1</nb_visits> - <nb_hits>1</nb_hits> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> <sum_time_spent>180</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>2</entry_nb_actions> <entry_sum_visit_length>182</entry_sum_visit_length> <entry_bounce_count>0</entry_bounce_count> - <avg_time_on_page>180</avg_time_on_page> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>90</avg_time_on_page> <bounce_rate>0%</bounce_rate> - <exit_rate>0%</exit_rate> + <exit_rate>50%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label> URL = http://piwik.net/moved-permanently</label> @@ -38,20 +47,8 @@ <bounce_rate>0%</bounce_rate> <exit_rate>0%</exit_rate> </row> - </subtable> - </row> - <row> - <label>307</label> - <nb_visits>1</nb_visits> - <nb_hits>1</nb_hits> - <sum_time_spent>0</sum_time_spent> - <exit_nb_visits>1</exit_nb_visits> - <avg_time_on_page>0</avg_time_on_page> - <bounce_rate>0%</bounce_rate> - <exit_rate>100%</exit_rate> - <subtable> <row> - <label> URL = http://piwik.net/temp-redirect</label> + <label> URL = http://piwik.net/Topic/hw43061</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> @@ -66,23 +63,51 @@ </row> <row> <label>404</label> - <nb_visits>1</nb_visits> - <nb_hits>1</nb_hits> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> <sum_time_spent>0</sum_time_spent> - <entry_nb_visits>1</entry_nb_visits> - <entry_nb_actions>1</entry_nb_actions> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>2</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> - <entry_bounce_count>1</entry_bounce_count> - <exit_nb_visits>1</exit_nb_visits> + <entry_bounce_count>2</entry_bounce_count> + <exit_nb_visits>2</exit_nb_visits> <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> <subtable> + <row> + <label> URL = http://piwik.net/hello/world/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + </row> <row> <label> URL = http://piwik.net/this/is/not/the/page/i/am/looking/for/</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -94,6 +119,72 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + </row> + </subtable> + </row> + <row> + <label>302</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>240</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>240</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label> URL = http://piwik.net/Citrix/XenApp/Wan/auth/login.jsp</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>240</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + </row> + </subtable> + </row> + <row> + <label>307</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label> URL = http://piwik.net/temp-redirect</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> </row> </subtable> </row> @@ -102,6 +193,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -110,6 +204,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label> URL = http://piwik.net/to-an-error</label> @@ -135,6 +230,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -146,12 +244,16 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> </row> <row> <label> Piwik Forums</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -163,5 +265,6 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageTitles_range.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageTitles_range.xml index 509723308ff9503b9c64812f0aebd946f243bf95..690c2e28a00a2e64ec2d1a17f3773afdf387daab 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageTitles_range.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageTitles_range.xml @@ -2,17 +2,17 @@ <result> <row> <label>Page Name not defined</label> - <nb_visits>21</nb_visits> - <nb_hits>30</nb_hits> + <nb_visits>24</nb_visits> + <nb_hits>33</nb_hits> <sum_time_spent>0</sum_time_spent> - <nb_hits_with_time_generation>10</nb_hits_with_time_generation> + <nb_hits_with_time_generation>12</nb_hits_with_time_generation> <min_time_generation>0.023</min_time_generation> <max_time_generation>1.324</max_time_generation> - <sum_daily_nb_uniq_visitors>21</sum_daily_nb_uniq_visitors> + <sum_daily_nb_uniq_visitors>24</sum_daily_nb_uniq_visitors> <avg_time_on_page>0</avg_time_on_page> <bounce_rate>0%</bounce_rate> <exit_rate>0%</exit_rate> - <avg_time_generation>0.387</avg_time_generation> + <avg_time_generation>0.361</avg_time_generation> </row> <row> <label> Liberate Web Analytics - Analytics - Piwik</label> @@ -36,30 +36,9 @@ <avg_time_generation>0.177</avg_time_generation> </row> <row> - <label> Log Analytics - Analytics - Piwik</label> + <label>301</label> <nb_visits>2</nb_visits> <nb_hits>2</nb_hits> - <sum_time_spent>0</sum_time_spent> - <nb_hits_with_time_generation>1</nb_hits_with_time_generation> - <min_time_generation>0.145</min_time_generation> - <max_time_generation>0.145</max_time_generation> - <entry_nb_visits>2</entry_nb_visits> - <entry_nb_actions>2</entry_nb_actions> - <entry_sum_visit_length>0</entry_sum_visit_length> - <entry_bounce_count>2</entry_bounce_count> - <exit_nb_visits>2</exit_nb_visits> - <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> - <sum_daily_entry_nb_uniq_visitors>2</sum_daily_entry_nb_uniq_visitors> - <sum_daily_exit_nb_uniq_visitors>2</sum_daily_exit_nb_uniq_visitors> - <avg_time_on_page>0</avg_time_on_page> - <bounce_rate>100%</bounce_rate> - <exit_rate>100%</exit_rate> - <avg_time_generation>0.145</avg_time_generation> - </row> - <row> - <label>301</label> - <nb_visits>1</nb_visits> - <nb_hits>1</nb_hits> <sum_time_spent>180</sum_time_spent> <nb_hits_with_time_generation>0</nb_hits_with_time_generation> <min_time_generation /> @@ -68,9 +47,10 @@ <entry_nb_actions>2</entry_nb_actions> <entry_sum_visit_length>182</entry_sum_visit_length> <entry_bounce_count>0</entry_bounce_count> - <avg_time_on_page>180</avg_time_on_page> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>90</avg_time_on_page> <bounce_rate>0%</bounce_rate> - <exit_rate>0%</exit_rate> + <exit_rate>50%</exit_rate> <avg_time_generation>0</avg_time_generation> <subtable> <row> @@ -88,69 +68,164 @@ <bounce_rate>0%</bounce_rate> <exit_rate>0%</exit_rate> </row> + <row> + <label> URL = http://piwik.net/Topic/hw43061</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + </row> </subtable> </row> <row> - <label>307</label> + <label>404</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>2</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>2</entry_bounce_count> + <exit_nb_visits>2</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label> URL = http://piwik.net/hello/world/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + </row> + <row> + <label> URL = http://piwik.net/this/is/not/the/page/i/am/looking/for/</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + </row> + </subtable> + </row> + <row> + <label> Log Analytics - Analytics - Piwik</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.145</min_time_generation> + <max_time_generation>0.145</max_time_generation> + <entry_nb_visits>2</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>2</entry_bounce_count> + <exit_nb_visits>2</exit_nb_visits> + <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>2</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>2</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.145</avg_time_generation> + </row> + <row> + <label>302</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> - <sum_time_spent>0</sum_time_spent> + <sum_time_spent>240</sum_time_spent> <nb_hits_with_time_generation>0</nb_hits_with_time_generation> <min_time_generation /> <max_time_generation>0</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> <exit_nb_visits>1</exit_nb_visits> - <avg_time_on_page>0</avg_time_on_page> + <avg_time_on_page>240</avg_time_on_page> <bounce_rate>0%</bounce_rate> <exit_rate>100%</exit_rate> <avg_time_generation>0</avg_time_generation> <subtable> <row> - <label> URL = http://piwik.net/temp-redirect</label> + <label> URL = http://piwik.net/Citrix/XenApp/Wan/auth/login.jsp</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> - <sum_time_spent>0</sum_time_spent> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> <exit_nb_visits>1</exit_nb_visits> <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> - <avg_time_on_page>0</avg_time_on_page> + <avg_time_on_page>240</avg_time_on_page> <bounce_rate>0%</bounce_rate> <exit_rate>100%</exit_rate> </row> </subtable> </row> <row> - <label>404</label> + <label>307</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> <nb_hits_with_time_generation>0</nb_hits_with_time_generation> <min_time_generation /> <max_time_generation>0</max_time_generation> - <entry_nb_visits>1</entry_nb_visits> - <entry_nb_actions>1</entry_nb_actions> - <entry_sum_visit_length>0</entry_sum_visit_length> - <entry_bounce_count>1</entry_bounce_count> <exit_nb_visits>1</exit_nb_visits> <avg_time_on_page>0</avg_time_on_page> - <bounce_rate>100%</bounce_rate> + <bounce_rate>0%</bounce_rate> <exit_rate>100%</exit_rate> <avg_time_generation>0</avg_time_generation> <subtable> <row> - <label> URL = http://piwik.net/this/is/not/the/page/i/am/looking/for/</label> + <label> URL = http://piwik.net/temp-redirect</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> - <entry_nb_visits>1</entry_nb_visits> - <entry_nb_actions>1</entry_nb_actions> - <entry_sum_visit_length>0</entry_sum_visit_length> - <entry_bounce_count>1</entry_bounce_count> <exit_nb_visits>1</exit_nb_visits> <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> - <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> <avg_time_on_page>0</avg_time_on_page> - <bounce_rate>100%</bounce_rate> + <bounce_rate>0%</bounce_rate> <exit_rate>100%</exit_rate> </row> </subtable> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageUrls_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageUrls_month.xml index c3f7304c25412f79d905ea242569ab0160910c03..c7ae80a4540691bb43f674e84321d35909b00190 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageUrls_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageUrls_month.xml @@ -5,6 +5,9 @@ <nb_visits>5</nb_visits> <nb_hits>5</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>5</entry_nb_visits> <entry_nb_actions>5</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -13,6 +16,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>category</label> @@ -171,6 +175,9 @@ <nb_visits>4</nb_visits> <nb_hits>4</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>4</entry_nb_visits> <entry_nb_actions>4</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -179,6 +186,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>manage-websites</label> @@ -273,6 +281,9 @@ <nb_visits>4</nb_visits> <nb_hits>4</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>4</entry_nb_visits> <entry_nb_actions>4</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -281,6 +292,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> @@ -375,6 +387,9 @@ <nb_visits>2</nb_visits> <nb_hits>2</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>2</entry_nb_visits> <entry_nb_actions>2</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -386,13 +401,258 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://piwik.net/</url> </row> + <row> + <label>Citrix</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label>XenApp</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>Wan</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>auth</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>/login.jsp</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <avg_time_on_page>240</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>0%</exit_rate> + <url>http://piwik.net/Citrix/XenApp/Wan/auth/login.jsp</url> + </row> + <row> + <label>/silentDetection.jsp</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <url>http://piwik.net/Citrix/XenApp/Wan/auth/silentDetection.jsp</url> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + <row> + <label>hello</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>2</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>2</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>2</entry_bounce_count> + <exit_nb_visits>2</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>from</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>another</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>world</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <url>http://piwik.net/hello/from/another/world/6,681965</url> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + <row> + <label>world</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <url>http://piwik.net/hello/world/6,681965</url> + </row> + </subtable> + </row> + </subtable> + </row> <row> <label>/index.htm</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -404,6 +664,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://example.org/index.htm</url> </row> <row> @@ -411,6 +672,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>180</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>2</entry_nb_actions> <entry_sum_visit_length>182</entry_sum_visit_length> @@ -420,6 +684,7 @@ <avg_time_on_page>180</avg_time_on_page> <bounce_rate>0%</bounce_rate> <exit_rate>0%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://piwik.net/moved-permanently</url> </row> <row> @@ -427,6 +692,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -438,6 +706,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://forum.piwik.org/register.php?0,approve=9a94a02145599</url> </row> <row> @@ -445,12 +714,16 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <exit_nb_visits>1</exit_nb_visits> <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> <avg_time_on_page>0</avg_time_on_page> <bounce_rate>0%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://piwik.net/temp-redirect</url> </row> <row> @@ -458,6 +731,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation /> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -469,6 +745,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <url>http://piwik.net/to-an-error</url> </row> <row> @@ -476,6 +753,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -484,6 +764,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>counter</label> @@ -526,6 +807,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -534,6 +818,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> @@ -560,6 +845,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -568,6 +856,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> @@ -594,6 +883,9 @@ <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -602,6 +894,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> @@ -623,11 +916,53 @@ </row> </subtable> </row> + <row> + <label>Products</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.109</min_time_generation> + <max_time_generation>0.109</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>2</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>0%</exit_rate> + <avg_time_generation>0.109</avg_time_generation> + <subtable> + <row> + <label>/theProduct</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.109</min_time_generation> + <max_time_generation>0.109</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>2</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>0%</exit_rate> + <avg_time_generation>0.109</avg_time_generation> + <url>http://piwik.net/Products/theProduct</url> + </row> + </subtable> + </row> <row> <label>this</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -636,6 +971,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>is</label> @@ -785,11 +1121,43 @@ </row> </subtable> </row> + <row> + <label>Topic</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label>/hw43061</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <url>http://piwik.net/Topic/hw43061</url> + </row> + </subtable> + </row> <row> <label>translations</label> <nb_visits>1</nb_visits> <nb_hits>1</nb_hits> <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> <entry_nb_visits>1</entry_nb_visits> <entry_nb_actions>1</entry_nb_actions> <entry_sum_visit_length>0</entry_sum_visit_length> @@ -798,6 +1166,7 @@ <avg_time_on_page>0</avg_time_on_page> <bounce_rate>100%</bounce_rate> <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> <subtable> <row> <label>/index</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageUrls_range.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageUrls_range.xml index aaabfb8fc32ec1779c967c5b4fcc4bbce6cd0604..3434158d1fd0d782ac88d8adb350830f8f29512f 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageUrls_range.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.getPageUrls_range.xml @@ -646,6 +646,103 @@ </row> </subtable> </row> + <row> + <label>Citrix</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label>XenApp</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>Wan</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>auth</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>120</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>50%</exit_rate> + <subtable> + <row> + <label>/login.jsp</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>240</sum_time_spent> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>242</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <avg_time_on_page>240</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>0%</exit_rate> + <url>http://piwik.net/Citrix/XenApp/Wan/auth/login.jsp</url> + </row> + <row> + <label>/silentDetection.jsp</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <url>http://piwik.net/Citrix/XenApp/Wan/auth/silentDetection.jsp</url> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> <row> <label>download</label> <nb_visits>2</nb_visits> @@ -719,6 +816,150 @@ </row> </subtable> </row> + <row> + <label>hello</label> + <nb_visits>2</nb_visits> + <nb_hits>2</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>2</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>2</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>2</entry_bounce_count> + <exit_nb_visits>2</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>from</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>another</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>world</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>1</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <url>http://piwik.net/hello/from/another/world/6,681965</url> + </row> + </subtable> + </row> + </subtable> + </row> + </subtable> + </row> + <row> + <label>world</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <subtable> + <row> + <label>/6,681965</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.359</min_time_generation> + <max_time_generation>0.359</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>1</entry_nb_actions> + <entry_sum_visit_length>0</entry_sum_visit_length> + <entry_bounce_count>1</entry_bounce_count> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>100%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0.359</avg_time_generation> + <url>http://piwik.net/hello/world/6,681965</url> + </row> + </subtable> + </row> + </subtable> + </row> <row> <label>log-analytics</label> <nb_visits>2</nb_visits> @@ -1064,6 +1305,45 @@ </row> </subtable> </row> + <row> + <label>Products</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.109</min_time_generation> + <max_time_generation>0.109</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>2</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>0%</exit_rate> + <avg_time_generation>0.109</avg_time_generation> + <subtable> + <row> + <label>/theProduct</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>1</nb_hits_with_time_generation> + <min_time_generation>0.109</min_time_generation> + <max_time_generation>0.109</max_time_generation> + <entry_nb_visits>1</entry_nb_visits> + <entry_nb_actions>2</entry_nb_actions> + <entry_sum_visit_length>2</entry_sum_visit_length> + <entry_bounce_count>0</entry_bounce_count> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_entry_nb_uniq_visitors>1</sum_daily_entry_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>0%</exit_rate> + <avg_time_generation>0.109</avg_time_generation> + <url>http://piwik.net/Products/theProduct</url> + </row> + </subtable> + </row> <row> <label>this</label> <nb_visits>1</nb_visits> @@ -1230,6 +1510,35 @@ </row> </subtable> </row> + <row> + <label>Topic</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <nb_hits_with_time_generation>0</nb_hits_with_time_generation> + <min_time_generation /> + <max_time_generation>0</max_time_generation> + <exit_nb_visits>1</exit_nb_visits> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <avg_time_generation>0</avg_time_generation> + <subtable> + <row> + <label>/hw43061</label> + <nb_visits>1</nb_visits> + <nb_hits>1</nb_hits> + <sum_time_spent>0</sum_time_spent> + <exit_nb_visits>1</exit_nb_visits> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_exit_nb_uniq_visitors>1</sum_daily_exit_nb_uniq_visitors> + <avg_time_on_page>0</avg_time_on_page> + <bounce_rate>0%</bounce_rate> + <exit_rate>100%</exit_rate> + <url>http://piwik.net/Topic/hw43061</url> + </row> + </subtable> + </row> <row> <label>translations</label> <nb_visits>1</nb_visits> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.get_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.get_month.xml index c8388c1f4d1893bfd072c94a5324dc2f0acb9d75..18b7f289f647764258d1d8e463343494526997b1 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.get_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.get_month.xml @@ -1,11 +1,12 @@ <?xml version="1.0" encoding="utf-8" ?> <result> - <nb_pageviews>26</nb_pageviews> - <nb_uniq_pageviews>26</nb_uniq_pageviews> + <nb_pageviews>32</nb_pageviews> + <nb_uniq_pageviews>32</nb_uniq_pageviews> <nb_downloads>4</nb_downloads> <nb_uniq_downloads>4</nb_uniq_downloads> <nb_outlinks>0</nb_outlinks> <nb_uniq_outlinks>0</nb_uniq_outlinks> <nb_searches>0</nb_searches> <nb_keywords>0</nb_keywords> + <avg_time_generation>0.277</avg_time_generation> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.get_range.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.get_range.xml index a87ec05ee33fddcf3f53f5dcca94b40548158e74..0fc359540dcc52c551e1e58ea755b48674753535 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Actions.get_range.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Actions.get_range.xml @@ -1,12 +1,12 @@ <?xml version="1.0" encoding="utf-8" ?> <result> - <nb_pageviews>50</nb_pageviews> - <nb_uniq_pageviews>44</nb_uniq_pageviews> + <nb_pageviews>56</nb_pageviews> + <nb_uniq_pageviews>50</nb_uniq_pageviews> <nb_downloads>5</nb_downloads> <nb_uniq_downloads>5</nb_uniq_downloads> <nb_outlinks>1</nb_outlinks> <nb_uniq_outlinks>1</nb_uniq_outlinks> <nb_searches>0</nb_searches> <nb_keywords>0</nb_keywords> - <avg_time_generation>0.301</avg_time_generation> + <avg_time_generation>0.298</avg_time_generation> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__CustomVariables.getCustomVariables_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__CustomVariables.getCustomVariables_month.xml index 6f8a9a4c9878632d0e3ec990cb33e0acc2e59681..491523012e9af9550d48e9efb8d8335c68b4555a 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__CustomVariables.getCustomVariables_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__CustomVariables.getCustomVariables_month.xml @@ -2,28 +2,34 @@ <result> <row> <label>HTTP-code</label> - <nb_actions>29</nb_actions> + <nb_actions>35</nb_actions> <subtable> <row> <label>200</label> - <nb_visits>23</nb_visits> - <nb_actions>25</nb_actions> - <sum_daily_nb_uniq_visitors>23</sum_daily_nb_uniq_visitors> + <nb_visits>26</nb_visits> + <nb_actions>28</nb_actions> + <sum_daily_nb_uniq_visitors>26</sum_daily_nb_uniq_visitors> </row> <row> <label>301</label> - <nb_visits>1</nb_visits> - <nb_actions>1</nb_actions> - <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <nb_visits>2</nb_visits> + <nb_actions>2</nb_actions> + <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> </row> <row> - <label>307</label> + <label>404</label> + <nb_visits>2</nb_visits> + <nb_actions>2</nb_actions> + <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> + </row> + <row> + <label>302</label> <nb_visits>1</nb_visits> <nb_actions>1</nb_actions> <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> </row> <row> - <label>404</label> + <label>307</label> <nb_visits>1</nb_visits> <nb_actions>1</nb_actions> <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrand_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrand_month.xml index 38d80d2b64b3d60ebeb8f221d170f56127f69260..34fadbbd5726143dcfac8d29dc2d71d1ca126762 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrand_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrand_month.xml @@ -2,14 +2,14 @@ <result> <row> <label>Unknown</label> - <nb_visits>25</nb_visits> - <nb_actions>28</nb_actions> + <nb_visits>28</nb_visits> + <nb_actions>32</nb_actions> <max_actions>3</max_actions> - <sum_visit_length>305</sum_visit_length> - <bounce_count>23</bounce_count> - <nb_visits_converted>23</nb_visits_converted> - <sum_daily_nb_uniq_visitors>25</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <sum_visit_length>548</sum_visit_length> + <bounce_count>25</bounce_count> + <nb_visits_converted>26</nb_visits_converted> + <sum_daily_nb_uniq_visitors>27</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/brand/Unknown.ico</logo> </row> <row> @@ -24,4 +24,16 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/brand/HTC.ico</logo> </row> + <row> + <label>Samsung</label> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>2</sum_visit_length> + <bounce_count>0</bounce_count> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/brand/Samsung.ico</logo> + </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserEngines_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserEngines_month.xml index bb6679c9714cf98fd8cc2733ed5feb6ba2c3fb05..147f52ac7c9972ecb09ff697e2845f75bd60f8c9 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserEngines_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserEngines_month.xml @@ -13,15 +13,26 @@ </row> <row> <label>Trident (IE)</label> - <nb_visits>6</nb_visits> - <nb_actions>6</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> + <nb_visits>7</nb_visits> + <nb_actions>8</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> <bounce_count>6</bounce_count> - <nb_visits_converted>6</nb_visits_converted> - <sum_daily_nb_uniq_visitors>6</sum_daily_nb_uniq_visitors> + <nb_visits_converted>7</nb_visits_converted> + <sum_daily_nb_uniq_visitors>7</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> </row> + <row> + <label>Blink (Chrome, Opera)</label> + <nb_visits>3</nb_visits> + <nb_actions>4</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>3</sum_visit_length> + <bounce_count>2</bounce_count> + <nb_visits_converted>3</nb_visits_converted> + <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>2</sum_daily_nb_users> + </row> <row> <label>Unknown</label> <nb_visits>2</nb_visits> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserFamilies_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserFamilies_month.xml index bc93ec3bb8a95b83f31f4820c10104b81a392a23..82fd2a7603ce4048d0db571cd4cf22bbd283ca42 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserFamilies_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserFamilies_month.xml @@ -1,28 +1,28 @@ <?xml version="1.0" encoding="utf-8" ?> <result> <row> - <label>Internet Explorer</label> - <nb_visits>6</nb_visits> - <nb_actions>6</nb_actions> + <label>Chrome</label> + <nb_visits>7</nb_visits> + <nb_actions>7</nb_actions> <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> - <bounce_count>6</bounce_count> - <nb_visits_converted>6</nb_visits_converted> + <sum_visit_length>1</sum_visit_length> + <bounce_count>7</bounce_count> + <nb_visits_converted>7</nb_visits_converted> <sum_daily_nb_uniq_visitors>6</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> - <logo>plugins/DevicesDetection/images/browsers/IE.gif</logo> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/browsers/CH.gif</logo> </row> <row> - <label>Chrome</label> - <nb_visits>5</nb_visits> - <nb_actions>5</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> - <bounce_count>5</bounce_count> - <nb_visits_converted>5</nb_visits_converted> - <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors> + <label>Internet Explorer</label> + <nb_visits>7</nb_visits> + <nb_actions>8</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> + <bounce_count>6</bounce_count> + <nb_visits_converted>7</nb_visits_converted> + <sum_daily_nb_uniq_visitors>7</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> - <logo>plugins/DevicesDetection/images/browsers/CH.gif</logo> + <logo>plugins/DevicesDetection/images/browsers/IE.gif</logo> </row> <row> <label>Epiphany</label> @@ -84,4 +84,16 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/browsers/UNK.gif</logo> </row> + <row> + <label>Chrome Mobile</label> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>2</sum_visit_length> + <bounce_count>0</bounce_count> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/browsers/CM.gif</logo> + </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserVersions_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserVersions_month.xml index 39e7328e8c76291e6951e69d3e7808dc5fd15509..90f330a5e579698b2eb6f075f6a8338ad2096edf 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserVersions_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowserVersions_month.xml @@ -72,6 +72,18 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/browsers/CH.gif</logo> </row> + <row> + <label>Chrome 37.0</label> + <nb_visits>2</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>1</max_actions> + <sum_visit_length>1</sum_visit_length> + <bounce_count>2</bounce_count> + <nb_visits_converted>2</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/browsers/CH.gif</logo> + </row> <row> <label>Firefox 6.0</label> <nb_visits>2</nb_visits> @@ -108,6 +120,18 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/browsers/CH.gif</logo> </row> + <row> + <label>Chrome Mobile 39.0</label> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>2</sum_visit_length> + <bounce_count>0</bounce_count> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/browsers/CM.gif</logo> + </row> <row> <label>Internet Explorer 6.0</label> <nb_visits>1</nb_visits> @@ -120,4 +144,16 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/browsers/IE.gif</logo> </row> + <row> + <label>Internet Explorer 8.0</label> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> + <bounce_count>0</bounce_count> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>0</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/browsers/IE.gif</logo> + </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowsers_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowsers_month.xml index bc93ec3bb8a95b83f31f4820c10104b81a392a23..82fd2a7603ce4048d0db571cd4cf22bbd283ca42 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowsers_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getBrowsers_month.xml @@ -1,28 +1,28 @@ <?xml version="1.0" encoding="utf-8" ?> <result> <row> - <label>Internet Explorer</label> - <nb_visits>6</nb_visits> - <nb_actions>6</nb_actions> + <label>Chrome</label> + <nb_visits>7</nb_visits> + <nb_actions>7</nb_actions> <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> - <bounce_count>6</bounce_count> - <nb_visits_converted>6</nb_visits_converted> + <sum_visit_length>1</sum_visit_length> + <bounce_count>7</bounce_count> + <nb_visits_converted>7</nb_visits_converted> <sum_daily_nb_uniq_visitors>6</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> - <logo>plugins/DevicesDetection/images/browsers/IE.gif</logo> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/browsers/CH.gif</logo> </row> <row> - <label>Chrome</label> - <nb_visits>5</nb_visits> - <nb_actions>5</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> - <bounce_count>5</bounce_count> - <nb_visits_converted>5</nb_visits_converted> - <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors> + <label>Internet Explorer</label> + <nb_visits>7</nb_visits> + <nb_actions>8</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> + <bounce_count>6</bounce_count> + <nb_visits_converted>7</nb_visits_converted> + <sum_daily_nb_uniq_visitors>7</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> - <logo>plugins/DevicesDetection/images/browsers/CH.gif</logo> + <logo>plugins/DevicesDetection/images/browsers/IE.gif</logo> </row> <row> <label>Epiphany</label> @@ -84,4 +84,16 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/browsers/UNK.gif</logo> </row> + <row> + <label>Chrome Mobile</label> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>2</sum_visit_length> + <bounce_count>0</bounce_count> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/browsers/CM.gif</logo> + </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getModel_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getModel_month.xml index b9bf650ebc84a5fa7ac1a41e5fa26d5567e6133b..d0be913ad265c5478c6c8bf801a69f27b5abbba7 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getModel_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getModel_month.xml @@ -2,14 +2,14 @@ <result> <row> <label>Unknown</label> - <nb_visits>25</nb_visits> - <nb_actions>28</nb_actions> + <nb_visits>28</nb_visits> + <nb_actions>32</nb_actions> <max_actions>3</max_actions> - <sum_visit_length>305</sum_visit_length> - <bounce_count>23</bounce_count> - <nb_visits_converted>23</nb_visits_converted> - <sum_daily_nb_uniq_visitors>25</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <sum_visit_length>548</sum_visit_length> + <bounce_count>25</bounce_count> + <nb_visits_converted>26</nb_visits_converted> + <sum_daily_nb_uniq_visitors>27</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> </row> <row> <label>Vision</label> @@ -22,4 +22,15 @@ <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> </row> + <row> + <label>GALAXY S5</label> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>2</sum_visit_length> + <bounce_count>0</bounce_count> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getOsFamilies_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getOsFamilies_month.xml index af7e4f8f924246c7c6567ea77d24a8812f895f56..cfa85794747c7d7dce9d7e1a8a20f3cd87f3555d 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getOsFamilies_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getOsFamilies_month.xml @@ -12,40 +12,40 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/os/LIN.gif</logo> </row> + <row> + <label>Mac</label> + <nb_visits>8</nb_visits> + <nb_actions>11</nb_actions> + <max_actions>3</max_actions> + <sum_visit_length>306</sum_visit_length> + <bounce_count>6</bounce_count> + <nb_visits_converted>7</nb_visits_converted> + <sum_daily_nb_uniq_visitors>7</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/os/MAC.gif</logo> + </row> <row> <label>Windows</label> - <nb_visits>9</nb_visits> - <nb_actions>9</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> + <nb_visits>10</nb_visits> + <nb_actions>11</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> <bounce_count>9</bounce_count> - <nb_visits_converted>9</nb_visits_converted> - <sum_daily_nb_uniq_visitors>9</sum_daily_nb_uniq_visitors> + <nb_visits_converted>10</nb_visits_converted> + <sum_daily_nb_uniq_visitors>10</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/os/WI7.gif</logo> </row> - <row> - <label>Mac</label> - <nb_visits>6</nb_visits> - <nb_actions>9</nb_actions> - <max_actions>3</max_actions> - <sum_visit_length>305</sum_visit_length> - <bounce_count>4</bounce_count> - <nb_visits_converted>5</nb_visits_converted> - <sum_daily_nb_uniq_visitors>6</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> - <logo>plugins/DevicesDetection/images/os/MAC.gif</logo> - </row> <row> <label>Android</label> - <nb_visits>2</nb_visits> - <nb_actions>2</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> + <nb_visits>3</nb_visits> + <nb_actions>4</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>2</sum_visit_length> <bounce_count>2</bounce_count> - <nb_visits_converted>2</nb_visits_converted> - <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <nb_visits_converted>3</nb_visits_converted> + <sum_daily_nb_uniq_visitors>3</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/os/AND.gif</logo> </row> <row> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getOsVersions_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getOsVersions_month.xml index 254ec3889b3396a65ecc381e6fa70123673f76d9..636ccfdeb778d104fd4455253da465c8b4a2d02f 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getOsVersions_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getOsVersions_month.xml @@ -48,6 +48,18 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/os/AND.gif</logo> </row> + <row> + <label>Mac 10.10</label> + <nb_visits>2</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>1</max_actions> + <sum_visit_length>1</sum_visit_length> + <bounce_count>2</bounce_count> + <nb_visits_converted>2</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/os/MAC.gif</logo> + </row> <row> <label>Windows XP</label> <nb_visits>2</nb_visits> @@ -60,6 +72,18 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/os/WXP.gif</logo> </row> + <row> + <label>Android 4.4</label> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>2</sum_visit_length> + <bounce_count>0</bounce_count> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/os/AND.gif</logo> + </row> <row> <label>Bot</label> <nb_visits>1</nb_visits> @@ -96,4 +120,16 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/os/UNK.gif</logo> </row> + <row> + <label>Windows</label> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> + <bounce_count>0</bounce_count> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>0</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/os/WIN.gif</logo> + </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getType_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getType_month.xml index 0a059a62d67058dfe91cc94770385c54e5ecc92e..e838256d3f2eac29fc244d208a41d80d1007a6c3 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getType_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__DevicesDetection.getType_month.xml @@ -2,39 +2,39 @@ <result> <row> <label>Desktop</label> - <nb_visits>23</nb_visits> - <nb_actions>26</nb_actions> + <nb_visits>26</nb_visits> + <nb_actions>30</nb_actions> <max_actions>3</max_actions> - <sum_visit_length>305</sum_visit_length> - <bounce_count>21</bounce_count> - <nb_visits_converted>22</nb_visits_converted> - <sum_daily_nb_uniq_visitors>23</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <sum_visit_length>548</sum_visit_length> + <bounce_count>23</bounce_count> + <nb_visits_converted>25</nb_visits_converted> + <sum_daily_nb_uniq_visitors>25</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/screens/normal.gif</logo> </row> <row> - <label>Unknown</label> - <nb_visits>2</nb_visits> - <nb_actions>2</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> + <label>Smartphone</label> + <nb_visits>3</nb_visits> + <nb_actions>4</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>2</sum_visit_length> <bounce_count>2</bounce_count> - <nb_visits_converted>1</nb_visits_converted> - <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> - <logo>plugins/DevicesDetection/images/screens/unknown.gif</logo> + <nb_visits_converted>3</nb_visits_converted> + <sum_daily_nb_uniq_visitors>3</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/screens/smartphone.png</logo> </row> <row> - <label>Smartphone</label> + <label>Unknown</label> <nb_visits>2</nb_visits> <nb_actions>2</nb_actions> <max_actions>1</max_actions> <sum_visit_length>0</sum_visit_length> <bounce_count>2</bounce_count> - <nb_visits_converted>2</nb_visits_converted> + <nb_visits_converted>1</nb_visits_converted> <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> - <logo>plugins/DevicesDetection/images/screens/smartphone.png</logo> + <logo>plugins/DevicesDetection/images/screens/unknown.gif</logo> </row> <row> <label>Tablet</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Goals.getDaysToConversion_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Goals.getDaysToConversion_month.xml index 1ba1449d50cf3b1903a0fbf07517dcaead3612c7..8c1697b2218922fbe5fe67abf239078302502087 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Goals.getDaysToConversion_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Goals.getDaysToConversion_month.xml @@ -2,7 +2,7 @@ <result> <row> <label>0 days</label> - <nb_conversions>24</nb_conversions> + <nb_conversions>28</nb_conversions> </row> <row> <label>1 day</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Goals.getVisitsUntilConversion_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Goals.getVisitsUntilConversion_month.xml index 0a94d5f36db23610ae10110873314fdd66d4e4a5..970c5a295dc8696b17ae6ee853791ab95d0198f8 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Goals.getVisitsUntilConversion_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Goals.getVisitsUntilConversion_month.xml @@ -2,7 +2,7 @@ <result> <row> <label>1 visit</label> - <nb_conversions>25</nb_conversions> + <nb_conversions>29</nb_conversions> </row> <row> <label>2 visits</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Goals.get_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Goals.get_month.xml index 4c6855264a3230ca96dc14964c1afc49dea6f4f2..35d78ccc178ab8e1c9ac3497fa2a8fe0e2de12e3 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Goals.get_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Goals.get_month.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="utf-8" ?> <result> - <nb_conversions>25</nb_conversions> - <nb_visits_converted>25</nb_visits_converted> - <revenue>125</revenue> - <conversion_rate>92.59%</conversion_rate> + <nb_conversions>29</nb_conversions> + <nb_visits_converted>29</nb_visits_converted> + <revenue>145</revenue> + <conversion_rate>93.55%</conversion_rate> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Live.getLastVisitsDetails_range.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Live.getLastVisitsDetails_range.xml index 1b6f100c5e0ed6af346fbe731f527389619f2336..fc1e81976f630bd4f02672500f4e9afa91deebe2 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Live.getLastVisitsDetails_range.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Live.getLastVisitsDetails_range.xml @@ -1786,6 +1786,451 @@ + </row> + <row> + <idSite>1</idSite> + <idVisit>45</idVisit> + <visitIp>172.20.1.0</visitIp> + + <actionDetails> + <row> + <type>action</type> + <url>http://piwik.net/Citrix/XenApp/Wan/auth/login.jsp</url> + <pageTitle>302/URL = http%3A%2F%2Fpiwik.net%2FCitrix%2FXenApp%2FWan%2Fauth%2Flogin.jsp</pageTitle> + <pageIdAction>62</pageIdAction> + + <pageId>62</pageId> + <customVariables> + <row> + <customVariablePageName1>HTTP-code</customVariablePageName1> + <customVariablePageValue1>302</customVariablePageValue1> + </row> + </customVariables> + <timeSpent>240</timeSpent> + <timeSpentPretty>4 min 0s</timeSpentPretty> + <icon /> + </row> + <row> + <type>goal</type> + <goalName>all</goalName> + <goalId>1</goalId> + <revenue>5</revenue> + <goalPageId>62</goalPageId> + + <url>http://piwik.net/Citrix/XenApp/Wan/auth/login.jsp</url> + <icon>plugins/Morpheus/images/goal.png</icon> + </row> + <row> + <type>action</type> + <url>http://piwik.net/Citrix/XenApp/Wan/auth/silentDetection.jsp</url> + <pageTitle /> + <pageIdAction>63</pageIdAction> + + <pageId>63</pageId> + <customVariables> + <row> + <customVariablePageName1>HTTP-code</customVariablePageName1> + <customVariablePageValue1>200</customVariablePageValue1> + </row> + </customVariables> + <icon /> + </row> + </actionDetails> + <goalConversions>1</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + + + + <searches>0</searches> + <actions>2</actions> + <userId /> + <visitorType>new</visitorType> + <visitorTypeIcon /> + <visitConverted>1</visitConverted> + <visitConvertedIcon>plugins/Morpheus/images/goal.png</visitConvertedIcon> + <visitCount>1</visitCount> + + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <visitDuration>242</visitDuration> + <visitDurationPretty>4 min 2s</visitDurationPretty> + <customVariables> + </customVariables> + <deviceType>Desktop</deviceType> + <operatingSystem>Windows</operatingSystem> + <operatingSystemCode>WIN</operatingSystemCode> + <operatingSystemIcon>plugins/DevicesDetection/images/os/WIN.gif</operatingSystemIcon> + <browserFamily>Trident</browserFamily> + <browserFamilyDescription>Trident (IE)</browserFamilyDescription> + <browser>Internet Explorer 8.0</browser> + <browserName>Internet Explorer</browserName> + <browserIcon>plugins/DevicesDetection/images/browsers/IE.gif</browserIcon> + <browserCode>IE</browserCode> + <browserVersion>8.0</browserVersion> + <events>0</events> + <provider>Unknown</provider> + <providerName>Unknown</providerName> + <providerUrl /> + <referrerType>direct</referrerType> + <referrerTypeName>Direct Entry</referrerTypeName> + <referrerName /> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl /> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <continent>Unknown</continent> + <continentCode>unk</continentCode> + <country>Unknown</country> + <countryCode>xx</countryCode> + <countryFlag>plugins/UserCountry/images/flags/xx.png</countryFlag> + <region /> + <regionCode /> + <city /> + <location>Unknown</location> + <latitude /> + <longitude /> + <resolution>unknown</resolution> + <plugins /> + <pluginsIcons /> + <visitLocalTime>11:55:13</visitLocalTime> + <visitLocalHour>11</visitLocalHour> + <daysSinceLastVisit>0</daysSinceLastVisit> + + + + + + </row> + <row> + <idSite>1</idSite> + <idVisit>44</idVisit> + <visitIp>173.5.0.0</visitIp> + + <actionDetails> + <row> + <type>goal</type> + <goalName>all</goalName> + <goalId>1</goalId> + <revenue>5</revenue> + <goalPageId>61</goalPageId> + + <url>http://piwik.net/hello/from/another/world/6,681965</url> + <icon>plugins/Morpheus/images/goal.png</icon> + </row> + <row> + <type>action</type> + <url>http://piwik.net/hello/from/another/world/6,681965</url> + <pageTitle /> + <pageIdAction>60</pageIdAction> + + <pageId>61</pageId> + <customVariables> + <row> + <customVariablePageName1>HTTP-code</customVariablePageName1> + <customVariablePageValue1>200</customVariablePageValue1> + </row> + </customVariables> + <generationTime>0.36s</generationTime> + <icon /> + </row> + </actionDetails> + <goalConversions>1</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + + + + <searches>0</searches> + <actions>1</actions> + <userId>user2</userId> + <visitorType>returning</visitorType> + <visitorTypeIcon>plugins/Live/images/returningVisitor.gif</visitorTypeIcon> + <visitConverted>1</visitConverted> + <visitConvertedIcon>plugins/Morpheus/images/goal.png</visitConvertedIcon> + <visitCount>1</visitCount> + + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <visitDuration>1</visitDuration> + <visitDurationPretty>1s</visitDurationPretty> + <customVariables> + </customVariables> + <deviceType>Desktop</deviceType> + <operatingSystem>Mac</operatingSystem> + <operatingSystemCode>MAC</operatingSystemCode> + <operatingSystemIcon>plugins/DevicesDetection/images/os/MAC.gif</operatingSystemIcon> + <browserFamily>Blink</browserFamily> + <browserFamilyDescription>Blink (Chrome, Opera)</browserFamilyDescription> + <browser>Chrome 37.0</browser> + <browserName>Chrome</browserName> + <browserIcon>plugins/DevicesDetection/images/browsers/CH.gif</browserIcon> + <browserCode>CH</browserCode> + <browserVersion>37.0</browserVersion> + <events>0</events> + <provider>Unknown</provider> + <providerName>Unknown</providerName> + <providerUrl /> + <referrerType>direct</referrerType> + <referrerTypeName>Direct Entry</referrerTypeName> + <referrerName /> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl /> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <continent>North America</continent> + <continentCode>amn</continentCode> + <country>United States</country> + <countryCode>us</countryCode> + <countryFlag>plugins/UserCountry/images/flags/us.png</countryFlag> + <region /> + <regionCode /> + <city /> + <location>United States</location> + <latitude>38</latitude> + <longitude>-97</longitude> + <resolution>unknown</resolution> + <plugins /> + <pluginsIcons /> + <visitLocalTime>17:30:00</visitLocalTime> + <visitLocalHour>17</visitLocalHour> + <daysSinceLastVisit>0</daysSinceLastVisit> + + + + + + </row> + <row> + <idSite>1</idSite> + <idVisit>42</idVisit> + <visitIp>70.95.0.0</visitIp> + + <actionDetails> + <row> + <type>goal</type> + <goalName>all</goalName> + <goalId>1</goalId> + <revenue>5</revenue> + <goalPageId>58</goalPageId> + + <url>http://piwik.net/Products/theProduct</url> + <icon>plugins/Morpheus/images/goal.png</icon> + </row> + <row> + <type>action</type> + <url>http://piwik.net/Topic/hw43061</url> + <pageTitle>301/URL = http%3A%2F%2Fpiwik.net%2FTopic%2Fhw43061</pageTitle> + <pageIdAction>57</pageIdAction> + + <pageId>59</pageId> + <customVariables> + <row> + <customVariablePageName1>HTTP-code</customVariablePageName1> + <customVariablePageValue1>301</customVariablePageValue1> + </row> + </customVariables> + <icon /> + </row> + <row> + <type>action</type> + <url>http://piwik.net/Products/theProduct</url> + <pageTitle /> + <pageIdAction>55</pageIdAction> + + <pageId>58</pageId> + <customVariables> + <row> + <customVariablePageName1>HTTP-code</customVariablePageName1> + <customVariablePageValue1>200</customVariablePageValue1> + </row> + </customVariables> + <generationTime>0.11s</generationTime> + <timeSpent>0</timeSpent> + <timeSpentPretty>0s</timeSpentPretty> + <icon /> + </row> + </actionDetails> + <goalConversions>1</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + + + + <searches>0</searches> + <actions>2</actions> + <userId>user1</userId> + <visitorType>new</visitorType> + <visitorTypeIcon /> + <visitConverted>1</visitConverted> + <visitConvertedIcon>plugins/Morpheus/images/goal.png</visitConvertedIcon> + <visitCount>1</visitCount> + + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <visitDuration>2</visitDuration> + <visitDurationPretty>2s</visitDurationPretty> + <customVariables> + </customVariables> + <deviceType>Smartphone</deviceType> + <operatingSystem>Android</operatingSystem> + <operatingSystemCode>AND</operatingSystemCode> + <operatingSystemIcon>plugins/DevicesDetection/images/os/AND.gif</operatingSystemIcon> + <browserFamily>Blink</browserFamily> + <browserFamilyDescription>Blink (Chrome, Opera)</browserFamilyDescription> + <browser>Chrome Mobile 39.0</browser> + <browserName>Chrome Mobile</browserName> + <browserIcon>plugins/DevicesDetection/images/browsers/CM.gif</browserIcon> + <browserCode>CM</browserCode> + <browserVersion>39.0</browserVersion> + <events>0</events> + <provider>Unknown</provider> + <providerName>Unknown</providerName> + <providerUrl /> + <referrerType>direct</referrerType> + <referrerTypeName>Direct Entry</referrerTypeName> + <referrerName /> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl /> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <continent>North America</continent> + <continentCode>amn</continentCode> + <country>United States</country> + <countryCode>us</countryCode> + <countryFlag>plugins/UserCountry/images/flags/us.png</countryFlag> + <region /> + <regionCode /> + <city /> + <location>United States</location> + <latitude>38</latitude> + <longitude>-97</longitude> + <resolution>unknown</resolution> + <plugins /> + <pluginsIcons /> + <visitLocalTime>17:00:00</visitLocalTime> + <visitLocalHour>17</visitLocalHour> + <daysSinceLastVisit>0</daysSinceLastVisit> + + + + + + </row> + <row> + <idSite>1</idSite> + <idVisit>43</idVisit> + <visitIp>173.5.0.0</visitIp> + + <actionDetails> + <row> + <type>goal</type> + <goalName>all</goalName> + <goalId>1</goalId> + <revenue>5</revenue> + <goalPageId>60</goalPageId> + + <url>http://piwik.net/hello/world/6,681965</url> + <icon>plugins/Morpheus/images/goal.png</icon> + </row> + <row> + <type>action</type> + <url>http://piwik.net/hello/world/6,681965</url> + <pageTitle>404/URL = http%3A%2F%2Fpiwik.net%2Fhello%2Fworld%2F6%2C681965</pageTitle> + <pageIdAction>59</pageIdAction> + + <pageId>60</pageId> + <customVariables> + <row> + <customVariablePageName1>HTTP-code</customVariablePageName1> + <customVariablePageValue1>404</customVariablePageValue1> + </row> + </customVariables> + <generationTime>0.36s</generationTime> + <icon /> + </row> + </actionDetails> + <goalConversions>1</goalConversions> + <siteCurrency>USD</siteCurrency> + <siteCurrencySymbol>$</siteCurrencySymbol> + + + + + <searches>0</searches> + <actions>1</actions> + <userId /> + <visitorType>new</visitorType> + <visitorTypeIcon /> + <visitConverted>1</visitConverted> + <visitConvertedIcon>plugins/Morpheus/images/goal.png</visitConvertedIcon> + <visitCount>1</visitCount> + + <visitEcommerceStatus>none</visitEcommerceStatus> + <visitEcommerceStatusIcon /> + <daysSinceFirstVisit>0</daysSinceFirstVisit> + <daysSinceLastEcommerceOrder>0</daysSinceLastEcommerceOrder> + <visitDuration>0</visitDuration> + <visitDurationPretty>0s</visitDurationPretty> + <customVariables> + </customVariables> + <deviceType>Desktop</deviceType> + <operatingSystem>Mac</operatingSystem> + <operatingSystemCode>MAC</operatingSystemCode> + <operatingSystemIcon>plugins/DevicesDetection/images/os/MAC.gif</operatingSystemIcon> + <browserFamily>Blink</browserFamily> + <browserFamilyDescription>Blink (Chrome, Opera)</browserFamilyDescription> + <browser>Chrome 37.0</browser> + <browserName>Chrome</browserName> + <browserIcon>plugins/DevicesDetection/images/browsers/CH.gif</browserIcon> + <browserCode>CH</browserCode> + <browserVersion>37.0</browserVersion> + <events>0</events> + <provider>Unknown</provider> + <providerName>Unknown</providerName> + <providerUrl /> + <referrerType>direct</referrerType> + <referrerTypeName>Direct Entry</referrerTypeName> + <referrerName /> + <referrerKeyword /> + <referrerKeywordPosition /> + <referrerUrl /> + <referrerSearchEngineUrl /> + <referrerSearchEngineIcon /> + <continent>North America</continent> + <continentCode>amn</continentCode> + <country>United States</country> + <countryCode>us</countryCode> + <countryFlag>plugins/UserCountry/images/flags/us.png</countryFlag> + <region /> + <regionCode /> + <city /> + <location>United States</location> + <latitude>38</latitude> + <longitude>-97</longitude> + <resolution>unknown</resolution> + <plugins /> + <pluginsIcons /> + <visitLocalTime>17:00:00</visitLocalTime> + <visitLocalHour>17</visitLocalHour> + <daysSinceLastVisit>0</daysSinceLastVisit> + + + + + </row> <row> <idSite>1</idSite> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__MultiSites.getAll_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__MultiSites.getAll_month.xml index eb2209a224e7e7e8963be833f0b0e13edd06b47c..d2edd33b602927437c05eeab99abd37cf4dc16dc 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__MultiSites.getAll_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__MultiSites.getAll_month.xml @@ -2,10 +2,10 @@ <result> <row> <label>Piwik test</label> - <nb_visits>27</nb_visits> - <nb_actions>30</nb_actions> - <nb_pageviews>26</nb_pageviews> - <revenue>125</revenue> + <nb_visits>31</nb_visits> + <nb_actions>36</nb_actions> + <nb_pageviews>32</nb_pageviews> + <revenue>145</revenue> <visits_evolution>100%</visits_evolution> <actions_evolution>100%</actions_evolution> <pageviews_evolution>100%</pageviews_evolution> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__MultiSites.getOne_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__MultiSites.getOne_month.xml index 1fb93e2a2abc6affa70542dc6179649c0fc12777..79b56ff9799a7f889943c890162255bca8e87637 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__MultiSites.getOne_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__MultiSites.getOne_month.xml @@ -1,11 +1,11 @@ <?xml version="1.0" encoding="utf-8" ?> <result> - <nb_visits>27</nb_visits> - <nb_actions>30</nb_actions> + <nb_visits>31</nb_visits> + <nb_actions>36</nb_actions> <visits_evolution>100%</visits_evolution> <actions_evolution>100%</actions_evolution> <pageviews_evolution>100%</pageviews_evolution> <revenue_evolution>100%</revenue_evolution> - <nb_pageviews>26</nb_pageviews> - <revenue>125</revenue> + <nb_pageviews>32</nb_pageviews> + <revenue>145</revenue> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Provider.getProvider_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Provider.getProvider_month.xml index 8cc6494492a35050c4058f1efc7a8ae8023cc432..f83cd0a71c0405f33aa3c9449d854117ab108d25 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Provider.getProvider_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Provider.getProvider_month.xml @@ -2,14 +2,14 @@ <result> <row> <label>Unknown</label> - <nb_visits>27</nb_visits> - <nb_actions>30</nb_actions> + <nb_visits>31</nb_visits> + <nb_actions>36</nb_actions> <max_actions>3</max_actions> - <sum_visit_length>305</sum_visit_length> - <bounce_count>25</bounce_count> - <nb_visits_converted>25</nb_visits_converted> - <sum_daily_nb_uniq_visitors>27</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <sum_visit_length>550</sum_visit_length> + <bounce_count>27</bounce_count> + <nb_visits_converted>29</nb_visits_converted> + <sum_daily_nb_uniq_visitors>30</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>2</sum_daily_nb_users> <url /> </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__Referrers.getReferrerType_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__Referrers.getReferrerType_month.xml index 80a6349ac1c80ba68cca637acf2dec80ef2798f7..9b5ba79691ada699fd4293c224f82832cf4147f1 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__Referrers.getReferrerType_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__Referrers.getReferrerType_month.xml @@ -2,22 +2,22 @@ <result> <row> <label>Direct Entry</label> - <nb_visits>25</nb_visits> - <nb_actions>28</nb_actions> + <nb_visits>29</nb_visits> + <nb_actions>34</nb_actions> <max_actions>3</max_actions> - <sum_visit_length>305</sum_visit_length> - <bounce_count>23</bounce_count> + <sum_visit_length>550</sum_visit_length> + <bounce_count>25</bounce_count> <goals> <row idgoal='1'> - <nb_conversions>23</nb_conversions> - <nb_visits_converted>23</nb_visits_converted> - <revenue>115</revenue> + <nb_conversions>27</nb_conversions> + <nb_visits_converted>27</nb_visits_converted> + <revenue>135</revenue> </row> </goals> - <nb_conversions>23</nb_conversions> - <revenue>115</revenue> - <sum_daily_nb_uniq_visitors>25</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <nb_conversions>27</nb_conversions> + <revenue>135</revenue> + <sum_daily_nb_uniq_visitors>28</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>2</sum_daily_nb_users> </row> <row> <label>Websites</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getCity_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getCity_month.xml index a14f0cec91fce5df24c8fd25b92a201dbd6e532a..dc702824f1203add009a4d31f81da2119898dac4 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getCity_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getCity_month.xml @@ -2,22 +2,22 @@ <result> <row> <label>Unknown</label> - <nb_visits>22</nb_visits> - <nb_actions>25</nb_actions> + <nb_visits>26</nb_visits> + <nb_actions>31</nb_actions> <max_actions>3</max_actions> - <sum_visit_length>305</sum_visit_length> - <bounce_count>20</bounce_count> + <sum_visit_length>550</sum_visit_length> + <bounce_count>22</bounce_count> <goals> <row idgoal='1'> - <nb_conversions>20</nb_conversions> - <nb_visits_converted>20</nb_visits_converted> - <revenue>100</revenue> + <nb_conversions>24</nb_conversions> + <nb_visits_converted>24</nb_visits_converted> + <revenue>120</revenue> </row> </goals> - <nb_conversions>20</nb_conversions> - <revenue>100</revenue> - <sum_daily_nb_uniq_visitors>22</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <nb_conversions>24</nb_conversions> + <revenue>120</revenue> + <sum_daily_nb_uniq_visitors>25</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>2</sum_daily_nb_users> <city_name>Unknown</city_name> <city>xx</city> <region>xx</region> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getContinent_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getContinent_month.xml index 23e244b75129fa3a514211f3ab8a396970f507d1..212e81c78595f2db8534c0fcbfb5693999189f9a 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getContinent_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getContinent_month.xml @@ -21,44 +21,44 @@ <code>Asia</code> </row> <row> - <label>Unknown</label> - <nb_visits>7</nb_visits> - <nb_actions>7</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> + <label>North America</label> + <nb_visits>8</nb_visits> + <nb_actions>9</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>3</sum_visit_length> <bounce_count>7</bounce_count> <goals> <row idgoal='1'> - <nb_conversions>7</nb_conversions> - <nb_visits_converted>7</nb_visits_converted> - <revenue>35</revenue> + <nb_conversions>8</nb_conversions> + <nb_visits_converted>8</nb_visits_converted> + <revenue>40</revenue> </row> </goals> - <nb_conversions>7</nb_conversions> - <revenue>35</revenue> + <nb_conversions>8</nb_conversions> + <revenue>40</revenue> <sum_daily_nb_uniq_visitors>7</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> - <code>Unknown</code> + <sum_daily_nb_users>2</sum_daily_nb_users> + <code>North America</code> </row> <row> - <label>North America</label> - <nb_visits>5</nb_visits> - <nb_actions>5</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> - <bounce_count>5</bounce_count> + <label>Unknown</label> + <nb_visits>8</nb_visits> + <nb_actions>9</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> + <bounce_count>7</bounce_count> <goals> <row idgoal='1'> - <nb_conversions>5</nb_conversions> - <nb_visits_converted>5</nb_visits_converted> - <revenue>25</revenue> + <nb_conversions>8</nb_conversions> + <nb_visits_converted>8</nb_visits_converted> + <revenue>40</revenue> </row> </goals> - <nb_conversions>5</nb_conversions> - <revenue>25</revenue> - <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors> + <nb_conversions>8</nb_conversions> + <revenue>40</revenue> + <sum_daily_nb_uniq_visitors>8</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> - <code>North America</code> + <code>Unknown</code> </row> <row> <label>South America</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getCountry_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getCountry_month.xml index ce5523efdeae2dc95abf7b667f5212d07fa395b1..1c82333bf07e88989ebfec6b3a319b30e0417387 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getCountry_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getCountry_month.xml @@ -24,48 +24,48 @@ <logoHeight>11</logoHeight> </row> <row> - <label>Unknown</label> - <nb_visits>7</nb_visits> - <nb_actions>7</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> + <label>United States</label> + <nb_visits>8</nb_visits> + <nb_actions>9</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>3</sum_visit_length> <bounce_count>7</bounce_count> <goals> <row idgoal='1'> - <nb_conversions>7</nb_conversions> - <nb_visits_converted>7</nb_visits_converted> - <revenue>35</revenue> + <nb_conversions>8</nb_conversions> + <nb_visits_converted>8</nb_visits_converted> + <revenue>40</revenue> </row> </goals> - <nb_conversions>7</nb_conversions> - <revenue>35</revenue> + <nb_conversions>8</nb_conversions> + <revenue>40</revenue> <sum_daily_nb_uniq_visitors>7</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> - <code>xx</code> - <logo>plugins/UserCountry/images/flags/xx.png</logo> + <sum_daily_nb_users>2</sum_daily_nb_users> + <code>us</code> + <logo>plugins/UserCountry/images/flags/us.png</logo> <logoWidth>16</logoWidth> <logoHeight>11</logoHeight> </row> <row> - <label>United States</label> - <nb_visits>5</nb_visits> - <nb_actions>5</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> - <bounce_count>5</bounce_count> + <label>Unknown</label> + <nb_visits>8</nb_visits> + <nb_actions>9</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> + <bounce_count>7</bounce_count> <goals> <row idgoal='1'> - <nb_conversions>5</nb_conversions> - <nb_visits_converted>5</nb_visits_converted> - <revenue>25</revenue> + <nb_conversions>8</nb_conversions> + <nb_visits_converted>8</nb_visits_converted> + <revenue>40</revenue> </row> </goals> - <nb_conversions>5</nb_conversions> - <revenue>25</revenue> - <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors> + <nb_conversions>8</nb_conversions> + <revenue>40</revenue> + <sum_daily_nb_uniq_visitors>8</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> - <code>us</code> - <logo>plugins/UserCountry/images/flags/us.png</logo> + <code>xx</code> + <logo>plugins/UserCountry/images/flags/xx.png</logo> <logoWidth>16</logoWidth> <logoHeight>11</logoHeight> </row> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getRegion_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getRegion_month.xml index 4067fb26181abc41a4b9c5e4c303736257a6bb32..1149b705a7c4c8f1e09c5927cda33277766f3262 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getRegion_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserCountry.getRegion_month.xml @@ -2,22 +2,22 @@ <result> <row> <label>Unknown</label> - <nb_visits>22</nb_visits> - <nb_actions>25</nb_actions> + <nb_visits>26</nb_visits> + <nb_actions>31</nb_actions> <max_actions>3</max_actions> - <sum_visit_length>305</sum_visit_length> - <bounce_count>20</bounce_count> + <sum_visit_length>550</sum_visit_length> + <bounce_count>22</bounce_count> <goals> <row idgoal='1'> - <nb_conversions>20</nb_conversions> - <nb_visits_converted>20</nb_visits_converted> - <revenue>100</revenue> + <nb_conversions>24</nb_conversions> + <nb_visits_converted>24</nb_visits_converted> + <revenue>120</revenue> </row> </goals> - <nb_conversions>20</nb_conversions> - <revenue>100</revenue> - <sum_daily_nb_uniq_visitors>22</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <nb_conversions>24</nb_conversions> + <revenue>120</revenue> + <sum_daily_nb_uniq_visitors>25</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>2</sum_daily_nb_users> <region>xx</region> <country>xx</country> <country_name>Unknown</country_name> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowserType_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowserType_month.xml index bb6679c9714cf98fd8cc2733ed5feb6ba2c3fb05..147f52ac7c9972ecb09ff697e2845f75bd60f8c9 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowserType_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowserType_month.xml @@ -13,15 +13,26 @@ </row> <row> <label>Trident (IE)</label> - <nb_visits>6</nb_visits> - <nb_actions>6</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> + <nb_visits>7</nb_visits> + <nb_actions>8</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> <bounce_count>6</bounce_count> - <nb_visits_converted>6</nb_visits_converted> - <sum_daily_nb_uniq_visitors>6</sum_daily_nb_uniq_visitors> + <nb_visits_converted>7</nb_visits_converted> + <sum_daily_nb_uniq_visitors>7</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> </row> + <row> + <label>Blink (Chrome, Opera)</label> + <nb_visits>3</nb_visits> + <nb_actions>4</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>3</sum_visit_length> + <bounce_count>2</bounce_count> + <nb_visits_converted>3</nb_visits_converted> + <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>2</sum_daily_nb_users> + </row> <row> <label>Unknown</label> <nb_visits>2</nb_visits> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowserVersion_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowserVersion_month.xml index 39e7328e8c76291e6951e69d3e7808dc5fd15509..90f330a5e579698b2eb6f075f6a8338ad2096edf 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowserVersion_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowserVersion_month.xml @@ -72,6 +72,18 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/browsers/CH.gif</logo> </row> + <row> + <label>Chrome 37.0</label> + <nb_visits>2</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>1</max_actions> + <sum_visit_length>1</sum_visit_length> + <bounce_count>2</bounce_count> + <nb_visits_converted>2</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/browsers/CH.gif</logo> + </row> <row> <label>Firefox 6.0</label> <nb_visits>2</nb_visits> @@ -108,6 +120,18 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/browsers/CH.gif</logo> </row> + <row> + <label>Chrome Mobile 39.0</label> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>2</sum_visit_length> + <bounce_count>0</bounce_count> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/browsers/CM.gif</logo> + </row> <row> <label>Internet Explorer 6.0</label> <nb_visits>1</nb_visits> @@ -120,4 +144,16 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/browsers/IE.gif</logo> </row> + <row> + <label>Internet Explorer 8.0</label> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> + <bounce_count>0</bounce_count> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>0</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/browsers/IE.gif</logo> + </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowser_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowser_month.xml index bc93ec3bb8a95b83f31f4820c10104b81a392a23..82fd2a7603ce4048d0db571cd4cf22bbd283ca42 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowser_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getBrowser_month.xml @@ -1,28 +1,28 @@ <?xml version="1.0" encoding="utf-8" ?> <result> <row> - <label>Internet Explorer</label> - <nb_visits>6</nb_visits> - <nb_actions>6</nb_actions> + <label>Chrome</label> + <nb_visits>7</nb_visits> + <nb_actions>7</nb_actions> <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> - <bounce_count>6</bounce_count> - <nb_visits_converted>6</nb_visits_converted> + <sum_visit_length>1</sum_visit_length> + <bounce_count>7</bounce_count> + <nb_visits_converted>7</nb_visits_converted> <sum_daily_nb_uniq_visitors>6</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> - <logo>plugins/DevicesDetection/images/browsers/IE.gif</logo> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/browsers/CH.gif</logo> </row> <row> - <label>Chrome</label> - <nb_visits>5</nb_visits> - <nb_actions>5</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> - <bounce_count>5</bounce_count> - <nb_visits_converted>5</nb_visits_converted> - <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors> + <label>Internet Explorer</label> + <nb_visits>7</nb_visits> + <nb_actions>8</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> + <bounce_count>6</bounce_count> + <nb_visits_converted>7</nb_visits_converted> + <sum_daily_nb_uniq_visitors>7</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> - <logo>plugins/DevicesDetection/images/browsers/CH.gif</logo> + <logo>plugins/DevicesDetection/images/browsers/IE.gif</logo> </row> <row> <label>Epiphany</label> @@ -84,4 +84,16 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/browsers/UNK.gif</logo> </row> + <row> + <label>Chrome Mobile</label> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>2</sum_visit_length> + <bounce_count>0</bounce_count> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/browsers/CM.gif</logo> + </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getConfiguration_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getConfiguration_month.xml index 446d719865ca67ad7c3a410de9ae03c4dfb6587e..75d278b51bb646e1aa049df1f6bce9258367eddf 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getConfiguration_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getConfiguration_month.xml @@ -33,6 +33,17 @@ <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> </row> + <row> + <label>Mac / Chrome / unknown</label> + <nb_visits>3</nb_visits> + <nb_actions>3</nb_actions> + <max_actions>1</max_actions> + <sum_visit_length>1</sum_visit_length> + <bounce_count>3</bounce_count> + <nb_visits_converted>3</nb_visits_converted> + <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + </row> <row> <label>Android / Android Browser / unknown</label> <nb_visits>2</nb_visits> @@ -67,18 +78,18 @@ <sum_daily_nb_users>0</sum_daily_nb_users> </row> <row> - <label>Bot / Unknown / unknown</label> + <label>Android / Chrome Mobile / unknown</label> <nb_visits>1</nb_visits> - <nb_actions>1</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> - <bounce_count>1</bounce_count> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>2</sum_visit_length> + <bounce_count>0</bounce_count> <nb_visits_converted>1</nb_visits_converted> <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <sum_daily_nb_users>1</sum_daily_nb_users> </row> <row> - <label>GNU/Linux / Chrome / unknown</label> + <label>Bot / Unknown / unknown</label> <nb_visits>1</nb_visits> <nb_actions>1</nb_actions> <max_actions>1</max_actions> @@ -89,7 +100,7 @@ <sum_daily_nb_users>0</sum_daily_nb_users> </row> <row> - <label>Mac / Chrome / unknown</label> + <label>GNU/Linux / Chrome / unknown</label> <nb_visits>1</nb_visits> <nb_actions>1</nb_actions> <max_actions>1</max_actions> @@ -110,6 +121,17 @@ <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> </row> + <row> + <label>Windows / Internet Explorer / unknown</label> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> + <bounce_count>0</bounce_count> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>0</sum_daily_nb_users> + </row> <row> <label>Windows XP / Chrome / 1280x800</label> <nb_visits>1</nb_visits> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getLanguageCode_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getLanguageCode_month.xml index fc37ec8a8fd100bd46e10dffc0f3723bbfce6493..8d4b8d074e821e05600c6c9d7642914fb0dbdddb 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getLanguageCode_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getLanguageCode_month.xml @@ -2,13 +2,13 @@ <result> <row> <label>Unknown (xx)</label> - <nb_visits>27</nb_visits> - <nb_actions>30</nb_actions> + <nb_visits>31</nb_visits> + <nb_actions>36</nb_actions> <max_actions>3</max_actions> - <sum_visit_length>305</sum_visit_length> - <bounce_count>25</bounce_count> - <nb_visits_converted>25</nb_visits_converted> - <sum_daily_nb_uniq_visitors>27</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <sum_visit_length>550</sum_visit_length> + <bounce_count>27</bounce_count> + <nb_visits_converted>29</nb_visits_converted> + <sum_daily_nb_uniq_visitors>30</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>2</sum_daily_nb_users> </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getLanguage_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getLanguage_month.xml index 1f8c578db73d28b5dcbdce702f4f534c13b6760b..3ed6ff730986a323aefd48fa7f42446896efe4dc 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getLanguage_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getLanguage_month.xml @@ -2,13 +2,13 @@ <result> <row> <label>Unknown</label> - <nb_visits>27</nb_visits> - <nb_actions>30</nb_actions> + <nb_visits>31</nb_visits> + <nb_actions>36</nb_actions> <max_actions>3</max_actions> - <sum_visit_length>305</sum_visit_length> - <bounce_count>25</bounce_count> - <nb_visits_converted>25</nb_visits_converted> - <sum_daily_nb_uniq_visitors>27</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <sum_visit_length>550</sum_visit_length> + <bounce_count>27</bounce_count> + <nb_visits_converted>29</nb_visits_converted> + <sum_daily_nb_uniq_visitors>30</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>2</sum_daily_nb_users> </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getMobileVsDesktop_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getMobileVsDesktop_month.xml index 0a059a62d67058dfe91cc94770385c54e5ecc92e..e838256d3f2eac29fc244d208a41d80d1007a6c3 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getMobileVsDesktop_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getMobileVsDesktop_month.xml @@ -2,39 +2,39 @@ <result> <row> <label>Desktop</label> - <nb_visits>23</nb_visits> - <nb_actions>26</nb_actions> + <nb_visits>26</nb_visits> + <nb_actions>30</nb_actions> <max_actions>3</max_actions> - <sum_visit_length>305</sum_visit_length> - <bounce_count>21</bounce_count> - <nb_visits_converted>22</nb_visits_converted> - <sum_daily_nb_uniq_visitors>23</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <sum_visit_length>548</sum_visit_length> + <bounce_count>23</bounce_count> + <nb_visits_converted>25</nb_visits_converted> + <sum_daily_nb_uniq_visitors>25</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/screens/normal.gif</logo> </row> <row> - <label>Unknown</label> - <nb_visits>2</nb_visits> - <nb_actions>2</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> + <label>Smartphone</label> + <nb_visits>3</nb_visits> + <nb_actions>4</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>2</sum_visit_length> <bounce_count>2</bounce_count> - <nb_visits_converted>1</nb_visits_converted> - <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> - <logo>plugins/DevicesDetection/images/screens/unknown.gif</logo> + <nb_visits_converted>3</nb_visits_converted> + <sum_daily_nb_uniq_visitors>3</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/screens/smartphone.png</logo> </row> <row> - <label>Smartphone</label> + <label>Unknown</label> <nb_visits>2</nb_visits> <nb_actions>2</nb_actions> <max_actions>1</max_actions> <sum_visit_length>0</sum_visit_length> <bounce_count>2</bounce_count> - <nb_visits_converted>2</nb_visits_converted> + <nb_visits_converted>1</nb_visits_converted> <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> - <logo>plugins/DevicesDetection/images/screens/smartphone.png</logo> + <logo>plugins/DevicesDetection/images/screens/unknown.gif</logo> </row> <row> <label>Tablet</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOSFamily_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOSFamily_month.xml index af7e4f8f924246c7c6567ea77d24a8812f895f56..cfa85794747c7d7dce9d7e1a8a20f3cd87f3555d 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOSFamily_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOSFamily_month.xml @@ -12,40 +12,40 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/os/LIN.gif</logo> </row> + <row> + <label>Mac</label> + <nb_visits>8</nb_visits> + <nb_actions>11</nb_actions> + <max_actions>3</max_actions> + <sum_visit_length>306</sum_visit_length> + <bounce_count>6</bounce_count> + <nb_visits_converted>7</nb_visits_converted> + <sum_daily_nb_uniq_visitors>7</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/os/MAC.gif</logo> + </row> <row> <label>Windows</label> - <nb_visits>9</nb_visits> - <nb_actions>9</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> + <nb_visits>10</nb_visits> + <nb_actions>11</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> <bounce_count>9</bounce_count> - <nb_visits_converted>9</nb_visits_converted> - <sum_daily_nb_uniq_visitors>9</sum_daily_nb_uniq_visitors> + <nb_visits_converted>10</nb_visits_converted> + <sum_daily_nb_uniq_visitors>10</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/os/WI7.gif</logo> </row> - <row> - <label>Mac</label> - <nb_visits>6</nb_visits> - <nb_actions>9</nb_actions> - <max_actions>3</max_actions> - <sum_visit_length>305</sum_visit_length> - <bounce_count>4</bounce_count> - <nb_visits_converted>5</nb_visits_converted> - <sum_daily_nb_uniq_visitors>6</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> - <logo>plugins/DevicesDetection/images/os/MAC.gif</logo> - </row> <row> <label>Android</label> - <nb_visits>2</nb_visits> - <nb_actions>2</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> + <nb_visits>3</nb_visits> + <nb_actions>4</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>2</sum_visit_length> <bounce_count>2</bounce_count> - <nb_visits_converted>2</nb_visits_converted> - <sum_daily_nb_uniq_visitors>2</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <nb_visits_converted>3</nb_visits_converted> + <sum_daily_nb_uniq_visitors>3</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/os/AND.gif</logo> </row> <row> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOS_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOS_month.xml index 254ec3889b3396a65ecc381e6fa70123673f76d9..636ccfdeb778d104fd4455253da465c8b4a2d02f 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOS_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getOS_month.xml @@ -48,6 +48,18 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/os/AND.gif</logo> </row> + <row> + <label>Mac 10.10</label> + <nb_visits>2</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>1</max_actions> + <sum_visit_length>1</sum_visit_length> + <bounce_count>2</bounce_count> + <nb_visits_converted>2</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/os/MAC.gif</logo> + </row> <row> <label>Windows XP</label> <nb_visits>2</nb_visits> @@ -60,6 +72,18 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/os/WXP.gif</logo> </row> + <row> + <label>Android 4.4</label> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>2</sum_visit_length> + <bounce_count>0</bounce_count> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>1</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/os/AND.gif</logo> + </row> <row> <label>Bot</label> <nb_visits>1</nb_visits> @@ -96,4 +120,16 @@ <sum_daily_nb_users>0</sum_daily_nb_users> <logo>plugins/DevicesDetection/images/os/UNK.gif</logo> </row> + <row> + <label>Windows</label> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> + <bounce_count>0</bounce_count> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>0</sum_daily_nb_users> + <logo>plugins/DevicesDetection/images/os/WIN.gif</logo> + </row> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getPlugin_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getPlugin_month.xml index d1f2bda02f845e12d58773f02ccd73b84b1aea69..a96d5feb81e7ee99b694462cff4ef1e2e1d90b2b 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getPlugin_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getPlugin_month.xml @@ -3,43 +3,43 @@ <row> <label>Cookie</label> <nb_visits>2</nb_visits> - <nb_visits_percentage>10%</nb_visits_percentage> + <nb_visits_percentage>8%</nb_visits_percentage> <logo>plugins/UserSettings/images/plugins/cookie.gif</logo> </row> <row> <label>Flash</label> <nb_visits>2</nb_visits> - <nb_visits_percentage>10%</nb_visits_percentage> + <nb_visits_percentage>8%</nb_visits_percentage> <logo>plugins/UserSettings/images/plugins/flash.gif</logo> </row> <row> <label>Java</label> <nb_visits>2</nb_visits> - <nb_visits_percentage>10%</nb_visits_percentage> + <nb_visits_percentage>8%</nb_visits_percentage> <logo>plugins/UserSettings/images/plugins/java.gif</logo> </row> <row> <label>Director</label> <nb_visits>1</nb_visits> - <nb_visits_percentage>5%</nb_visits_percentage> + <nb_visits_percentage>4%</nb_visits_percentage> <logo>plugins/UserSettings/images/plugins/director.gif</logo> </row> <row> <label>Gears</label> <nb_visits>1</nb_visits> - <nb_visits_percentage>5%</nb_visits_percentage> + <nb_visits_percentage>4%</nb_visits_percentage> <logo>plugins/UserSettings/images/plugins/gears.gif</logo> </row> <row> <label>Pdf</label> <nb_visits>1</nb_visits> - <nb_visits_percentage>5%</nb_visits_percentage> + <nb_visits_percentage>4%</nb_visits_percentage> <logo>plugins/UserSettings/images/plugins/pdf.gif</logo> </row> <row> <label>Windowsmedia</label> <nb_visits>1</nb_visits> - <nb_visits_percentage>5%</nb_visits_percentage> + <nb_visits_percentage>4%</nb_visits_percentage> <logo>plugins/UserSettings/images/plugins/windowsmedia.gif</logo> </row> <row> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getResolution_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getResolution_month.xml index 659d5beea11515949b2fb41b483e5c7de81d8b84..378996fabcacf7c4b04003e7f08e77b5c0c378a3 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getResolution_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__UserSettings.getResolution_month.xml @@ -2,14 +2,14 @@ <result> <row> <label>unknown</label> - <nb_visits>25</nb_visits> - <nb_actions>28</nb_actions> + <nb_visits>29</nb_visits> + <nb_actions>34</nb_actions> <max_actions>3</max_actions> - <sum_visit_length>305</sum_visit_length> - <bounce_count>23</bounce_count> - <nb_visits_converted>23</nb_visits_converted> - <sum_daily_nb_uniq_visitors>25</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <sum_visit_length>550</sum_visit_length> + <bounce_count>25</bounce_count> + <nb_visits_converted>27</nb_visits_converted> + <sum_daily_nb_uniq_visitors>28</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>2</sum_daily_nb_users> </row> <row> <label>1024x768</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitFrequency.get_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitFrequency.get_month.xml index 3633fe591455905c0e862657698625d9b314bc0e..02a0dc72729117f205fa2c0c68544d8f1cafdeaf 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitFrequency.get_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitFrequency.get_month.xml @@ -1,14 +1,14 @@ <?xml version="1.0" encoding="utf-8" ?> <result> - <nb_uniq_visitors_returning>1</nb_uniq_visitors_returning> - <nb_users_returning>0</nb_users_returning> - <nb_visits_returning>1</nb_visits_returning> - <nb_actions_returning>1</nb_actions_returning> - <nb_visits_converted_returning>1</nb_visits_converted_returning> - <bounce_count_returning>1</bounce_count_returning> - <sum_visit_length_returning>0</sum_visit_length_returning> + <nb_uniq_visitors_returning>2</nb_uniq_visitors_returning> + <nb_users_returning>1</nb_users_returning> + <nb_visits_returning>2</nb_visits_returning> + <nb_actions_returning>2</nb_actions_returning> + <nb_visits_converted_returning>2</nb_visits_converted_returning> + <bounce_count_returning>2</bounce_count_returning> + <sum_visit_length_returning>1</sum_visit_length_returning> <max_actions_returning>1</max_actions_returning> <bounce_rate_returning>100%</bounce_rate_returning> <nb_actions_per_visit_returning>1</nb_actions_per_visit_returning> - <avg_time_on_site_returning>0</avg_time_on_site_returning> + <avg_time_on_site_returning>1</avg_time_on_site_returning> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitFrequency.get_range.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitFrequency.get_range.xml index f301254690deda6589c397b03bfdd8e93eb08cdc..c42125d07294aeb3f0d5e8db9fdafbb2aaf1b5ed 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitFrequency.get_range.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitFrequency.get_range.xml @@ -1,12 +1,12 @@ <?xml version="1.0" encoding="utf-8" ?> <result> - <nb_visits_returning>10</nb_visits_returning> - <nb_actions_returning>12</nb_actions_returning> - <nb_visits_converted_returning>9</nb_visits_converted_returning> - <bounce_count_returning>8</bounce_count_returning> - <sum_visit_length_returning>115</sum_visit_length_returning> + <nb_visits_returning>11</nb_visits_returning> + <nb_actions_returning>13</nb_actions_returning> + <nb_visits_converted_returning>10</nb_visits_converted_returning> + <bounce_count_returning>9</bounce_count_returning> + <sum_visit_length_returning>116</sum_visit_length_returning> <max_actions_returning>2</max_actions_returning> - <bounce_rate_returning>80%</bounce_rate_returning> + <bounce_rate_returning>82%</bounce_rate_returning> <nb_actions_per_visit_returning>1.2</nb_actions_per_visit_returning> - <avg_time_on_site_returning>12</avg_time_on_site_returning> + <avg_time_on_site_returning>11</avg_time_on_site_returning> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitTime.getByDayOfWeek_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitTime.getByDayOfWeek_month.xml index 1a729a8e268e2a97abcbb383ab686348f1baae9e..4de7a18047e3b9020bc519c4c62cb75ec7031e36 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitTime.getByDayOfWeek_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitTime.getByDayOfWeek_month.xml @@ -12,24 +12,24 @@ </row> <row> <label>Wednesday</label> - <nb_visits>2</nb_visits> - <nb_uniq_visitors>2</nb_uniq_visitors> - <nb_actions>2</nb_actions> - <nb_users>0</nb_users> - <sum_visit_length>0</sum_visit_length> - <bounce_count>2</bounce_count> - <nb_visits_converted>2</nb_visits_converted> + <nb_visits>5</nb_visits> + <nb_uniq_visitors>4</nb_uniq_visitors> + <nb_actions>6</nb_actions> + <nb_users>2</nb_users> + <sum_visit_length>3</sum_visit_length> + <bounce_count>4</bounce_count> + <nb_visits_converted>5</nb_visits_converted> <day_of_week>3</day_of_week> </row> <row> <label>Thursday</label> - <nb_visits>9</nb_visits> - <nb_uniq_visitors>9</nb_uniq_visitors> - <nb_actions>9</nb_actions> + <nb_visits>10</nb_visits> + <nb_uniq_visitors>10</nb_uniq_visitors> + <nb_actions>11</nb_actions> <nb_users>0</nb_users> - <sum_visit_length>0</sum_visit_length> + <sum_visit_length>242</sum_visit_length> <bounce_count>9</bounce_count> - <nb_visits_converted>9</nb_visits_converted> + <nb_visits_converted>10</nb_visits_converted> <day_of_week>4</day_of_week> </row> <row> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitTime.getVisitInformationPerLocalTime_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitTime.getVisitInformationPerLocalTime_month.xml index 427319a89f7637f90ee1f2b89a97ffc31b32768d..dc841363a5dab7a8580fe1c57f4dea0be3f78e83 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitTime.getVisitInformationPerLocalTime_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitTime.getVisitInformationPerLocalTime_month.xml @@ -123,13 +123,13 @@ </row> <row> <label>11h</label> - <nb_visits>0</nb_visits> - <nb_actions>0</nb_actions> - <max_actions>0</max_actions> - <sum_visit_length>0</sum_visit_length> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> <bounce_count>0</bounce_count> - <nb_visits_converted>0</nb_visits_converted> - <sum_daily_nb_uniq_visitors>0</sum_daily_nb_uniq_visitors> + <nb_visits_converted>1</nb_visits_converted> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> </row> <row> @@ -189,14 +189,14 @@ </row> <row> <label>17h</label> - <nb_visits>3</nb_visits> - <nb_actions>3</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> - <bounce_count>3</bounce_count> - <nb_visits_converted>2</nb_visits_converted> - <sum_daily_nb_uniq_visitors>3</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <nb_visits>6</nb_visits> + <nb_actions>7</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>3</sum_visit_length> + <bounce_count>5</bounce_count> + <nb_visits_converted>5</nb_visits_converted> + <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>2</sum_daily_nb_users> </row> <row> <label>18h</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitTime.getVisitInformationPerServerTime_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitTime.getVisitInformationPerServerTime_month.xml index 515e54eb3b42a9efe63a3da9fe9f7b6c42ecd7cc..144d6c4221799cd6cff6a335f51e5b8a7208f103 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitTime.getVisitInformationPerServerTime_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitTime.getVisitInformationPerServerTime_month.xml @@ -150,14 +150,23 @@ </row> <row> <label>11h</label> - <nb_visits>0</nb_visits> - <nb_actions>0</nb_actions> - <max_actions>0</max_actions> - <sum_visit_length>0</sum_visit_length> + <nb_visits>1</nb_visits> + <nb_actions>2</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>242</sum_visit_length> <bounce_count>0</bounce_count> <nb_visits_converted>0</nb_visits_converted> - <sum_daily_nb_uniq_visitors>0</sum_daily_nb_uniq_visitors> + <sum_daily_nb_uniq_visitors>1</sum_daily_nb_uniq_visitors> <sum_daily_nb_users>0</sum_daily_nb_users> + <goals> + <row idgoal='1'> + <nb_conversions>1</nb_conversions> + <nb_visits_converted>1</nb_visits_converted> + <revenue>5</revenue> + </row> + </goals> + <nb_conversions>1</nb_conversions> + <revenue>5</revenue> </row> <row> <label>12h</label> @@ -243,23 +252,23 @@ </row> <row> <label>17h</label> - <nb_visits>3</nb_visits> - <nb_actions>3</nb_actions> - <max_actions>1</max_actions> - <sum_visit_length>0</sum_visit_length> - <bounce_count>3</bounce_count> + <nb_visits>6</nb_visits> + <nb_actions>7</nb_actions> + <max_actions>2</max_actions> + <sum_visit_length>3</sum_visit_length> + <bounce_count>5</bounce_count> <nb_visits_converted>0</nb_visits_converted> - <sum_daily_nb_uniq_visitors>3</sum_daily_nb_uniq_visitors> - <sum_daily_nb_users>0</sum_daily_nb_users> + <sum_daily_nb_uniq_visitors>5</sum_daily_nb_uniq_visitors> + <sum_daily_nb_users>2</sum_daily_nb_users> <goals> <row idgoal='1'> - <nb_conversions>2</nb_conversions> - <nb_visits_converted>2</nb_visits_converted> - <revenue>10</revenue> + <nb_conversions>5</nb_conversions> + <nb_visits_converted>5</nb_visits_converted> + <revenue>25</revenue> </row> </goals> - <nb_conversions>2</nb_conversions> - <revenue>10</revenue> + <nb_conversions>5</nb_conversions> + <revenue>25</revenue> </row> <row> <label>18h</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByDaysSinceLast_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByDaysSinceLast_month.xml index c47de22fc427a4ea573df4ef7d568f80d43e22ad..005a1842ab8e57b8bf4ee5a8f5c36f655a514b35 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByDaysSinceLast_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByDaysSinceLast_month.xml @@ -2,11 +2,11 @@ <result> <row> <label>New visits</label> - <nb_visits>26</nb_visits> + <nb_visits>29</nb_visits> </row> <row> <label>0 days</label> - <nb_visits>0</nb_visits> + <nb_visits>1</nb_visits> </row> <row> <label>1 day</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByDaysSinceLast_range.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByDaysSinceLast_range.xml index c7ed81d100a3d282d7015cd8b671fa73eeeb1be3..a66c195749ed3c145e2584805cfcf269c7f5656a 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByDaysSinceLast_range.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByDaysSinceLast_range.xml @@ -2,11 +2,11 @@ <result> <row> <label>New visits</label> - <nb_visits>30</nb_visits> + <nb_visits>33</nb_visits> </row> <row> <label>0 days</label> - <nb_visits>3</nb_visits> + <nb_visits>4</nb_visits> </row> <row> <label>1 day</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByVisitCount_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByVisitCount_month.xml index 0830ca0d1001d1fe898981b5a48336803756185b..dcd45b3a61feb927fc86b149776a4c673ebbbb3e 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByVisitCount_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByVisitCount_month.xml @@ -2,7 +2,7 @@ <result> <row> <label>1 visit</label> - <nb_visits>27</nb_visits> + <nb_visits>31</nb_visits> <nb_visits_percentage>100%</nb_visits_percentage> </row> <row> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByVisitCount_range.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByVisitCount_range.xml index d7672ae30c7c4cf53f738fb563337ca73f10dba7..768a0961d2e81341d0f4dcfda9c13a2f7748e802 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByVisitCount_range.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsByVisitCount_range.xml @@ -2,8 +2,8 @@ <result> <row> <label>1 visit</label> - <nb_visits>33</nb_visits> - <nb_visits_percentage>83%</nb_visits_percentage> + <nb_visits>37</nb_visits> + <nb_visits_percentage>84%</nb_visits_percentage> </row> <row> <label>2 visits</label> @@ -18,7 +18,7 @@ <row> <label>4 visits</label> <nb_visits>1</nb_visits> - <nb_visits_percentage>3%</nb_visits_percentage> + <nb_visits_percentage>2%</nb_visits_percentage> </row> <row> <label>5 visits</label> @@ -33,7 +33,7 @@ <row> <label>7 visits</label> <nb_visits>1</nb_visits> - <nb_visits_percentage>3%</nb_visits_percentage> + <nb_visits_percentage>2%</nb_visits_percentage> </row> <row> <label>8 visits</label> @@ -58,7 +58,7 @@ <row> <label>51-100 visits</label> <nb_visits>1</nb_visits> - <nb_visits_percentage>3%</nb_visits_percentage> + <nb_visits_percentage>2%</nb_visits_percentage> </row> <row> <label>101-200 visits</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerPage_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerPage_month.xml index 4e6a9ab29ed46d6b301d05c0e6719866ac42632b..c00b8e2c507561b104aab774976a90606996a6c6 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerPage_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerPage_month.xml @@ -2,11 +2,11 @@ <result> <row> <label>1 page</label> - <nb_visits>25</nb_visits> + <nb_visits>27</nb_visits> </row> <row> <label>2 pages</label> - <nb_visits>1</nb_visits> + <nb_visits>3</nb_visits> </row> <row> <label>3 pages</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerPage_range.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerPage_range.xml index 11e27426c02910e033b31738392aaaf6ca903587..95adfb7f9a392ab71f5ad4463110850ea41eb38a 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerPage_range.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerPage_range.xml @@ -2,11 +2,11 @@ <result> <row> <label>1 page</label> - <nb_visits>34</nb_visits> + <nb_visits>36</nb_visits> </row> <row> <label>2 pages</label> - <nb_visits>3</nb_visits> + <nb_visits>5</nb_visits> </row> <row> <label>3 pages</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerVisitDuration_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerVisitDuration_month.xml index a64c14a9673c775fdd503e97427075177ab328bc..1f6410e079559a0422a70c4d49bbf63c407a73bc 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerVisitDuration_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerVisitDuration_month.xml @@ -2,7 +2,7 @@ <result> <row> <label>0-10s</label> - <nb_visits>25</nb_visits> + <nb_visits>28</nb_visits> </row> <row> <label>11-30s</label> @@ -22,7 +22,7 @@ </row> <row> <label>4-7 min</label> - <nb_visits>0</nb_visits> + <nb_visits>1</nb_visits> </row> <row> <label>7-10 min</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerVisitDuration_range.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerVisitDuration_range.xml index a0cba6d294af4130a971460d53030ac6379e1968..c53cacde6f045aee7db737ed3c1cd542e23f4ab8 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerVisitDuration_range.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitorInterest.getNumberOfVisitsPerVisitDuration_range.xml @@ -2,7 +2,7 @@ <result> <row> <label>0-10s</label> - <nb_visits>35</nb_visits> + <nb_visits>38</nb_visits> </row> <row> <label>11-30s</label> @@ -22,7 +22,7 @@ </row> <row> <label>4-7 min</label> - <nb_visits>0</nb_visits> + <nb_visits>1</nb_visits> </row> <row> <label>7-10 min</label> diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getActions_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getActions_month.xml index 3fb946966748c74c17e88efdbdab136d4c3a4f4b..8af80c337fce212214b9dcfe62d5beb85a63d248 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getActions_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getActions_month.xml @@ -1,2 +1,2 @@ <?xml version="1.0" encoding="utf-8" ?> -<result>30</result> \ No newline at end of file +<result>36</result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getBounceCount_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getBounceCount_month.xml index 4c77f1f6e6033e2c861e4fa18a79df304b9fdb8e..40bd2e592a5902bdf9d39b4085ea459ca3ae7737 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getBounceCount_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getBounceCount_month.xml @@ -1,2 +1,2 @@ <?xml version="1.0" encoding="utf-8" ?> -<result>25</result> \ No newline at end of file +<result>27</result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getSumVisitsLengthPretty_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getSumVisitsLengthPretty_month.xml index 0a9c671f558dd011c15ac06d9cc83093fbb44a61..e686bbc101b92aacf3b6bd5088e1e49a9d146822 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getSumVisitsLengthPretty_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getSumVisitsLengthPretty_month.xml @@ -1,2 +1,2 @@ <?xml version="1.0" encoding="utf-8" ?> -<result>5 min 5s</result> \ No newline at end of file +<result>9 min 10s</result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getSumVisitsLength_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getSumVisitsLength_month.xml index df25f1c1f33072b1eecf837e315e13a79f5aabbb..9674a59b3a4db881bbfc089f6080cab0be3c1793 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getSumVisitsLength_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getSumVisitsLength_month.xml @@ -1,2 +1,2 @@ <?xml version="1.0" encoding="utf-8" ?> -<result>305</result> \ No newline at end of file +<result>550</result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getUniqueVisitors_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getUniqueVisitors_month.xml index 40bd2e592a5902bdf9d39b4085ea459ca3ae7737..3fb946966748c74c17e88efdbdab136d4c3a4f4b 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getUniqueVisitors_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getUniqueVisitors_month.xml @@ -1,2 +1,2 @@ <?xml version="1.0" encoding="utf-8" ?> -<result>27</result> \ No newline at end of file +<result>30</result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getUsers_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getUsers_month.xml index f5722c2b947ae81c5390b2448986be96d1bf4ff3..13002b20179a7f01ad26b5afab050d0539adedf7 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getUsers_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getUsers_month.xml @@ -1,2 +1,2 @@ <?xml version="1.0" encoding="utf-8" ?> -<result>0</result> \ No newline at end of file +<result>2</result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getVisitsConverted_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getVisitsConverted_month.xml index 4c77f1f6e6033e2c861e4fa18a79df304b9fdb8e..46af1425a39189f6792635a1df8c5b1f72b6aa34 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getVisitsConverted_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getVisitsConverted_month.xml @@ -1,2 +1,2 @@ <?xml version="1.0" encoding="utf-8" ?> -<result>25</result> \ No newline at end of file +<result>29</result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getVisits_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getVisits_month.xml index 40bd2e592a5902bdf9d39b4085ea459ca3ae7737..51c650b8b2b37026485dd3f023536254a8638981 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getVisits_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.getVisits_month.xml @@ -1,2 +1,2 @@ <?xml version="1.0" encoding="utf-8" ?> -<result>27</result> \ No newline at end of file +<result>31</result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.get_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.get_month.xml index 327d564f479323b2855bbe76d66030db9b200090..1772684d5e10535b85f7c04d90c8a4228c063c3f 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.get_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs__VisitsSummary.get_month.xml @@ -1,14 +1,14 @@ <?xml version="1.0" encoding="utf-8" ?> <result> - <nb_uniq_visitors>27</nb_uniq_visitors> - <nb_users>0</nb_users> - <nb_visits>27</nb_visits> - <nb_actions>30</nb_actions> - <nb_visits_converted>25</nb_visits_converted> - <bounce_count>25</bounce_count> - <sum_visit_length>305</sum_visit_length> + <nb_uniq_visitors>30</nb_uniq_visitors> + <nb_users>2</nb_users> + <nb_visits>31</nb_visits> + <nb_actions>36</nb_actions> + <nb_visits_converted>29</nb_visits_converted> + <bounce_count>27</bounce_count> + <sum_visit_length>550</sum_visit_length> <max_actions>3</max_actions> - <bounce_rate>93%</bounce_rate> - <nb_actions_per_visit>1.1</nb_actions_per_visit> - <avg_time_on_site>11</avg_time_on_site> + <bounce_rate>87%</bounce_rate> + <nb_actions_per_visit>1.2</nb_actions_per_visit> + <avg_time_on_site>18</avg_time_on_site> </result> \ No newline at end of file diff --git a/tests/PHPUnit/System/expected/test_ImportLogs_withEnhancedAndLast7__MultiSites.getAll_month.xml b/tests/PHPUnit/System/expected/test_ImportLogs_withEnhancedAndLast7__MultiSites.getAll_month.xml index 0fb183d46f39b9010ac24c45a0f0d2a6b288de9b..bce2027e1c72e5cb3d5cf955b64ce91cfe0778f5 100644 --- a/tests/PHPUnit/System/expected/test_ImportLogs_withEnhancedAndLast7__MultiSites.getAll_month.xml +++ b/tests/PHPUnit/System/expected/test_ImportLogs_withEnhancedAndLast7__MultiSites.getAll_month.xml @@ -3,11 +3,11 @@ <result date="2012-08"> <row> <label>Piwik test</label> - <nb_visits>27</nb_visits> - <nb_actions>30</nb_actions> - <nb_pageviews>26</nb_pageviews> - <revenue>125</revenue> - <nb_conversions>25</nb_conversions> + <nb_visits>31</nb_visits> + <nb_actions>36</nb_actions> + <nb_pageviews>32</nb_pageviews> + <revenue>145</revenue> + <nb_conversions>29</nb_conversions> <visits_evolution>100%</visits_evolution> <actions_evolution>100%</actions_evolution> <pageviews_evolution>100%</pageviews_evolution> @@ -42,11 +42,11 @@ <nb_pageviews>10</nb_pageviews> <revenue>5</revenue> <nb_conversions>1</nb_conversions> - <visits_evolution>-96.3%</visits_evolution> - <actions_evolution>-66.7%</actions_evolution> - <pageviews_evolution>-61.5%</pageviews_evolution> - <revenue_evolution>-96%</revenue_evolution> - <nb_conversions_evolution>-96%</nb_conversions_evolution> + <visits_evolution>-96.8%</visits_evolution> + <actions_evolution>-72.2%</actions_evolution> + <pageviews_evolution>-68.8%</pageviews_evolution> + <revenue_evolution>-96.6%</revenue_evolution> + <nb_conversions_evolution>-96.6%</nb_conversions_evolution> <group /> <main_url>http://piwik.net</main_url> <idsite>1</idsite> diff --git a/tests/PHPUnit/UI b/tests/PHPUnit/UI index 6a6bbbb4db5f8243f462b94b3e57bc68e7366317..bc4eed362e35a721cd0911393a9cc1df6580a1d0 160000 --- a/tests/PHPUnit/UI +++ b/tests/PHPUnit/UI @@ -1 +1 @@ -Subproject commit 6a6bbbb4db5f8243f462b94b3e57bc68e7366317 +Subproject commit bc4eed362e35a721cd0911393a9cc1df6580a1d0 diff --git a/tests/PHPUnit/Unit/DataTable/Filter/AddSummaryRowTest.php b/tests/PHPUnit/Unit/DataTable/Filter/AddSummaryRowTest.php index f072011675b16b6315a27b3356b6fa6da1c3367a..b9701a88cde902c3bb5503df7fdd70a885f2abf0 100644 --- a/tests/PHPUnit/Unit/DataTable/Filter/AddSummaryRowTest.php +++ b/tests/PHPUnit/Unit/DataTable/Filter/AddSummaryRowTest.php @@ -11,6 +11,9 @@ namespace Piwik\Tests\Unit\DataTable\Filter; use Piwik\DataTable; use Piwik\DataTable\Row; +/** + * @group DataTableTest + */ class DataTable_Filter_AddSummaryRowTest extends \PHPUnit_Framework_TestCase { /** diff --git a/tests/PHPUnit/Unit/DataTable/Filter/ExcludeLowPopulationTest.php b/tests/PHPUnit/Unit/DataTable/Filter/ExcludeLowPopulationTest.php index 6e8eb733b8c5775044cd65e9ee39f1fbc774f191..0f0675114f20c4f974233a1fe637fdad84383fa5 100644 --- a/tests/PHPUnit/Unit/DataTable/Filter/ExcludeLowPopulationTest.php +++ b/tests/PHPUnit/Unit/DataTable/Filter/ExcludeLowPopulationTest.php @@ -12,6 +12,9 @@ use Piwik\DataTable\Filter\ExcludeLowPopulation; use Piwik\DataTable; use Piwik\DataTable\Row; +/** + * @group DataTableTest + */ class DataTable_Filter_ExcludeLowPopulationTest extends \PHPUnit_Framework_TestCase { protected function getTestDataTable() diff --git a/tests/PHPUnit/Unit/DataTable/Filter/LimitTest.php b/tests/PHPUnit/Unit/DataTable/Filter/LimitTest.php index 94d2d4c84be1f2a588ddb96bb98b527f9758da34..753220542c808ef37330903ec47e0673e5e38166 100644 --- a/tests/PHPUnit/Unit/DataTable/Filter/LimitTest.php +++ b/tests/PHPUnit/Unit/DataTable/Filter/LimitTest.php @@ -12,6 +12,9 @@ use Piwik\DataTable\Filter\Limit; use Piwik\DataTable; use Piwik\DataTable\Row; +/** + * @group DataTableTest + */ class DataTable_Filter_LimitTest extends \PHPUnit_Framework_TestCase { /** @@ -39,9 +42,7 @@ class DataTable_Filter_LimitTest extends \PHPUnit_Framework_TestCase return $table; } - /** - * @group Core - */ + public function testNormal() { $offset = 2; @@ -55,9 +56,7 @@ class DataTable_Filter_LimitTest extends \PHPUnit_Framework_TestCase $this->assertEquals(10, $table->getMetadata(DataTable::TOTAL_ROWS_BEFORE_LIMIT_METADATA_NAME)); } - /** - * @group Core - */ + public function testLimitLessThanCountShouldReturnCountLimit() { $offset = 2; @@ -71,9 +70,7 @@ class DataTable_Filter_LimitTest extends \PHPUnit_Framework_TestCase $this->assertEquals(10, $table->getMetadata(DataTable::TOTAL_ROWS_BEFORE_LIMIT_METADATA_NAME)); } - /** - * @group Core - */ + public function testLimitIsCountShouldNotDeleteAnything() { $offset = 0; @@ -88,9 +85,7 @@ class DataTable_Filter_LimitTest extends \PHPUnit_Framework_TestCase $this->assertEquals(10, $table->getMetadata(DataTable::TOTAL_ROWS_BEFORE_LIMIT_METADATA_NAME)); } - /** - * @group Core - */ + public function testLimitGreaterThanCountShouldReturnCountUntilCount() { $offset = 5; @@ -105,9 +100,7 @@ class DataTable_Filter_LimitTest extends \PHPUnit_Framework_TestCase $this->assertEquals(10, $table->getMetadata(DataTable::TOTAL_ROWS_BEFORE_LIMIT_METADATA_NAME)); } - /** - * @group Core - */ + public function testLimitIsNullShouldReturnCountIsOffset() { $offset = 1; @@ -120,9 +113,7 @@ class DataTable_Filter_LimitTest extends \PHPUnit_Framework_TestCase $this->assertEquals(10, $table->getMetadata(DataTable::TOTAL_ROWS_BEFORE_LIMIT_METADATA_NAME)); } - /** - * @group Core - */ + public function testOffsetJustBeforeSummaryRowShouldJustReturnSummaryRow() { $offset = 9; @@ -136,9 +127,7 @@ class DataTable_Filter_LimitTest extends \PHPUnit_Framework_TestCase $this->assertEquals(10, $table->getMetadata(DataTable::TOTAL_ROWS_BEFORE_LIMIT_METADATA_NAME)); } - /** - * @group Core - */ + public function testOffsetJustBeforeSummaryRowWithBigLimitShouldJustReturnSummaryRow() { $offset = 9; @@ -152,9 +141,7 @@ class DataTable_Filter_LimitTest extends \PHPUnit_Framework_TestCase $this->assertEquals(10, $table->getMetadata(DataTable::TOTAL_ROWS_BEFORE_LIMIT_METADATA_NAME)); } - /** - * @group Core - */ + public function testOffsetBeforeSummaryRowShouldJustReturnRowAndSummaryRow() { $offset = 8; @@ -168,9 +155,7 @@ class DataTable_Filter_LimitTest extends \PHPUnit_Framework_TestCase $this->assertEquals(10, $table->getMetadata(DataTable::TOTAL_ROWS_BEFORE_LIMIT_METADATA_NAME)); } - /** - * @group Core - */ + public function testOffsetGreaterThanCountShouldReturnEmptyTable() { $offset = 10; @@ -182,9 +167,7 @@ class DataTable_Filter_LimitTest extends \PHPUnit_Framework_TestCase $this->assertEquals(10, $table->getMetadata(DataTable::TOTAL_ROWS_BEFORE_LIMIT_METADATA_NAME)); } - /** - * @group Core - */ + public function testLimitIsZeroShouldReturnEmptyTable() { $offset = 0; diff --git a/tests/PHPUnit/Unit/DataTable/Filter/PatternRecursiveTest.php b/tests/PHPUnit/Unit/DataTable/Filter/PatternRecursiveTest.php index 4c9cd46ab3bd30f206545d756d7042fd1976eb14..8ee9c439dddde334873c7532704c3d54790b7c82 100644 --- a/tests/PHPUnit/Unit/DataTable/Filter/PatternRecursiveTest.php +++ b/tests/PHPUnit/Unit/DataTable/Filter/PatternRecursiveTest.php @@ -11,6 +11,9 @@ namespace Piwik\Tests\Unit\DataTable\Filter; use Piwik\DataTable; use Piwik\DataTable\Row; +/** + * @group DataTableTest + */ class DataTable_Filter_PatternRecursiveTest extends \PHPUnit_Framework_TestCase { /** diff --git a/tests/PHPUnit/Unit/DataTable/Filter/PatternTest.php b/tests/PHPUnit/Unit/DataTable/Filter/PatternTest.php index e9d63f1d98ae1e4f923d7d6c242ee5c44b069b2d..5c97588a3c22fa1fa0f6a30953271c70b6681c99 100644 --- a/tests/PHPUnit/Unit/DataTable/Filter/PatternTest.php +++ b/tests/PHPUnit/Unit/DataTable/Filter/PatternTest.php @@ -11,6 +11,9 @@ namespace Piwik\Tests\Unit\DataTable\Filter; use Piwik\DataTable; use Piwik\DataTable\Row; +/** + * @group DataTableTest + */ class DataTable_Filter_PatternTest extends \PHPUnit_Framework_TestCase { /** diff --git a/tests/PHPUnit/Unit/DataTable/Filter/PivotByDimensionTest.php b/tests/PHPUnit/Unit/DataTable/Filter/PivotByDimensionTest.php index fd85b3a0101dd9a1b35d5056e91dc478c31bda5d..d77a3ca7ed9fa939a3e11cbc0fa855bb84909f89 100644 --- a/tests/PHPUnit/Unit/DataTable/Filter/PivotByDimensionTest.php +++ b/tests/PHPUnit/Unit/DataTable/Filter/PivotByDimensionTest.php @@ -17,7 +17,7 @@ use PHPUnit_Framework_TestCase; use Exception; /** - * @group Core + * @group DataTableTest */ class PivotByDimensionTest extends PHPUnit_Framework_TestCase { diff --git a/tests/PHPUnit/Unit/DataTable/Filter/RangeCheckTest.php b/tests/PHPUnit/Unit/DataTable/Filter/RangeCheckTest.php index 3c1d91a3576c7f9b23be2f5151af23def7986b65..0deccd217f807149fcaffb27b2f15b51e4d2042d 100644 --- a/tests/PHPUnit/Unit/DataTable/Filter/RangeCheckTest.php +++ b/tests/PHPUnit/Unit/DataTable/Filter/RangeCheckTest.php @@ -12,11 +12,12 @@ use Piwik\DataTable\Filter\RangeCheck; use Piwik\DataTable; use Piwik\DataTable\Row; +/** + * @group DataTableTest + */ class DataTable_Filter_RangeCheckTest extends \PHPUnit_Framework_TestCase { - /** - * @group Core - */ + public function testRangeCheckNormalDataTable() { $table = new DataTable(); @@ -34,9 +35,7 @@ class DataTable_Filter_RangeCheckTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expectedOrder, $table->getColumn('count')); } - /** - * @group Core - */ + public function testRangeCheckNormalDataTableNonIntegerValues() { $table = new DataTable(); diff --git a/tests/PHPUnit/Unit/DataTable/Filter/SortTest.php b/tests/PHPUnit/Unit/DataTable/Filter/SortTest.php index 64eab67a10352d683c21c7b47737a80dad98c2de..34ec2a2c9a74ba3d0a188b46900cc0ebd5ffff0c 100644 --- a/tests/PHPUnit/Unit/DataTable/Filter/SortTest.php +++ b/tests/PHPUnit/Unit/DataTable/Filter/SortTest.php @@ -13,13 +13,11 @@ use Piwik\DataTable; use Piwik\DataTable\Row; /** - * @group SortTest + * @group DataTableTest */ class DataTable_Filter_SortTest extends \PHPUnit_Framework_TestCase { - /** - * @group Core - */ + public function testNormalSortDescending() { $table = new DataTable(); @@ -34,9 +32,7 @@ class DataTable_Filter_SortTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expectedOrder, $table->getColumn('label')); } - /** - * @group Core - */ + public function testNormalSortAscending() { $table = new DataTable(); @@ -51,9 +47,7 @@ class DataTable_Filter_SortTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expectedOrder, $table->getColumn('label')); } - /** - * @group Core - */ + public function testMissingColumnValuesShouldAppearLastAfterSortAsc() { $table = new DataTable(); @@ -71,9 +65,7 @@ class DataTable_Filter_SortTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expectedOrder, $table->getColumn('label')); } - /** - * @group Core - */ + public function testMissingColumnValuesShouldAppearLastAfterSortDesc() { $table = new DataTable(); diff --git a/tests/PHPUnit/Unit/DataTable/Filter/TruncateTest.php b/tests/PHPUnit/Unit/DataTable/Filter/TruncateTest.php index d82e8da4411b8a635bc54b99d73113e618d7f972..b3b5710f91e88756065c42d14ae3cb7d12330cb2 100644 --- a/tests/PHPUnit/Unit/DataTable/Filter/TruncateTest.php +++ b/tests/PHPUnit/Unit/DataTable/Filter/TruncateTest.php @@ -12,11 +12,12 @@ use Piwik\DataTable\Filter\Truncate; use Piwik\DataTable; use Piwik\DataTable\Row; +/** + * @group DataTableTest + */ class DataTable_Filter_TruncateTest extends \PHPUnit_Framework_TestCase { - /** - * @group Core - */ + public function testUnrelatedDataTableNotFiltered() { // remark: this unit test would become invalid and would need to be rewritten if @@ -38,9 +39,7 @@ class DataTable_Filter_TruncateTest extends \PHPUnit_Framework_TestCase $filter->filter($dataTableBeingFiltered); } - /** - * @group Core - */ + public function testForInfiniteRecursion() { $dataTableBeingFiltered = new DataTable(); @@ -62,9 +61,7 @@ class DataTable_Filter_TruncateTest extends \PHPUnit_Framework_TestCase $filter->filter($dataTableBeingFiltered); } - /** - * @group Core - */ + public function testOffsetIsCountSummaryRowShouldBeTheRow() { $table = $this->getDataTableCount5(); @@ -74,9 +71,7 @@ class DataTable_Filter_TruncateTest extends \PHPUnit_Framework_TestCase $this->assertTrue(Row::isEqual($table->getLastRow(), $this->getRow4())); } - /** - * @group Core - */ + public function testOffsetIsLessThanCountSummaryRowShouldBeTheSum() { $table = $this->getDataTableCount5(); @@ -89,9 +84,7 @@ class DataTable_Filter_TruncateTest extends \PHPUnit_Framework_TestCase $this->assertEquals(array_keys($table->getLastRow()->getColumns()), array_keys($expectedRow->getColumns())); } - /** - * @group Core - */ + public function testOffsetIsMoreThanCountShouldNotTruncate() { $table = $this->getDataTableCount5(); @@ -101,9 +94,7 @@ class DataTable_Filter_TruncateTest extends \PHPUnit_Framework_TestCase $this->assertTrue(Row::isEqual($table->getLastRow(), $this->getRow4())); } - /** - * @group Core - */ + public function testWhenThereIsAlreadyASummaryRowShouldReplaceTheSummaryRow() { $table = $this->getDataTableCount5(); @@ -116,9 +107,7 @@ class DataTable_Filter_TruncateTest extends \PHPUnit_Framework_TestCase $this->assertTrue(Row::isEqual($table->getLastRow(), $expectedRow)); } - /** - * @group Core - */ + public function testSumTablesWithSummaryRowShouldSumTheSummaryRow() { // row0, row1, row2, rowSummary1 @@ -142,9 +131,7 @@ class DataTable_Filter_TruncateTest extends \PHPUnit_Framework_TestCase $this->assertTrue(DataTable::isEqual($expectedTable, $table1)); } - /** - * @group Core - */ + public function testAddOneTableWithSummaryRow() { // row0, row1, row2, rowSummary1 @@ -169,9 +156,7 @@ class DataTable_Filter_TruncateTest extends \PHPUnit_Framework_TestCase } - /** - * @group Core - */ + public function testWhenRowsInRandomOrderButSortSpecifiedShouldComputeSummaryRowAfterSort() { $table = new DataTable; diff --git a/tests/PHPUnit/Unit/DataTable/MapTest.php b/tests/PHPUnit/Unit/DataTable/MapTest.php index 659e76ac8fc227d50c2142c805d69f7206593225..179e3f11df07f036ea537391bb57a5cb50cde24d 100644 --- a/tests/PHPUnit/Unit/DataTable/MapTest.php +++ b/tests/PHPUnit/Unit/DataTable/MapTest.php @@ -7,6 +7,9 @@ use Piwik\DataTable\Manager; use Piwik\DataTable; use Piwik\DataTable\Row; +/** + * @group DataTableTest + */ class Test_DataTable_Map extends \PHPUnit_Framework_TestCase { public function setUp() diff --git a/tests/PHPUnit/Unit/DataTable/Renderer/CSVTest.php b/tests/PHPUnit/Unit/DataTable/Renderer/CSVTest.php index 85691cab26f4ea6fa79f6a2cfa9b47398a2d79d7..c6fd94e40667f052d03a3e25698a13b8ea6b7770 100644 --- a/tests/PHPUnit/Unit/DataTable/Renderer/CSVTest.php +++ b/tests/PHPUnit/Unit/DataTable/Renderer/CSVTest.php @@ -14,6 +14,9 @@ use Piwik\DataTable\Renderer\Csv; use Piwik\DataTable\Row; use Piwik\DataTable\Simple; +/** + * @group DataTableTest + */ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase { public function setUp() @@ -93,9 +96,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase return $table; } - /** - * @group Core - */ + public function testCSVTest1() { $dataTable = $this->_getDataTableTest(); @@ -111,9 +112,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testCSVTest2() { $dataTable = $this->_getDataTableSimpleTest(); @@ -125,9 +124,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testCSVTest3() { $dataTable = $this->_getDataTableSimpleOneRowTest(); @@ -139,9 +136,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testCSVTest5() { $dataTable = $this->_getDataTableSimpleOneZeroRowTest(); @@ -153,9 +148,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testCSVTest4() { $dataTable = $this->_getDataTableEmpty(); @@ -167,9 +160,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testCSVTest6() { $dataTable = $this->_getDataTableSimpleOneFalseRowTest(); @@ -181,9 +172,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testCSVRendererCorrectlyEscapesHeadersAndValues() { $dataTable = $this->_getDataTableSimpleWithCommasInCells(); @@ -301,9 +290,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase return $table; } - /** - * @group Core - */ + public function testCSVMapTest1() { $dataTable = $this->_getDataTableMapTest(); @@ -320,9 +307,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testCSVMapTest2() { $dataTable = $this->_getDataTableSimpleMapTest(); @@ -335,9 +320,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testCSVMapTest3() { $dataTable = $this->_getDataTableSimpleOneRowMapTest(); @@ -349,9 +332,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testCSVMapisMadeOfMapTest1() { $dataTable = $this->_getDataTableMap_containsDataTableMap_normal(); @@ -368,9 +349,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testCSVMapIsMadeOfMapTest2() { $dataTable = $this->_getDataTableMap_containsDataTableMap_simple(); @@ -383,9 +362,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testCSVMapIsMadeOfMapTest3() { $dataTable = $this->_getDataTableMap_containsDataTableMap_simpleOneRow(); @@ -397,9 +374,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testRenderArray1() { $data = array(); @@ -412,9 +387,7 @@ class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testRenderArray2() { $data = array('a', 'b', 'c'); @@ -429,9 +402,7 @@ c'; $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testRenderArray3() { $data = array('a' => 'b', 'c' => 'd', 'e' => 'f', 5 => 'g'); @@ -445,9 +416,7 @@ b,d,f,g'; $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testRenderArray4() { $data = array('a' => 'b'); diff --git a/tests/PHPUnit/Unit/DataTable/Renderer/ConsoleTest.php b/tests/PHPUnit/Unit/DataTable/Renderer/ConsoleTest.php index 686f6a1be68d64d23cefb8291971a239c6d935e3..209a7a37a7e6d368ae019bb970422a1c8753ea08 100644 --- a/tests/PHPUnit/Unit/DataTable/Renderer/ConsoleTest.php +++ b/tests/PHPUnit/Unit/DataTable/Renderer/ConsoleTest.php @@ -13,6 +13,9 @@ use Piwik\DataTable; use Piwik\DataTable\Renderer\Console; use Piwik\DataTable\Row; +/** + * @group DataTableTest + */ class DataTable_Renderer_ConsoleTest extends \PHPUnit_Framework_TestCase { public function setUp() @@ -89,9 +92,7 @@ class DataTable_Renderer_ConsoleTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testRenderArray1() { $data = array(); @@ -104,9 +105,7 @@ class DataTable_Renderer_ConsoleTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testRenderArray2() { $data = array('a', 'b', 'c'); @@ -121,9 +120,7 @@ class DataTable_Renderer_ConsoleTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testRenderArray3() { $data = array('a' => 'b', 'c' => 'd', 'e' => 'f', 5 => 'g'); @@ -136,9 +133,7 @@ class DataTable_Renderer_ConsoleTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testRenderArray4() { $data = array('a' => 'b'); diff --git a/tests/PHPUnit/Unit/DataTable/Renderer/JSONTest.php b/tests/PHPUnit/Unit/DataTable/Renderer/JSONTest.php index 738439474c1ce43c6185181b234098c3e9fa5271..754424182ca12e238e1b650a944e4696a0590a10 100644 --- a/tests/PHPUnit/Unit/DataTable/Renderer/JSONTest.php +++ b/tests/PHPUnit/Unit/DataTable/Renderer/JSONTest.php @@ -14,6 +14,9 @@ use Piwik\DataTable\Renderer\Json; use Piwik\DataTable\Row; use Piwik\DataTable\Simple; +/** + * @group DataTableTest + */ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase { public function setUp() @@ -93,9 +96,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase return $table; } - /** - * @group Core - */ + public function testJSONTest1() { $dataTable = $this->_getDataTableTest(); @@ -108,9 +109,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testJSONTest2() { $dataTable = $this->_getDataTableSimpleTest(); @@ -121,9 +120,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testJSONTest3() { $dataTable = $this->_getDataTableSimpleOneRowTest(); @@ -133,9 +130,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testJSONTest4() { $dataTable = $this->_getDataTableEmpty(); @@ -145,9 +140,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testJSONTest5() { $dataTable = $this->_getDataTableSimpleOneZeroRowTest(); @@ -157,9 +150,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testJSONTest6() { $dataTable = $this->_getDataTableSimpleOneFalseRowTest(); @@ -274,9 +265,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase return $table; } - /** - * @group Core - */ + public function testJSONArrayTest1() { $dataTable = $this->_getDataTableMapTest(); @@ -288,9 +277,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testJSONMapTest2() { $dataTable = $this->_getDataTableSimpleMapTest(); @@ -303,9 +290,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testJSONMapTest3() { $dataTable = $this->_getDataTableSimpleOneRowMapTest(); @@ -317,9 +302,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testJSONMapIsMadeOfMapTest1() { $dataTable = $this->_getDataTableMap_containsDataTableMap_normal(); @@ -330,9 +313,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testJSONMapIsMadeOfMapTest2() { $dataTable = $this->_getDataTableMap_containsDataTableMap_simple(); @@ -345,9 +326,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testJSONMapIsMadeOfMapTest3() { $dataTable = $this->_getDataTableMap_containsDataTableMap_simpleOneRow(); @@ -359,9 +338,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testRenderArray1() { $data = array(); @@ -373,9 +350,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testRenderArray2() { $data = array('a', 'b', 'c', array('a' => 'b'), array(1, 2)); @@ -387,9 +362,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testRenderArray3() { $data = array('a' => 'b', 'c' => 'd', 'e' => 'f', 5 => 'g'); @@ -401,9 +374,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testRenderArray4() { $data = array('a' => 'b', 'c' => array(1, 2, 3, 4), 'e' => array('f' => 'g', 'h' => 'i', 'j' => 'k')); @@ -415,9 +386,7 @@ class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testRenderArray5() { $data = array('a' => 'b'); diff --git a/tests/PHPUnit/Unit/DataTable/Renderer/PHPTest.php b/tests/PHPUnit/Unit/DataTable/Renderer/PHPTest.php index e3201dfbe6b2f650902cafc4f9784f3f0cc837ee..de8128cfb9a718cc3794ca218e849cabdc632098 100644 --- a/tests/PHPUnit/Unit/DataTable/Renderer/PHPTest.php +++ b/tests/PHPUnit/Unit/DataTable/Renderer/PHPTest.php @@ -14,6 +14,9 @@ use Piwik\DataTable\Renderer\Php; use Piwik\DataTable\Row; use Piwik\DataTable\Simple; +/** + * @group DataTableTest + */ class DataTable_Renderer_PHPTest extends \PHPUnit_Framework_TestCase { public function setUp() @@ -93,9 +96,7 @@ class DataTable_Renderer_PHPTest extends \PHPUnit_Framework_TestCase return $table; } - /** - * @group Core - */ + public function testPHPTest1() { $dataTable = $this->_getDataTableTest(); @@ -157,9 +158,7 @@ class DataTable_Renderer_PHPTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testPHPTest2() { $dataTable = $this->_getDataTableSimpleTest(); @@ -176,9 +175,7 @@ class DataTable_Renderer_PHPTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testPHPTest3() { $dataTable = $this->_getDataTableSimpleOneRowTest(); @@ -188,9 +185,7 @@ class DataTable_Renderer_PHPTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testPHPTest4() { $dataTable = $this->_getDataTableEmpty(); @@ -200,9 +195,7 @@ class DataTable_Renderer_PHPTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testPHPTest5() { $dataTable = $this->_getDataTableSimpleOneZeroRowTest(); @@ -212,9 +205,7 @@ class DataTable_Renderer_PHPTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testPHPTest6() { $dataTable = $this->_getDataTableSimpleOneFalseRowTest(); @@ -329,9 +320,7 @@ class DataTable_Renderer_PHPTest extends \PHPUnit_Framework_TestCase return $table; } - /** - * @group Core - */ + public function testPHPMapTest1() { $dataTable = $this->_getDataTableMapTest(); @@ -383,9 +372,7 @@ class DataTable_Renderer_PHPTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testPHPMapTest2() { $dataTable = $this->_getDataTableSimpleMapTest(); @@ -410,9 +397,7 @@ class DataTable_Renderer_PHPTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testPHPMapTest3() { $dataTable = $this->_getDataTableSimpleOneRowMapTest(); @@ -428,9 +413,7 @@ class DataTable_Renderer_PHPTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testPHPMapIsMadeOfMapTest1() { $dataTable = $this->_getDataTableMap_containsDataTableMap_normal(); @@ -484,9 +467,7 @@ class DataTable_Renderer_PHPTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testPHPMapIsMadeOfMapTest2() { $dataTable = $this->_getDataTableMap_containsDataTableMap_simple(); @@ -512,9 +493,7 @@ class DataTable_Renderer_PHPTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testPHPMapIsMadeOfMapTest3() { $dataTable = $this->_getDataTableMap_containsDataTableMap_simpleOneRow(); diff --git a/tests/PHPUnit/Unit/DataTable/Renderer/XMLTest.php b/tests/PHPUnit/Unit/DataTable/Renderer/XMLTest.php index 1abfe94b06c9b55f69f3cdeda5d79e9d184558b5..e9b02a9bd1305bfc2983b60074076741096c34fd 100644 --- a/tests/PHPUnit/Unit/DataTable/Renderer/XMLTest.php +++ b/tests/PHPUnit/Unit/DataTable/Renderer/XMLTest.php @@ -14,6 +14,9 @@ use Piwik\DataTable\Renderer\Xml; use Piwik\DataTable\Row; use Piwik\DataTable\Simple; +/** + * @group DataTableTest + */ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase { public function setUp() @@ -93,9 +96,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase return $table; } - /** - * @group Core - */ + public function testXMLTest1() { $dataTable = $this->_getDataTableTest(); @@ -152,9 +153,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testXMLTest2() { $dataTable = $this->_getDataTableSimpleTest(); @@ -172,9 +171,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testXMLTest3() { $dataTable = $this->_getDataTableSimpleOneRowTest(); @@ -185,9 +182,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testXMLTest4() { $dataTable = $this->_getDataTableEmpty(); @@ -198,9 +193,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testXMLTest5() { $dataTable = $this->_getDataTableSimpleOneZeroRowTest(); @@ -211,9 +204,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testXMLTest6() { $dataTable = $this->_getDataTableSimpleOneFalseRowTest(); @@ -224,9 +215,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testXMLRendererSuccessfullyRendersWhenSimpleDataTableColumnsHaveInvalidXmlCharacters() { $dataTable = $this->_getDataTableSimpleWithInvalidChars(); @@ -241,9 +230,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testXMLRendererSuccessfullyRendersWhenDataTableColumnsHaveInvalidXmlCharacters() { $dataTable = $this->_getDataTableWithInvalidChars(); @@ -365,9 +352,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase return $table; } - /** - * @group Core - */ + public function testXMLMapTest1() { $dataTable = $this->_getDataTableMapTest(); @@ -412,9 +397,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testXMLArrayIsMadeOfMapTest1() { $dataTable = $this->_getDataTableMap_containsDataTableMap_normal(); @@ -463,9 +446,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testXMLMapTest2() { $dataTable = $this->_getDataTableSimpleMapTest(); @@ -487,9 +468,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testXMLArrayIsMadeOfMapTest2() { $dataTable = $this->_getDataTableMap_containsDataTableMap_simple(); @@ -513,9 +492,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testXMLMapTest3() { $dataTable = $this->_getDataTableSimpleOneRowMapTest(); @@ -532,9 +509,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testXMLArrayIsMadeOfMapTest3() { $dataTable = $this->_getDataTableMap_containsDataTableMap_simpleOneRow(); @@ -552,9 +527,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $rendered); } - /** - * @group Core - */ + public function testRenderArray1() { $data = array(); @@ -567,9 +540,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testRenderArray2() { $data = array("firstElement", @@ -592,9 +563,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testRenderArray3() { $data = array('a' => 'b', 'c' => 'd', 'e' => 'f', 5 => 'g'); @@ -614,9 +583,7 @@ class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase $this->assertEquals($expected, $render->render()); } - /** - * @group Core - */ + public function testRenderArray4() { $data = array('c' => array(1, 2, 3, 4), 'e' => array('f' => 'g', 'h' => 'i', 'j' => 'k')); diff --git a/tests/PHPUnit/Unit/DataTable/RowTest.php b/tests/PHPUnit/Unit/DataTable/RowTest.php index 53a072fa3614d9f59b1d44ea5ce608860afb6083..7033299df57ce514b807709d65cc12a9802f4743 100644 --- a/tests/PHPUnit/Unit/DataTable/RowTest.php +++ b/tests/PHPUnit/Unit/DataTable/RowTest.php @@ -12,7 +12,7 @@ use Piwik\DataTable; use Piwik\DataTable\Row; /** - * @group Core + * @group DataTableTest */ class RowTest extends \PHPUnit_Framework_TestCase { diff --git a/tests/PHPUnit/Unit/DataTableTest.php b/tests/PHPUnit/Unit/DataTableTest.php index 30320f32ce1a98071e2d678c6b36d6234fd88e01..b36dbd514613359cd9bb8840581c370c648d0154 100644 --- a/tests/PHPUnit/Unit/DataTableTest.php +++ b/tests/PHPUnit/Unit/DataTableTest.php @@ -14,6 +14,9 @@ use Piwik\DataTable\Row; use Piwik\DataTable; use Piwik\Timer; +/** + * @group DataTableTest + */ class DataTableTest extends \PHPUnit_Framework_TestCase { /** diff --git a/tests/resources/access-logs/fake_logs_custom_iis.log b/tests/resources/access-logs/fake_logs_custom_iis.log new file mode 100644 index 0000000000000000000000000000000000000000..d7ff476a6c5cff22e345e748c34e3c70fbd73aa5 --- /dev/null +++ b/tests/resources/access-logs/fake_logs_custom_iis.log @@ -0,0 +1,8 @@ +#Software: IIS Advanced Logging Module +#Version: 1.0 +#Start-Date: 2014-11-18 00:00:00.128 +#Fields: date-local time-local s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent) cs(Referer) cs(Host) sc-status sc-substatus sc-win32-status TimeTakenMS +2012-08-15 17:00:00.363 10.10.28.140 GET /Products/theProduct - 80 user1 "70.95.0.0" "Mozilla/5.0 (Linux; Android 4.4.4; SM-G900V Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.59 Mobile Safari/537.36" "http://example.com/Search/SearchResults.pg?informationRecipient.languageCode.c=en" "xzy.example.com" 200 0 0 109 +2012-08-15 17:00:00.660 10.10.28.140 GET /Topic/hw43061 - 80 user1 "70.95.32.0" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2227.1 Safari/537.36" - "example.hello.com" 301 0 0 0 +2012-08-15 17:00:00.675 10.10.28.140 GET /hello/world/6,681965 - 80 - "173.5.0.0" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36" - "hello.example.com" 404 0 0 359 +2012-08-15 17:30:00.675 10.10.28.140 GET /hello/from/another/world/6,681965 - 80 user2 "173.5.0.0" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/37.0.2062.124 Safari/537.36" - "hello.example.com" 200 0 0 359 diff --git a/tests/resources/access-logs/fake_logs_netscaler.log b/tests/resources/access-logs/fake_logs_netscaler.log new file mode 100644 index 0000000000000000000000000000000000000000..17035db670f3e37384f83076db7408ba60c85925 --- /dev/null +++ b/tests/resources/access-logs/fake_logs_netscaler.log @@ -0,0 +1,6 @@ +#Version: 1.0 +#Software: Netscaler Web Logging(NSWL) +#Date: 2014-02-18 11:55:13 +#Fields: date time c-ip cs-username sc-servicename s-ip s-port cs-method cs-uri-stem cs-uri-query sc-status cs-bytes sc-bytes time-taken cs-version cs(User-Agent) cs(Cookie) cs(Referer) +2012-08-16 11:55:13 172.20.1.0 - HTTP 192.168.6.254 8080 GET /Citrix/XenApp/Wan/auth/login.jsp - 302 247 355 0 HTTP/1.1 Mozilla/4.0+(compatible;+MSIE+7.0;+Windows+NT+5.1;+Trident/4.0;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727;+.NET+CLR+3.0.04506.648;+.NET+CLR+3.5.21022) - - +2012-08-16 11:59:13 172.20.1.0 - HTTP 192.168.6.254 8080 GET /Citrix/XenApp/Wan/auth/silentDetection.jsp - 200 310 5609 0 HTTP/1.1 Mozilla/4.0+(compatible;+MSIE+7.0;+Windows+NT+5.1;+Trident/4.0;+.NET+CLR+1.1.4322;+.NET+CLR+2.0.50727;+.NET+CLR+3.0.04506.648;+.NET+CLR+3.5.21022) JSESSIONID=7BBF2F11B80261B27D23010421412323 - \ No newline at end of file