diff --git a/LEGALNOTICE b/LEGALNOTICE
index 561e2ff82aa5cbd88c8fb905f688d162d6bb5556..20c372a493aef0b658dd61ed91c7ee68fee6e070 100644
--- a/LEGALNOTICE
+++ b/LEGALNOTICE
@@ -73,6 +73,14 @@ SEPARATELY LICENSED COMPONENTS AND LIBRARIES
 	Link:  https://github.com/piwik/piwik/blob/master/libs/UserAgentParser/
 	License:  New BSD
 
+	Name:  Piwik/Decompress
+	Link:  https://github.com/piwik/component-decompress
+	License:  LGPL v3.0
+
+	Name:  Piwik/Network
+	Link:  https://github.com/piwik/component-network
+	License:  LGPL v3.0
+
 
 THIRD-PARTY COMPONENTS AND LIBRARIES
 
diff --git a/composer.lock b/composer.lock
index 25b4d4d24750074e12d1d6e59f39bc9bfb598dc4..f68cc7508c4a70d29b5ac60f3861f920fb82d6af 100644
--- a/composer.lock
+++ b/composer.lock
@@ -210,17 +210,17 @@
         },
         {
             "name": "symfony/console",
-            "version": "v2.5.5",
+            "version": "v2.5.6",
             "target-dir": "Symfony/Component/Console",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Console.git",
-                "reference": "ca053eaa031c93afb68a71e4eb1f4168dfd4a661"
+                "reference": "6f177fca24200a5b97aef5ce7a5c98124a0f0db0"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Console/zipball/ca053eaa031c93afb68a71e4eb1f4168dfd4a661",
-                "reference": "ca053eaa031c93afb68a71e4eb1f4168dfd4a661",
+                "url": "https://api.github.com/repos/symfony/Console/zipball/6f177fca24200a5b97aef5ce7a5c98124a0f0db0",
+                "reference": "6f177fca24200a5b97aef5ce7a5c98124a0f0db0",
                 "shasum": ""
             },
             "require": {
@@ -261,7 +261,7 @@
             ],
             "description": "Symfony Console Component",
             "homepage": "http://symfony.com",
-            "time": "2014-09-25 09:53:56"
+            "time": "2014-10-05 13:57:04"
         },
         {
             "name": "tedivm/jshrink",
@@ -306,16 +306,16 @@
         },
         {
             "name": "twig/twig",
-            "version": "v1.16.1",
+            "version": "v1.16.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/fabpot/Twig.git",
-                "reference": "7c4c01dcf578523cfcddf383641a4f12790270ec"
+                "reference": "42f758d9fe2146d1f0470604fc05ee43580873fc"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/fabpot/Twig/zipball/7c4c01dcf578523cfcddf383641a4f12790270ec",
-                "reference": "7c4c01dcf578523cfcddf383641a4f12790270ec",
+                "url": "https://api.github.com/repos/fabpot/Twig/zipball/42f758d9fe2146d1f0470604fc05ee43580873fc",
+                "reference": "42f758d9fe2146d1f0470604fc05ee43580873fc",
                 "shasum": ""
             },
             "require": {
@@ -359,7 +359,7 @@
             "keywords": [
                 "templating"
             ],
-            "time": "2014-10-10 14:09:53"
+            "time": "2014-10-17 12:53:44"
         }
     ],
     "packages-dev": [
@@ -952,16 +952,16 @@
         },
         {
             "name": "phpunit/phpunit",
-            "version": "4.3.3",
+            "version": "4.3.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/phpunit.git",
-                "reference": "5a0bc4dcbb7340c0a9a9bc3507854a67c564edc4"
+                "reference": "23e4e0310f037aae873cc81b8658dbbb82878f71"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/5a0bc4dcbb7340c0a9a9bc3507854a67c564edc4",
-                "reference": "5a0bc4dcbb7340c0a9a9bc3507854a67c564edc4",
+                "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/23e4e0310f037aae873cc81b8658dbbb82878f71",
+                "reference": "23e4e0310f037aae873cc81b8658dbbb82878f71",
                 "shasum": ""
             },
             "require": {
@@ -972,7 +972,7 @@
                 "ext-spl": "*",
                 "php": ">=5.3.3",
                 "phpunit/php-code-coverage": "~2.0",
-                "phpunit/php-file-iterator": "~1.3.1",
+                "phpunit/php-file-iterator": "~1.3.2",
                 "phpunit/php-text-template": "~1.2",
                 "phpunit/php-timer": "~1.0.2",
                 "phpunit/phpunit-mock-objects": "~2.3",
@@ -1022,7 +1022,7 @@
                 "testing",
                 "xunit"
             ],
-            "time": "2014-10-16 16:53:00"
+            "time": "2014-10-22 11:43:12"
         },
         {
             "name": "phpunit/phpunit-mock-objects",
@@ -1197,16 +1197,16 @@
         },
         {
             "name": "sebastian/environment",
-            "version": "1.1.0",
+            "version": "1.2.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/environment.git",
-                "reference": "6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7"
+                "reference": "0d9bf79554d2a999da194a60416c15cf461eb67d"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7",
-                "reference": "6288ebbf6fa3ed2b2ff2d69c356fbaaf4f0971a7",
+                "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/0d9bf79554d2a999da194a60416c15cf461eb67d",
+                "reference": "0d9bf79554d2a999da194a60416c15cf461eb67d",
                 "shasum": ""
             },
             "require": {
@@ -1218,7 +1218,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.1.x-dev"
+                    "dev-master": "1.2.x-dev"
                 }
             },
             "autoload": {
@@ -1243,7 +1243,7 @@
                 "environment",
                 "hhvm"
             ],
-            "time": "2014-10-07 09:23:16"
+            "time": "2014-10-22 06:38:05"
         },
         {
             "name": "sebastian/exporter",
@@ -1347,17 +1347,17 @@
         },
         {
             "name": "symfony/event-dispatcher",
-            "version": "v2.5.5",
+            "version": "v2.5.6",
             "target-dir": "Symfony/Component/EventDispatcher",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/EventDispatcher.git",
-                "reference": "f6281337bf5f985f585d1db6a83adb05ce531f46"
+                "reference": "804eb28dbbfba9ffdab21fe2066744906cea2212"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/f6281337bf5f985f585d1db6a83adb05ce531f46",
-                "reference": "f6281337bf5f985f585d1db6a83adb05ce531f46",
+                "url": "https://api.github.com/repos/symfony/EventDispatcher/zipball/804eb28dbbfba9ffdab21fe2066744906cea2212",
+                "reference": "804eb28dbbfba9ffdab21fe2066744906cea2212",
                 "shasum": ""
             },
             "require": {
@@ -1400,21 +1400,21 @@
             ],
             "description": "Symfony EventDispatcher Component",
             "homepage": "http://symfony.com",
-            "time": "2014-09-28 15:56:11"
+            "time": "2014-10-01 15:43:05"
         },
         {
             "name": "symfony/yaml",
-            "version": "v2.5.5",
+            "version": "v2.5.6",
             "target-dir": "Symfony/Component/Yaml",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/Yaml.git",
-                "reference": "b1dbc53593b98c2d694ebf383660ac9134d30b96"
+                "reference": "2d9f527449cabfa8543dd7fa3a466d6ae83d6726"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/Yaml/zipball/b1dbc53593b98c2d694ebf383660ac9134d30b96",
-                "reference": "b1dbc53593b98c2d694ebf383660ac9134d30b96",
+                "url": "https://api.github.com/repos/symfony/Yaml/zipball/2d9f527449cabfa8543dd7fa3a466d6ae83d6726",
+                "reference": "2d9f527449cabfa8543dd7fa3a466d6ae83d6726",
                 "shasum": ""
             },
             "require": {
@@ -1447,10 +1447,12 @@
             ],
             "description": "Symfony Yaml Component",
             "homepage": "http://symfony.com",
-            "time": "2014-09-22 09:14:18"
+            "time": "2014-10-01 05:50:18"
         }
     ],
-    "aliases": [],
+    "aliases": [
+
+    ],
     "minimum-stability": "stable",
     "stability-flags": {
         "facebook/xhprof": 20
@@ -1459,5 +1461,7 @@
     "platform": {
         "php": ">=5.3.3"
     },
-    "platform-dev": []
+    "platform-dev": [
+
+    ]
 }
diff --git a/core/Updates/2.9.0-b1.php b/core/Updates/2.9.0-b1.php
index 9791edbe63241e8ab5e1d8d2a8a1ff18975816f0..8a0a096241de3febe2e70013e38d7b7060ca1de0 100644
--- a/core/Updates/2.9.0-b1.php
+++ b/core/Updates/2.9.0-b1.php
@@ -4,7 +4,6 @@
  *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- *
  */
 
 namespace Piwik\Updates;
@@ -15,14 +14,31 @@ use Piwik\Plugin\Manager;
 use Piwik\Updater;
 use Piwik\Updates;
 
-/**
- */
 class Updates_2_9_0_b1 extends Updates
 {
     static function getSql()
     {
         $sql = array();
 
+        $sql = self::updateBrowserEngine($sql);
+
+
+        return $sql;
+    }
+
+    static function update()
+    {
+        Updater::updateDatabase(__FILE__, self::getSql());
+
+        try {
+            Manager::getInstance()->activatePlugin('TestRunner');
+        } catch (\Exception $e) {
+
+        }
+    }
+
+    private static function updateBrowserEngine($sql)
+    {
         $sql[sprintf("ALTER TABLE `%s` ADD COLUMN `config_browser_engine` VARCHAR(10) NOT NULL", Common::prefixTable('log_visit'))] = 1060;
 
         $browserEngineMatch = array(
@@ -56,15 +72,4 @@ class Updates_2_9_0_b1 extends Updates
 
         return $sql;
     }
-
-    static function update()
-    {
-        Updater::updateDatabase(__FILE__, self::getSql());
-
-        try {
-            Manager::getInstance()->activatePlugin('TestRunner');
-        } catch (\Exception $e) {
-
-        }
-    }
 }
diff --git a/core/Url.php b/core/Url.php
index dd9503ca664bbe9fcf1a19604720ce5897f16dcd..d57276d5a501203f51acc8850fdd58b17b4ce910 100644
--- a/core/Url.php
+++ b/core/Url.php
@@ -586,6 +586,9 @@ class Url
      */
     public static function getHostSanitized($host)
     {
+        if (!class_exists("Piwik\\Network\\IPUtils")) {
+            throw new Exception("Piwik\\Network\\IPUtils could not be found, maybe you are using Piwik from git and need to update Composer. $ php composer.phar update");
+        }
         return IPUtils::sanitizeIp($host);
     }
 
diff --git a/plugins/Installation/templates/_systemCheckSection.twig b/plugins/Installation/templates/_systemCheckSection.twig
index fb2d26a3aae7f5742fa86fac40d423b4c1311bd9..22247455aef4129e9e9a340b35a802cedd99106c 100755
--- a/plugins/Installation/templates/_systemCheckSection.twig
+++ b/plugins/Installation/templates/_systemCheckSection.twig
@@ -5,7 +5,7 @@
 
 <table class="infosServer" id="systemCheckRequired">
     <tr>
-        {% set MinPHP %}{{ 'Installation_SystemCheckPhp'|translate }} &gt; {{ infos.phpVersion_minimum }}{% endset %}
+        {% set MinPHP %}{{ 'Installation_SystemCheckPhp'|translate }} &gt;= {{ infos.phpVersion_minimum }}{% endset %}
         <td class="label">{{ MinPHP }}</td>
 
         <td>
diff --git a/tests/PHPUnit/Unit/API/ApiRendererTest.php b/tests/PHPUnit/Unit/API/ApiRendererTest.php
index ebe1952a908c7f58e79caf33c207c254e8aab752..1434e34ff4b172b53c5525decf4f59538b5abb4d 100644
--- a/tests/PHPUnit/Unit/API/ApiRendererTest.php
+++ b/tests/PHPUnit/Unit/API/ApiRendererTest.php
@@ -6,35 +6,38 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit\API;
+
 use Piwik\API\ApiRenderer;
+use Piwik\Plugin\Manager;
 
 /**
  * @group Core
  * @group Only2
  */
-class ApiRendererTest extends PHPUnit_Framework_TestCase
+class ApiRendererTest extends \PHPUnit_Framework_TestCase
 {
     public function setUp()
     {
-        \Piwik\Plugin\Manager::getInstance()->loadPlugins(array('API'));
+        Manager::getInstance()->loadPlugins(array('API'));
     }
 
     public function test_factory_shouldCreateAnInstance_IfValidFormatGiven()
     {
         $renderer = ApiRenderer::factory('php', array());
-        $this->assertInstanceOf('\\Piwik\\Plugins\\API\\Renderer\\Php', $renderer);
+        $this->assertInstanceOf('Piwik\Plugins\API\Renderer\Php', $renderer);
 
         $renderer = ApiRenderer::factory('PHP', array());
-        $this->assertInstanceOf('\\Piwik\\Plugins\\API\\Renderer\\Php', $renderer);
+        $this->assertInstanceOf('Piwik\Plugins\API\Renderer\Php', $renderer);
 
         $renderer = ApiRenderer::factory('pHp', array());
-        $this->assertInstanceOf('\\Piwik\\Plugins\\API\\Renderer\\Php', $renderer);
+        $this->assertInstanceOf('Piwik\Plugins\API\Renderer\Php', $renderer);
 
         $renderer = ApiRenderer::factory('xmL', array());
-        $this->assertInstanceOf('\\Piwik\\Plugins\\API\\Renderer\\Xml', $renderer);
+        $this->assertInstanceOf('Piwik\Plugins\API\Renderer\Xml', $renderer);
 
         $renderer = ApiRenderer::factory('OriginAl', array());
-        $this->assertInstanceOf('\\Piwik\\Plugins\\API\\Renderer\\Original', $renderer);
+        $this->assertInstanceOf('Piwik\Plugins\API\Renderer\Original', $renderer);
     }
 
     /**
diff --git a/tests/PHPUnit/Unit/API/ResponseBuilderTest.php b/tests/PHPUnit/Unit/API/ResponseBuilderTest.php
index 9d6d0bc7795d36f553069263f1525272bbfdf031..d9e67698189121322f294070703323d51fa52bb7 100644
--- a/tests/PHPUnit/Unit/API/ResponseBuilderTest.php
+++ b/tests/PHPUnit/Unit/API/ResponseBuilderTest.php
@@ -6,17 +6,21 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit\API;
+
+use Exception;
 use Piwik\API\ResponseBuilder;
 use Piwik\DataTable;
+use Piwik\Plugin\Manager;
 
 /**
  * @group Core
  */
-class ResponseBuilderTest extends PHPUnit_Framework_TestCase
+class ResponseBuilderTest extends \PHPUnit_Framework_TestCase
 {
     public function setUp()
     {
-        \Piwik\Plugin\Manager::getInstance()->loadPlugins(array('API'));
+        Manager::getInstance()->loadPlugins(array('API'));
     }
 
     public function test_getResponseException_shouldFormatExceptionDependingOnFormatAndAddDebugHelp()
diff --git a/tests/PHPUnit/Unit/AssetManager/PluginManagerMock.php b/tests/PHPUnit/Unit/AssetManager/PluginManagerMock.php
index 2dd91867f25e2769398bbd32e75938429734bab7..7aeaeb0f66045057b24ae54381a770928ec62884 100644
--- a/tests/PHPUnit/Unit/AssetManager/PluginManagerMock.php
+++ b/tests/PHPUnit/Unit/AssetManager/PluginManagerMock.php
@@ -6,6 +6,8 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit\AssetManager;
+
 use Piwik\Plugin\Manager;
 use Piwik\Plugin;
 use Piwik\Theme;
diff --git a/tests/PHPUnit/Unit/AssetManager/PluginMock.php b/tests/PHPUnit/Unit/AssetManager/PluginMock.php
index 6b6e8919ab059c5c99e5e68d30c755e3081301f8..c29c03dd67ac42203fe5ec3ab8855c9bf45b12a7 100644
--- a/tests/PHPUnit/Unit/AssetManager/PluginMock.php
+++ b/tests/PHPUnit/Unit/AssetManager/PluginMock.php
@@ -6,6 +6,8 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit\AssetManager;
+
 use Piwik\Plugin;
 
 class PluginMock extends Plugin
diff --git a/tests/PHPUnit/Unit/AssetManager/ThemeMock.php b/tests/PHPUnit/Unit/AssetManager/ThemeMock.php
index 213a14d7372720c893c55a2ea3d5b9d7078b3f9f..5c2d59a22d52ced463d7a248489d821b2421bed1 100644
--- a/tests/PHPUnit/Unit/AssetManager/ThemeMock.php
+++ b/tests/PHPUnit/Unit/AssetManager/ThemeMock.php
@@ -6,6 +6,8 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit\AssetManager;
+
 use Piwik\Plugin;
 use Piwik\Theme;
 
diff --git a/tests/PHPUnit/Unit/AssetManager/UIAssetCacheBusterMock.php b/tests/PHPUnit/Unit/AssetManager/UIAssetCacheBusterMock.php
index c6d2205aaede23f536817f3f851a51a497a22201..b0ebf13f8830d709a98696bf47e9f321a0954828 100644
--- a/tests/PHPUnit/Unit/AssetManager/UIAssetCacheBusterMock.php
+++ b/tests/PHPUnit/Unit/AssetManager/UIAssetCacheBusterMock.php
@@ -6,6 +6,8 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit\AssetManager;
+
 use Piwik\AssetManager\UIAssetCacheBuster;
 
 class UIAssetCacheBusterMock extends UIAssetCacheBuster
diff --git a/tests/PHPUnit/Unit/AssetManager/UIAssetCacheBusterTest.php b/tests/PHPUnit/Unit/AssetManager/UIAssetCacheBusterTest.php
index 85c4b613b33be6d24ea184a24e8ebd6bcaaa52fb..b71903b7faf42c2e69228fc226e6183bb4dd9412 100644
--- a/tests/PHPUnit/Unit/AssetManager/UIAssetCacheBusterTest.php
+++ b/tests/PHPUnit/Unit/AssetManager/UIAssetCacheBusterTest.php
@@ -6,11 +6,13 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit\AssetManager;
+
+use PHPUnit_Framework_TestCase;
 use Piwik\AssetManager\UIAssetCacheBuster;
 
 class UIAssetCacheBusterTest extends PHPUnit_Framework_TestCase
 {
-
     /**
      * @var UIAssetCacheBuster
      */
diff --git a/tests/PHPUnit/Unit/AssetManager/UIAssetCatalogSorterTest.php b/tests/PHPUnit/Unit/AssetManager/UIAssetCatalogSorterTest.php
index 820d8161bf2cbdcef72eaddb6a9c6d217dffb996..8bf96d8f4a446ca3c4fa358e1ec7b219d8d8af55 100644
--- a/tests/PHPUnit/Unit/AssetManager/UIAssetCatalogSorterTest.php
+++ b/tests/PHPUnit/Unit/AssetManager/UIAssetCatalogSorterTest.php
@@ -5,6 +5,10 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\AssetManager;
+
+use PHPUnit_Framework_TestCase;
 use Piwik\AssetManager\UIAsset\OnDiskUIAsset;
 use Piwik\AssetManager\UIAssetCatalog;
 use Piwik\AssetManager\UIAssetCatalogSorter;
diff --git a/tests/PHPUnit/Unit/AssetManagerTest.php b/tests/PHPUnit/Unit/AssetManagerTest.php
index ca1ca94433669322561792c80a5e8f8837a9183c..18c61cf18c1737f35eee5853d658b729ad2295c9 100644
--- a/tests/PHPUnit/Unit/AssetManagerTest.php
+++ b/tests/PHPUnit/Unit/AssetManagerTest.php
@@ -5,6 +5,10 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit;
+
+use PHPUnit_Framework_TestCase;
 use Piwik\AssetManager\UIAsset\OnDiskUIAsset;
 use Piwik\AssetManager\UIAsset;
 use Piwik\AssetManager;
@@ -13,11 +17,10 @@ use Piwik\Config;
 use Piwik\Plugin;
 use Piwik\Plugin\Manager;
 use Piwik\EventDispatcher;
-
-require_once PIWIK_INCLUDE_PATH . "/tests/PHPUnit/Unit/AssetManager/UIAssetCacheBusterMock.php";
-require_once PIWIK_INCLUDE_PATH . "/tests/PHPUnit/Unit/AssetManager/PluginManagerMock.php";
-require_once PIWIK_INCLUDE_PATH . "/tests/PHPUnit/Unit/AssetManager/PluginMock.php";
-require_once PIWIK_INCLUDE_PATH . "/tests/PHPUnit/Unit/AssetManager/ThemeMock.php";
+use Piwik\Tests\Unit\AssetManager\PluginManagerMock;
+use Piwik\Tests\Unit\AssetManager\PluginMock;
+use Piwik\Tests\Unit\AssetManager\ThemeMock;
+use Piwik\Tests\Unit\AssetManager\UIAssetCacheBusterMock;
 
 /**
  * @group AssetManagerTest
@@ -50,12 +53,12 @@ class AssetManagerTest extends PHPUnit_Framework_TestCase
     private $mergedAsset;
 
     /**
-     * @var UIAssetCacheBusterMock
+     * @var \Piwik\Tests\Unit\AssetManager\UIAssetCacheBusterMock
      */
     private $cacheBuster;
 
     /**
-     * @var PluginManagerMock
+     * @var \Piwik\Tests\Unit\AssetManager\PluginManagerMock
      */
     private $pluginManager;
 
diff --git a/tests/PHPUnit/Unit/CliMulti/OutputTest.php b/tests/PHPUnit/Unit/CliMulti/OutputTest.php
index 355fe2c4c7d14c2743af5e1c0b55e8ef4c4c3ae6..6dbcf12179ad59ff4dd1829093675ac17ba15ef5 100644
--- a/tests/PHPUnit/Unit/CliMulti/OutputTest.php
+++ b/tests/PHPUnit/Unit/CliMulti/OutputTest.php
@@ -5,15 +5,17 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\CliMulti;
+
 use Piwik\CliMulti\Output;
+use Piwik\Url;
 
 /**
- * Class OutputTest
  * @group Core
  */
-class OutputTest extends PHPUnit_Framework_TestCase
+class OutputTest extends \PHPUnit_Framework_TestCase
 {
-
     /**
      * @var Output
      */
@@ -21,7 +23,7 @@ class OutputTest extends PHPUnit_Framework_TestCase
 
     public function setUp()
     {
-        \Piwik\Url::setHost(false);
+        Url::setHost(false);
         $this->output = new Output('myid');
     }
 
diff --git a/tests/PHPUnit/Unit/CliMulti/ProcessTest.php b/tests/PHPUnit/Unit/CliMulti/ProcessTest.php
index bc00463e3abdeadcb65893d1a5336fff825de72d..3db93081c69b778c2a97ee5418e1b50466fb4a02 100644
--- a/tests/PHPUnit/Unit/CliMulti/ProcessTest.php
+++ b/tests/PHPUnit/Unit/CliMulti/ProcessTest.php
@@ -6,13 +6,15 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit\CliMulti;
+
 use Piwik\CliMulti\Process;
+use ReflectionProperty;
 
 /**
- * Class ProcessTest
  * @group Core
  */
-class ProcessTest extends PHPUnit_Framework_TestCase
+class ProcessTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @var Process
diff --git a/tests/PHPUnit/Unit/Columns/DimensionTest.php b/tests/PHPUnit/Unit/Columns/DimensionTest.php
index cf0da5ff9496390656dc519cafa279a0adb545f0..50a818cc55ab5319b9dfa8db2bd611b50c5f7d3c 100644
--- a/tests/PHPUnit/Unit/Columns/DimensionTest.php
+++ b/tests/PHPUnit/Unit/Columns/DimensionTest.php
@@ -43,7 +43,7 @@ namespace Piwik\Plugins\Test\Columns
     }
 }
 
-namespace Piwik\Tests\Core\Columns
+namespace Piwik\Tests\Unit\Columns
 {
     use Piwik\Columns\Dimension;
     use Piwik\Config;
diff --git a/tests/PHPUnit/Unit/CommonTest.php b/tests/PHPUnit/Unit/CommonTest.php
index 185fa064d3706c66b0e78faad47aec21189dab30..5e820a25fd37d7797a6476de26e59da65200ad9b 100644
--- a/tests/PHPUnit/Unit/CommonTest.php
+++ b/tests/PHPUnit/Unit/CommonTest.php
@@ -1,15 +1,21 @@
 <?php
-use Piwik\Common;
-use Piwik\Filesystem;
-
 /**
  * Piwik - free/libre analytics platform
  *
- * @backupGlobals enabled
- *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit;
+
+use Exception;
+use PHPUnit_Framework_TestCase;
+use Piwik\Common;
+use Piwik\Filesystem;
+
+/**
+ * @backupGlobals enabled
+ */
 class Core_CommonTest extends PHPUnit_Framework_TestCase
 {
     /**
diff --git a/tests/PHPUnit/Unit/ConfigTest.php b/tests/PHPUnit/Unit/ConfigTest.php
index 128e198eeb64cf4962af9ec39996f8167e7261de..3543871b1f7ff792a65bc73c986aad3ae8e95a9a 100644
--- a/tests/PHPUnit/Unit/ConfigTest.php
+++ b/tests/PHPUnit/Unit/ConfigTest.php
@@ -6,6 +6,9 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit;
+
+use PHPUnit_Framework_TestCase;
 use Piwik\Config;
 
 /**
diff --git a/tests/PHPUnit/Unit/CookieTest.php b/tests/PHPUnit/Unit/CookieTest.php
index 9b77aeddaf094a20fdda85e14d30e0fa1899fe2b..52adec4d0e2701ce61050bff38bbbb4f03dbe97d 100644
--- a/tests/PHPUnit/Unit/CookieTest.php
+++ b/tests/PHPUnit/Unit/CookieTest.php
@@ -5,7 +5,10 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-class CookieTest extends PHPUnit_Framework_TestCase
+
+namespace Piwik\Tests\Unit;
+
+class CookieTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * Dataprovider for testJsonSerialize
@@ -41,11 +44,6 @@ class CookieTest extends PHPUnit_Framework_TestCase
      */
     public function testJsonSerialize($testData, $id)
     {
-        // @see http://bugs.php.net/38680
-        if (PHP_VERSION >= '5.2.0' && PHP_VERSION < '5.2.1') {
-            $this->markTestSkipped('see http://bugs.php.net/38680');
-        }
-
         $this->assertEquals($testData, json_decode(json_encode($testData), $assoc = true), $id);
     }
 
@@ -95,7 +93,7 @@ class CookieTest extends PHPUnit_Framework_TestCase
     public function testSafeUnserialize()
     {
         /*
-         * serialize() uses its internal maachine representation when floats expressed in E-notation,
+         * serialize() uses its internal machine representation when floats expressed in E-notation,
          * which may vary between php versions, OS, and hardware platforms
          */
         $testData = -5.0E+142;
diff --git a/tests/PHPUnit/Unit/DataTable/Filter/AddSummaryRowTest.php b/tests/PHPUnit/Unit/DataTable/Filter/AddSummaryRowTest.php
index 71b41bd4293b5f64c392a6fdddba4ce286cad7a8..f072011675b16b6315a27b3356b6fa6da1c3367a 100644
--- a/tests/PHPUnit/Unit/DataTable/Filter/AddSummaryRowTest.php
+++ b/tests/PHPUnit/Unit/DataTable/Filter/AddSummaryRowTest.php
@@ -5,10 +5,13 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\DataTable\Filter;
+
 use Piwik\DataTable;
 use Piwik\DataTable\Row;
 
-class DataTable_Filter_AddSummaryRowTest extends PHPUnit_Framework_TestCase
+class DataTable_Filter_AddSummaryRowTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @group AddSummaryRow
diff --git a/tests/PHPUnit/Unit/DataTable/Filter/ExcludeLowPopulationTest.php b/tests/PHPUnit/Unit/DataTable/Filter/ExcludeLowPopulationTest.php
index 469015a24cd1d2daf64714ecfeaa6c8fa35092d0..6e8eb733b8c5775044cd65e9ee39f1fbc774f191 100644
--- a/tests/PHPUnit/Unit/DataTable/Filter/ExcludeLowPopulationTest.php
+++ b/tests/PHPUnit/Unit/DataTable/Filter/ExcludeLowPopulationTest.php
@@ -5,11 +5,14 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\DataTable\Filter;
+
 use Piwik\DataTable\Filter\ExcludeLowPopulation;
 use Piwik\DataTable;
 use Piwik\DataTable\Row;
 
-class DataTable_Filter_ExcludeLowPopulationTest extends PHPUnit_Framework_TestCase
+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 14705926a50c2aec9f9216c5e491f9303316d5f4..94d2d4c84be1f2a588ddb96bb98b527f9758da34 100644
--- a/tests/PHPUnit/Unit/DataTable/Filter/LimitTest.php
+++ b/tests/PHPUnit/Unit/DataTable/Filter/LimitTest.php
@@ -5,11 +5,14 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\DataTable\Filter;
+
 use Piwik\DataTable\Filter\Limit;
 use Piwik\DataTable;
 use Piwik\DataTable\Row;
 
-class DataTable_Filter_LimitTest extends PHPUnit_Framework_TestCase
+class DataTable_Filter_LimitTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * Returns table used for the tests
diff --git a/tests/PHPUnit/Unit/DataTable/Filter/PatternRecursiveTest.php b/tests/PHPUnit/Unit/DataTable/Filter/PatternRecursiveTest.php
index 7ab59d8c4ab009c2331adce40ed47b08dd6989f3..4c9cd46ab3bd30f206545d756d7042fd1976eb14 100644
--- a/tests/PHPUnit/Unit/DataTable/Filter/PatternRecursiveTest.php
+++ b/tests/PHPUnit/Unit/DataTable/Filter/PatternRecursiveTest.php
@@ -5,10 +5,13 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\DataTable\Filter;
+
 use Piwik\DataTable;
 use Piwik\DataTable\Row;
 
-class DataTable_Filter_PatternRecursiveTest extends PHPUnit_Framework_TestCase
+class DataTable_Filter_PatternRecursiveTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * Returns a data table for testing
diff --git a/tests/PHPUnit/Unit/DataTable/Filter/PatternTest.php b/tests/PHPUnit/Unit/DataTable/Filter/PatternTest.php
index 1f1c25bc61cd5f83f8e50d93765d172f4d0d282c..e9d63f1d98ae1e4f923d7d6c242ee5c44b069b2d 100644
--- a/tests/PHPUnit/Unit/DataTable/Filter/PatternTest.php
+++ b/tests/PHPUnit/Unit/DataTable/Filter/PatternTest.php
@@ -5,10 +5,13 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\DataTable\Filter;
+
 use Piwik\DataTable;
 use Piwik\DataTable\Row;
 
-class DataTable_Filter_PatternTest extends PHPUnit_Framework_TestCase
+class DataTable_Filter_PatternTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * Dataprovider for testFilterPattern
diff --git a/tests/PHPUnit/Unit/DataTable/Filter/RangeCheckTest.php b/tests/PHPUnit/Unit/DataTable/Filter/RangeCheckTest.php
index e9140c3aed48b9902ce1ebe820cb3c61cbc4e0bb..3c1d91a3576c7f9b23be2f5151af23def7986b65 100644
--- a/tests/PHPUnit/Unit/DataTable/Filter/RangeCheckTest.php
+++ b/tests/PHPUnit/Unit/DataTable/Filter/RangeCheckTest.php
@@ -5,11 +5,14 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\DataTable\Filter;
+
 use Piwik\DataTable\Filter\RangeCheck;
 use Piwik\DataTable;
 use Piwik\DataTable\Row;
 
-class DataTable_Filter_RangeCheckTest extends PHPUnit_Framework_TestCase
+class DataTable_Filter_RangeCheckTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @group Core
diff --git a/tests/PHPUnit/Unit/DataTable/Filter/SortTest.php b/tests/PHPUnit/Unit/DataTable/Filter/SortTest.php
index bf23dbd7dced865f86aeb3841a644c8657a99412..4aedcb3d7e756f8a06be7828e90cfe30ee062025 100644
--- a/tests/PHPUnit/Unit/DataTable/Filter/SortTest.php
+++ b/tests/PHPUnit/Unit/DataTable/Filter/SortTest.php
@@ -5,11 +5,14 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\DataTable\Filter;
+
 use Piwik\DataTable\Filter\Sort;
 use Piwik\DataTable;
 use Piwik\DataTable\Row;
 
-class DataTable_Filter_SortTest extends PHPUnit_Framework_TestCase
+class DataTable_Filter_SortTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @group Core
diff --git a/tests/PHPUnit/Unit/DataTable/Filter/TruncateTest.php b/tests/PHPUnit/Unit/DataTable/Filter/TruncateTest.php
index 2cb53e701fb15441279caa34fa6b68eff3aea20d..d82e8da4411b8a635bc54b99d73113e618d7f972 100644
--- a/tests/PHPUnit/Unit/DataTable/Filter/TruncateTest.php
+++ b/tests/PHPUnit/Unit/DataTable/Filter/TruncateTest.php
@@ -5,11 +5,14 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\DataTable\Filter;
+
 use Piwik\DataTable\Filter\Truncate;
 use Piwik\DataTable;
 use Piwik\DataTable\Row;
 
-class DataTable_Filter_TruncateTest extends PHPUnit_Framework_TestCase
+class DataTable_Filter_TruncateTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @group Core
diff --git a/tests/PHPUnit/Unit/DataTable/MapTest.php b/tests/PHPUnit/Unit/DataTable/MapTest.php
index de08a1478726ff388de209ef74fc4c66dfbcf897..659e76ac8fc227d50c2142c805d69f7206593225 100644
--- a/tests/PHPUnit/Unit/DataTable/MapTest.php
+++ b/tests/PHPUnit/Unit/DataTable/MapTest.php
@@ -1,10 +1,13 @@
 <?php
+
+namespace Piwik\Tests\Unit\DataTable;
+
 use Piwik\Config;
 use Piwik\DataTable\Manager;
 use Piwik\DataTable;
 use Piwik\DataTable\Row;
 
-class Test_DataTable_Map extends PHPUnit_Framework_TestCase
+class Test_DataTable_Map extends \PHPUnit_Framework_TestCase
 {
     public function setUp()
     {
@@ -74,7 +77,7 @@ class Test_DataTable_Map extends PHPUnit_Framework_TestCase
         $this->mergeChildren_checkRow($result->getRowFromId(3), 'subDataTable2', 2);
     }
 
-    private function mergeChildren_checkRow($row, $expectedLabel, $expectedColumnValue)
+    private function mergeChildren_checkRow(Row $row, $expectedLabel, $expectedColumnValue)
     {
         $this->assertEquals($expectedLabel, $row->getColumn('label'));
         $this->assertEquals($expectedColumnValue, $row->getColumn('col1'));
diff --git a/tests/PHPUnit/Unit/DataTable/Renderer/CSVTest.php b/tests/PHPUnit/Unit/DataTable/Renderer/CSVTest.php
index 64ffcf6a06a1eb99edfd8325c9cf49b69b9113c4..85691cab26f4ea6fa79f6a2cfa9b47398a2d79d7 100644
--- a/tests/PHPUnit/Unit/DataTable/Renderer/CSVTest.php
+++ b/tests/PHPUnit/Unit/DataTable/Renderer/CSVTest.php
@@ -5,13 +5,16 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\DataTable\Renderer;
+
 use Piwik\DataTable\Manager;
 use Piwik\DataTable;
 use Piwik\DataTable\Renderer\Csv;
 use Piwik\DataTable\Row;
 use Piwik\DataTable\Simple;
 
-class DataTable_Renderer_CSVTest extends PHPUnit_Framework_TestCase
+class DataTable_Renderer_CSVTest extends \PHPUnit_Framework_TestCase
 {
     public function setUp()
     {
diff --git a/tests/PHPUnit/Unit/DataTable/Renderer/ConsoleTest.php b/tests/PHPUnit/Unit/DataTable/Renderer/ConsoleTest.php
index 7da7dedb53809e12a74f504a152202648357abe5..686f6a1be68d64d23cefb8291971a239c6d935e3 100644
--- a/tests/PHPUnit/Unit/DataTable/Renderer/ConsoleTest.php
+++ b/tests/PHPUnit/Unit/DataTable/Renderer/ConsoleTest.php
@@ -5,12 +5,15 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\DataTable\Renderer;
+
 use Piwik\DataTable\Manager;
 use Piwik\DataTable;
 use Piwik\DataTable\Renderer\Console;
 use Piwik\DataTable\Row;
 
-class DataTable_Renderer_ConsoleTest extends PHPUnit_Framework_TestCase
+class DataTable_Renderer_ConsoleTest extends \PHPUnit_Framework_TestCase
 {
     public function setUp()
     {
diff --git a/tests/PHPUnit/Unit/DataTable/Renderer/JSONTest.php b/tests/PHPUnit/Unit/DataTable/Renderer/JSONTest.php
index c18ee12e60e54cebb02b77539fc1c038b57c5ee8..738439474c1ce43c6185181b234098c3e9fa5271 100644
--- a/tests/PHPUnit/Unit/DataTable/Renderer/JSONTest.php
+++ b/tests/PHPUnit/Unit/DataTable/Renderer/JSONTest.php
@@ -5,13 +5,16 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\DataTable\Renderer;
+
 use Piwik\DataTable\Manager;
 use Piwik\DataTable;
 use Piwik\DataTable\Renderer\Json;
 use Piwik\DataTable\Row;
 use Piwik\DataTable\Simple;
 
-class DataTable_Renderer_JSONTest extends PHPUnit_Framework_TestCase
+class DataTable_Renderer_JSONTest extends \PHPUnit_Framework_TestCase
 {
     public function setUp()
     {
diff --git a/tests/PHPUnit/Unit/DataTable/Renderer/PHPTest.php b/tests/PHPUnit/Unit/DataTable/Renderer/PHPTest.php
index 7ba4088e5c5241e9c68de74b780ace5e3aa007d6..e3201dfbe6b2f650902cafc4f9784f3f0cc837ee 100644
--- a/tests/PHPUnit/Unit/DataTable/Renderer/PHPTest.php
+++ b/tests/PHPUnit/Unit/DataTable/Renderer/PHPTest.php
@@ -5,13 +5,16 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\DataTable\Renderer;
+
 use Piwik\DataTable\Manager;
 use Piwik\DataTable;
 use Piwik\DataTable\Renderer\Php;
 use Piwik\DataTable\Row;
 use Piwik\DataTable\Simple;
 
-class DataTable_Renderer_PHPTest extends PHPUnit_Framework_TestCase
+class DataTable_Renderer_PHPTest extends \PHPUnit_Framework_TestCase
 {
     public function setUp()
     {
diff --git a/tests/PHPUnit/Unit/DataTable/Renderer/XMLTest.php b/tests/PHPUnit/Unit/DataTable/Renderer/XMLTest.php
index f8c2a93072bf6420b5c61c153851118a47de2ac9..1abfe94b06c9b55f69f3cdeda5d79e9d184558b5 100644
--- a/tests/PHPUnit/Unit/DataTable/Renderer/XMLTest.php
+++ b/tests/PHPUnit/Unit/DataTable/Renderer/XMLTest.php
@@ -5,13 +5,16 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\DataTable\Renderer;
+
 use Piwik\DataTable\Manager;
 use Piwik\DataTable;
 use Piwik\DataTable\Renderer\Xml;
 use Piwik\DataTable\Row;
 use Piwik\DataTable\Simple;
 
-class DataTable_Renderer_XMLTest extends PHPUnit_Framework_TestCase
+class DataTable_Renderer_XMLTest extends \PHPUnit_Framework_TestCase
 {
     public function setUp()
     {
diff --git a/tests/PHPUnit/Unit/DataTable/RowTest.php b/tests/PHPUnit/Unit/DataTable/RowTest.php
index 629a10a28008fff6717aca61847b0fef291d3d29..53a072fa3614d9f59b1d44ea5ce608860afb6083 100644
--- a/tests/PHPUnit/Unit/DataTable/RowTest.php
+++ b/tests/PHPUnit/Unit/DataTable/RowTest.php
@@ -5,13 +5,16 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\DataTable;
+
 use Piwik\DataTable;
 use Piwik\DataTable\Row;
 
 /**
  * @group Core
  */
-class RowTest extends PHPUnit_Framework_TestCase
+class RowTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @var Row
diff --git a/tests/PHPUnit/Unit/DataTableTest.php b/tests/PHPUnit/Unit/DataTableTest.php
index 1465f70a7b6c9aec8765b9acff408ee046de9245..355b717118f8b97a2fa3bee315eff96808fefabd 100644
--- a/tests/PHPUnit/Unit/DataTableTest.php
+++ b/tests/PHPUnit/Unit/DataTableTest.php
@@ -6,13 +6,15 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit;
+
 use Piwik\Common;
 use Piwik\DataTable\Manager;
 use Piwik\DataTable\Row;
 use Piwik\DataTable;
 use Piwik\Timer;
 
-class DataTableTest extends PHPUnit_Framework_TestCase
+class DataTableTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @group Core
@@ -311,7 +313,7 @@ class DataTableTest extends PHPUnit_Framework_TestCase
      *
      * @group Core
      *
-     * @expectedException Exception
+     * @expectedException \Exception
      */
     public function testSumRow_stringException()
     {
@@ -335,7 +337,7 @@ class DataTableTest extends PHPUnit_Framework_TestCase
      *
      * @group Core
      *
-     * @expectedException Exception
+     * @expectedException \Exception
      */
     public function testSerializeWithInfiniteRecursion()
     {
diff --git a/tests/PHPUnit/Unit/DateTest.php b/tests/PHPUnit/Unit/DateTest.php
index 84041f53fdd7850fe7629ddbe9a74ffaf742809d..9f2c286342a7fe24b8b9be7b16ee37a24484b6b2 100644
--- a/tests/PHPUnit/Unit/DateTest.php
+++ b/tests/PHPUnit/Unit/DateTest.php
@@ -5,13 +5,17 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit;
+
+use Exception;
 use Piwik\Date;
 use Piwik\SettingsServer;
 
 /**
  * @group Core_DateTest
  */
-class DateTest extends PHPUnit_Framework_TestCase
+class DateTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * create today object check that timestamp is correct (midnight)
diff --git a/tests/PHPUnit/Unit/DependencyTest.php b/tests/PHPUnit/Unit/DependencyTest.php
index f2a01c01df9086e1926266d5786b6d47c4da5fd9..37912aee3943168dd7d86b148b145d57d1189455 100644
--- a/tests/PHPUnit/Unit/DependencyTest.php
+++ b/tests/PHPUnit/Unit/DependencyTest.php
@@ -1,16 +1,21 @@
 <?php
-use Piwik\Plugin\Dependency;
-use Piwik\Plugin\Manager as PluginManager;
-use Piwik\Version;
-
 /**
  * Piwik - free/libre analytics platform
  *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+ */
+
+namespace Piwik\Tests\Unit;
+
+use Piwik\Plugin\Dependency;
+use Piwik\Plugin\Manager as PluginManager;
+use Piwik\Version;
+
+/**
  * @group Core
  */
-class DependencyTest extends PHPUnit_Framework_TestCase
+class DependencyTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @var Dependency
diff --git a/tests/PHPUnit/Unit/DeprecatedMethodsTest.php b/tests/PHPUnit/Unit/DeprecatedMethodsTest.php
index 3549656cd1e1db050214e04affbfeb22a8000a6d..46dfca652fa6ace5a3a782afbd89055c056fbd22 100644
--- a/tests/PHPUnit/Unit/DeprecatedMethodsTest.php
+++ b/tests/PHPUnit/Unit/DeprecatedMethodsTest.php
@@ -5,16 +5,21 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit;
+
 use Piwik\AssetManager;
 use Piwik\AssetManager\UIAsset;
+use Piwik\Date;
 use Piwik\Plugin;
+use Piwik\Version;
+use ReflectionClass;
 
 /**
  * @group Core
  */
-class DeprecatedMethodsTest extends PHPUnit_Framework_TestCase
+class DeprecatedMethodsTest extends \PHPUnit_Framework_TestCase
 {
-
     public function test_version2_0_4()
     {
         $validTill = '2014-11-25';
@@ -55,8 +60,8 @@ class DeprecatedMethodsTest extends PHPUnit_Framework_TestCase
 
     private function assertDeprecatedMethodIsRemoved($className, $method, $removalDate)
     {
-        $now         = \Piwik\Date::now();
-        $removalDate = \Piwik\Date::factory($removalDate);
+        $now         = Date::now();
+        $removalDate = Date::factory($removalDate);
 
         $class        = new ReflectionClass($className);
         $methodExists = $class->hasMethod($method);
@@ -75,8 +80,8 @@ class DeprecatedMethodsTest extends PHPUnit_Framework_TestCase
 
     private function assertDeprecatedClassIsRemoved($className, $removalDate)
     {
-        $now         = \Piwik\Date::now();
-        $removalDate = \Piwik\Date::factory($removalDate);
+        $now         = Date::now();
+        $removalDate = Date::factory($removalDate);
 
         $classExists = class_exists($className);
 
@@ -93,7 +98,7 @@ class DeprecatedMethodsTest extends PHPUnit_Framework_TestCase
 
     private function assertDeprecatedMethodIsRemovedInPiwik3($className, $method)
     {
-        $version = \Piwik\Version::VERSION;
+        $version = Version::VERSION;
 
         $class        = new ReflectionClass($className);
         $methodExists = $class->hasMethod($method);
diff --git a/tests/PHPUnit/Unit/FactoryTest.php b/tests/PHPUnit/Unit/FactoryTest.php
index d85efcc2cecfbb24569a4c284e4726b187396e9c..056b08c618ea014b17b16c487103c2c2ca051675 100644
--- a/tests/PHPUnit/Unit/FactoryTest.php
+++ b/tests/PHPUnit/Unit/FactoryTest.php
@@ -6,28 +6,29 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit;
+
 use Piwik\BaseFactory;
 
 /**
  * @group Core
- * @group Core_FactoryTest
  */
-class FactoryTest extends PHPUnit_Framework_TestCase
+class FactoryTest extends \PHPUnit_Framework_TestCase
 {
     public function testCreatingExistingClassSucceeds()
     {
-        $instance = BaseFactory::factory("Piwik\\Timer");
+        $instance = BaseFactory::factory('Piwik\Timer');
 
         $this->assertNotNull($instance);
-        $this->assertInstanceOf("Piwik\\Timer", $instance);
+        $this->assertInstanceOf('Piwik\Timer', $instance);
     }
 
     /**
-     * @expectedException Exception
+     * @expectedException \Exception
      * @expectedExceptionMessage Invalid class ID
      */
     public function testCreatingInvalidClassThrows()
     {
         BaseFactory::factory("This\\Class\\Does\\Not\\Exist");
     }
-}
\ No newline at end of file
+}
diff --git a/tests/PHPUnit/Unit/FilesystemTest.php b/tests/PHPUnit/Unit/FilesystemTest.php
index 26518c1a08ff8d1bd375c3e42e66cc3ba945cc08..263a268bbd11048653528a1f39ccb70f95678f7d 100644
--- a/tests/PHPUnit/Unit/FilesystemTest.php
+++ b/tests/PHPUnit/Unit/FilesystemTest.php
@@ -5,12 +5,15 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit;
+
 use Piwik\Filesystem;
 
 /**
  * @group Core
  */
-class FilesystemTest extends PHPUnit_Framework_TestCase
+class FilesystemTest extends \PHPUnit_Framework_TestCase
 {
     private $testPath;
 
diff --git a/tests/PHPUnit/Unit/IPTest.php b/tests/PHPUnit/Unit/IPTest.php
index b542a74ab22ba156fed62cf1b624b6f34bd62c29..a78d7ddecad3f0f4cdb3c61f0892448c2fa6ee41 100644
--- a/tests/PHPUnit/Unit/IPTest.php
+++ b/tests/PHPUnit/Unit/IPTest.php
@@ -8,11 +8,13 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit;
+
 use Piwik\Common;
 use Piwik\Config;
 use Piwik\IP;
 
-class IPTest extends PHPUnit_Framework_TestCase
+class IPTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * Dataprovider for long2ip test
diff --git a/tests/PHPUnit/Unit/Menu/MenuReportingTest.php b/tests/PHPUnit/Unit/Menu/MenuReportingTest.php
index b82c4a1aaf0e0ef6e061c22713b636c3bdb463c1..78d26b6427e4fa42863a31d231b1dd9d710769b2 100644
--- a/tests/PHPUnit/Unit/Menu/MenuReportingTest.php
+++ b/tests/PHPUnit/Unit/Menu/MenuReportingTest.php
@@ -6,19 +6,21 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit\Menu;
+
 use Piwik\Access;
 use Piwik\Plugin\Report;
 use Piwik\Piwik;
 use Piwik\Metrics;
+use Piwik\Tests\Framework\Mock\FakeAccess;
 use Piwik\Translate;
 use Piwik\Menu\MenuReporting;
 use Piwik\Plugin\Manager as PluginManager;
 
-
 /**
  * @group Core
  */
-class Menu_ReportingTest extends PHPUnit_Framework_TestCase
+class ReportingTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @var MenuReporting
diff --git a/tests/PHPUnit/Unit/MetricsTest.php b/tests/PHPUnit/Unit/MetricsTest.php
index c7052102e8610da6b082ee6ee8e46036654105c0..610e1cf45924ecb698b51356633e168d70534af4 100644
--- a/tests/PHPUnit/Unit/MetricsTest.php
+++ b/tests/PHPUnit/Unit/MetricsTest.php
@@ -1,14 +1,19 @@
 <?php
-use Piwik\Access;
-use Piwik\Metrics;
-
 /**
  * Piwik - free/libre analytics platform
  *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-class Core_MetricsTest extends PHPUnit_Framework_TestCase
+
+namespace Piwik\Tests\Unit;
+
+use Piwik\Access;
+use Piwik\Metrics;
+use Piwik\Site;
+use Piwik\Tests\Framework\Mock\FakeAccess;
+
+class Core_MetricsTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @group Core
@@ -117,7 +122,7 @@ class Core_MetricsTest extends PHPUnit_Framework_TestCase
      */
     public function testGetUnit($column, $expected)
     {
-        \Piwik\Site::setSites(array(
+        Site::setSites(array(
             1 => array('name' => 'TestSite', 'currency' => 'EUR')
         ));
 
diff --git a/tests/PHPUnit/Unit/NonceTest.php b/tests/PHPUnit/Unit/NonceTest.php
index 6a9a90994c3e1e4ba2d272dfbbdf7f2bbd42cb19..c12c245ae25fe1c679de94476146665f4a9e1637 100644
--- a/tests/PHPUnit/Unit/NonceTest.php
+++ b/tests/PHPUnit/Unit/NonceTest.php
@@ -1,16 +1,20 @@
 <?php
-use Piwik\Config;
-use Piwik\Nonce;
-
 /**
  * Piwik - free/libre analytics platform
  *
- * @backupGlobals enabled
- *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-class NonceTest extends PHPUnit_Framework_TestCase
+
+namespace Piwik\Tests\Unit;
+
+use Piwik\Config;
+use Piwik\Nonce;
+
+/**
+ * @backupGlobals enabled
+ */
+class NonceTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * Dataprovider for acceptable origins test
diff --git a/tests/PHPUnit/Unit/Period/DayTest.php b/tests/PHPUnit/Unit/Period/DayTest.php
index eb653fcc5c25df9d368020dec794dde4fd24c5bc..ae1ba01844a7106942595a5105b30aeb1c56d08e 100644
--- a/tests/PHPUnit/Unit/Period/DayTest.php
+++ b/tests/PHPUnit/Unit/Period/DayTest.php
@@ -5,14 +5,14 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\Period;
+
 use Piwik\Date;
 use Piwik\Period\Day;
 use Piwik\Translate;
 
-/**
- * Testing Period_Day
- */
-class Period_DayTest extends PHPUnit_Framework_TestCase
+class Period_DayTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @group Core
@@ -21,7 +21,7 @@ class Period_DayTest extends PHPUnit_Framework_TestCase
     {
         try {
             new Day('Invalid Date');
-        } catch (Exception $e) {
+        } catch (\Exception $e) {
             return;
         }
         $this->fail('Expected Exception not raised');
@@ -203,7 +203,7 @@ class Period_DayTest extends PHPUnit_Framework_TestCase
 
         try {
             $period->addSubperiod('');
-        } catch (Exception $e) {
+        } catch (\Exception $e) {
             return;
         }
         // expected string
diff --git a/tests/PHPUnit/Unit/Period/MonthTest.php b/tests/PHPUnit/Unit/Period/MonthTest.php
index 5821aceee5344f96abf9ff9d25c873a7dc3c4f4f..916f925e6d08bfc0779b65d8315d1dc5dba36c87 100644
--- a/tests/PHPUnit/Unit/Period/MonthTest.php
+++ b/tests/PHPUnit/Unit/Period/MonthTest.php
@@ -5,14 +5,14 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\Period;
+
 use Piwik\Date;
 use Piwik\Period\Month;
 use Piwik\Translate;
 
-/**
- * Testing Period_Month
- */
-class Period_MonthTest extends PHPUnit_Framework_TestCase
+class Period_MonthTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * testing december
diff --git a/tests/PHPUnit/Unit/Period/RangeTest.php b/tests/PHPUnit/Unit/Period/RangeTest.php
index b2114a43720538b59ab51caa5c2f373a3c8256ad..7c92d2119fc1bb324e8e375379c494e92882dfc4 100644
--- a/tests/PHPUnit/Unit/Period/RangeTest.php
+++ b/tests/PHPUnit/Unit/Period/RangeTest.php
@@ -5,6 +5,10 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\Period;
+
+use Exception;
 use Piwik\Date;
 use Piwik\Period\Month;
 use Piwik\Period\Range;
@@ -12,10 +16,7 @@ use Piwik\Period\Week;
 use Piwik\Period\Year;
 use Piwik\Translate;
 
-/**
- * @group Core_Period_RangeTest
- */
-class Period_RangeTest extends PHPUnit_Framework_TestCase
+class Period_RangeTest extends \PHPUnit_Framework_TestCase
 {
     // test range 1
     /**
diff --git a/tests/PHPUnit/Unit/Period/WeekTest.php b/tests/PHPUnit/Unit/Period/WeekTest.php
index 2994f8e13daac5bf46754dfe652fdd0f3ff044a9..c543a2db5d1fc5b6dc8b183ab48ee0fcf7bdfe5e 100644
--- a/tests/PHPUnit/Unit/Period/WeekTest.php
+++ b/tests/PHPUnit/Unit/Period/WeekTest.php
@@ -5,14 +5,14 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\Period;
+
 use Piwik\Date;
 use Piwik\Period\Week;
 use Piwik\Translate;
 
-/**
- * Testing Period_Week
- */
-class Period_WeekTest extends PHPUnit_Framework_TestCase
+class Period_WeekTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * test week between 2 years
diff --git a/tests/PHPUnit/Unit/Period/YearTest.php b/tests/PHPUnit/Unit/Period/YearTest.php
index ef28d619d6be9e901eacc25807f6148f547ccf6c..fad41535de8e89ce3bc6e0981adce7d46b778ede 100644
--- a/tests/PHPUnit/Unit/Period/YearTest.php
+++ b/tests/PHPUnit/Unit/Period/YearTest.php
@@ -5,14 +5,14 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\Period;
+
 use Piwik\Date;
 use Piwik\Period\Year;
 use Piwik\Translate;
 
-/**
- * Testing Period_Year
- */
-class Period_YearTest extends PHPUnit_Framework_TestCase
+class Period_YearTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * test normal case
diff --git a/tests/PHPUnit/Unit/PeriodTest.php b/tests/PHPUnit/Unit/PeriodTest.php
index 8888c4c763670ac275491c0bfe825eae63102cf0..bbae689f95f6e4adef50b589bc9f008c72bcf8ed 100644
--- a/tests/PHPUnit/Unit/PeriodTest.php
+++ b/tests/PHPUnit/Unit/PeriodTest.php
@@ -5,6 +5,9 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit;
+
 use Piwik\Date;
 use Piwik\Period\Day;
 use Piwik\Period;
@@ -12,7 +15,7 @@ use Piwik\Period\Month;
 use Piwik\Period\Week;
 use Piwik\Period\Year;
 
-class PeriodTest extends PHPUnit_Framework_TestCase
+class PeriodTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @group Core
@@ -95,7 +98,7 @@ class PeriodTest extends PHPUnit_Framework_TestCase
     {
         try {
             Period\Factory::build('inValid', Date::today());
-        } catch (Exception $e) {
+        } catch (\Exception $e) {
             return;
         }
         $this->fail('Expected Exception not raised');
diff --git a/tests/PHPUnit/Unit/RankingQueryTest.php b/tests/PHPUnit/Unit/RankingQueryTest.php
index 7941c25d350783aa607929f8cb654fb81cb01784..49c24e56bea2e668a69b75bd8387231cb331b9a4 100644
--- a/tests/PHPUnit/Unit/RankingQueryTest.php
+++ b/tests/PHPUnit/Unit/RankingQueryTest.php
@@ -6,11 +6,12 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit;
+
 use Piwik\RankingQuery;
 
-class RankingQueryTest extends PHPUnit_Framework_TestCase
+class RankingQueryTest extends \PHPUnit_Framework_TestCase
 {
-
     /**
      * @group Core
      */
@@ -146,5 +147,4 @@ class RankingQueryTest extends PHPUnit_Framework_TestCase
         $message = 'Unexpected query: ' . $query;
         $this->assertEquals($queryNoWhitespace, $expectedNoWhitespace, $message);
     }
-
 }
diff --git a/tests/PHPUnit/Unit/RegistryTest.php b/tests/PHPUnit/Unit/RegistryTest.php
index c6c2aff894c95ad22ef2e1ab50f1d3ad595ce9d6..376c857ed11302f956766e35ff8057239e5c4d26 100644
--- a/tests/PHPUnit/Unit/RegistryTest.php
+++ b/tests/PHPUnit/Unit/RegistryTest.php
@@ -5,9 +5,12 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit;
+
 use Piwik\Registry;
 
-class RegistryTest extends PHPUnit_Framework_TestCase
+class RegistryTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @group Core
diff --git a/tests/PHPUnit/Unit/ScheduledTaskTest.php b/tests/PHPUnit/Unit/ScheduledTaskTest.php
index 5a131521ff3681cb5ed8f4a7f4288d4ce5fcd500..1b67ddf6f252954341578157f0d0a1ca155e3baf 100644
--- a/tests/PHPUnit/Unit/ScheduledTaskTest.php
+++ b/tests/PHPUnit/Unit/ScheduledTaskTest.php
@@ -5,19 +5,20 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit;
+
 use Piwik\Plugins\ScheduledReports\ScheduledReports;
 use Piwik\ScheduledTask;
 
-require_once PIWIK_INCLUDE_PATH . '/plugins/ScheduledReports/ScheduledReports.php';
-
-class ScheduledTaskTest extends PHPUnit_Framework_TestCase
+class ScheduledTaskTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @group Core
      */
     public function testGetClassName()
     {
-        $scheduledTask = new ScheduledTask (new ScheduledReports(), null, null, null);
+        $scheduledTask = new ScheduledTask(new ScheduledReports(), null, null, null);
         $this->assertEquals('Piwik\Plugins\ScheduledReports\ScheduledReports', $scheduledTask->getClassName());
     }
 
@@ -43,5 +44,4 @@ class ScheduledTaskTest extends PHPUnit_Framework_TestCase
     {
         $this->assertEquals($expectedTaskName, ScheduledTask::getTaskName($className, $methodName, $methodParameter));
     }
-
 }
diff --git a/tests/PHPUnit/Unit/ScheduledTime/DailyTest.php b/tests/PHPUnit/Unit/ScheduledTime/DailyTest.php
index 1a62019392a46115f6553ad2cf16a5198c98cb6d..55a6c0852046a547d0860c53201dc68c0d8ba1a9 100644
--- a/tests/PHPUnit/Unit/ScheduledTime/DailyTest.php
+++ b/tests/PHPUnit/Unit/ScheduledTime/DailyTest.php
@@ -6,10 +6,14 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
+namespace Piwik\Tests\Unit\ScheduledTime;
+use Exception;
+use Piwik\ScheduledTime;
+
 /**
  * @group Core
  */
-class ScheduledTime_DailyTest extends PHPUnit_Framework_TestCase
+class ScheduledTime_DailyTest extends \PHPUnit_Framework_TestCase
 {
     private static $_JANUARY_01_1971_09_00_00;
     private static $_JANUARY_01_1971_09_10_00;
@@ -33,7 +37,7 @@ class ScheduledTime_DailyTest extends PHPUnit_Framework_TestCase
     public function testSetHourScheduledTimeDailyNegative()
     {
         try {
-            $dailySchedule = \Piwik\ScheduledTime::factory('daily');
+            $dailySchedule = ScheduledTime::factory('daily');
             $dailySchedule->setHour(-1);
 
         } catch (Exception $e) {
@@ -48,7 +52,7 @@ class ScheduledTime_DailyTest extends PHPUnit_Framework_TestCase
     public function testSetHourScheduledTimeDailyOver24()
     {
         try {
-            $dailySchedule = \Piwik\ScheduledTime::factory('daily');
+            $dailySchedule = ScheduledTime::factory('daily');
             $dailySchedule->setHour(25);
         } catch (Exception $e) {
             return;
@@ -62,7 +66,7 @@ class ScheduledTime_DailyTest extends PHPUnit_Framework_TestCase
     public function testSetDayScheduledTimeDaily()
     {
         try {
-            $dailySchedule = \Piwik\ScheduledTime::factory('daily');
+            $dailySchedule = ScheduledTime::factory('daily');
             $dailySchedule->setDay(1);
         } catch (Exception $e) {
             return;
diff --git a/tests/PHPUnit/Unit/ScheduledTime/HourlyTest.php b/tests/PHPUnit/Unit/ScheduledTime/HourlyTest.php
index 14f4ce3c0ef649a24a11331d849898e00ba4f92e..4c71c1670a01ce1fc2d1fb089d25a7be934595c7 100644
--- a/tests/PHPUnit/Unit/ScheduledTime/HourlyTest.php
+++ b/tests/PHPUnit/Unit/ScheduledTime/HourlyTest.php
@@ -5,9 +5,13 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\ScheduledTime;
+
+use Exception;
 use Piwik\ScheduledTime\Hourly;
 
-class ScheduledTime_HourlyTest extends PHPUnit_Framework_TestCase
+class ScheduledTime_HourlyTest extends \PHPUnit_Framework_TestCase
 {
     private static $_JANUARY_01_1971_09_00_00;
     private static $_JANUARY_01_1971_09_10_00;
diff --git a/tests/PHPUnit/Unit/ScheduledTime/MonthlyTest.php b/tests/PHPUnit/Unit/ScheduledTime/MonthlyTest.php
index 17bde4ee6d9b4de5775d1140c31b962ab03a6722..58ed51ab02760a42fe17827d25d543ed94de8a3b 100644
--- a/tests/PHPUnit/Unit/ScheduledTime/MonthlyTest.php
+++ b/tests/PHPUnit/Unit/ScheduledTime/MonthlyTest.php
@@ -5,12 +5,15 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\ScheduledTime;
+
 use Piwik\ScheduledTime\Monthly;
 
 /**
  * @group Core
  */
-class ScheduledTime_MonthlyTest extends PHPUnit_Framework_TestCase
+class ScheduledTime_MonthlyTest extends \PHPUnit_Framework_TestCase
 {
     public static $_JANUARY_01_1971_09_00_00; // initialized below class definition
     public static $_JANUARY_02_1971_09_00_00;
diff --git a/tests/PHPUnit/Unit/ScheduledTime/WeeklyTest.php b/tests/PHPUnit/Unit/ScheduledTime/WeeklyTest.php
index 62b6fce8ed37e35ae412e3c8f816cf9df377f981..793d87f9e591535f7981c97be6566e15a4de3092 100644
--- a/tests/PHPUnit/Unit/ScheduledTime/WeeklyTest.php
+++ b/tests/PHPUnit/Unit/ScheduledTime/WeeklyTest.php
@@ -5,12 +5,16 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit\ScheduledTime;
+
+use Exception;
 use Piwik\ScheduledTime\Weekly;
 
 /**
  * @group Core
  */
-class ScheduledTime_WeeklyTest extends PHPUnit_Framework_TestCase
+class ScheduledTime_WeeklyTest extends \PHPUnit_Framework_TestCase
 {
     public static $_JANUARY_01_1971_09_10_00; // initialized below class declaration
     public static $_JANUARY_04_1971_00_00_00;
diff --git a/tests/PHPUnit/Unit/SegmentExpressionTest.php b/tests/PHPUnit/Unit/SegmentExpressionTest.php
index 874df9e2d15454f4010da629f8febab16c417468..aadecc8f0eae4523911c4b6395d0e19fb0e527f0 100644
--- a/tests/PHPUnit/Unit/SegmentExpressionTest.php
+++ b/tests/PHPUnit/Unit/SegmentExpressionTest.php
@@ -5,9 +5,12 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit;
+
 use Piwik\SegmentExpression;
 
-class SegmentExpressionTest extends PHPUnit_Framework_TestCase
+class SegmentExpressionTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * Dataprovider for testSegmentSqlSimpleNoOperation
@@ -121,7 +124,7 @@ class SegmentExpressionTest extends PHPUnit_Framework_TestCase
             $segment = new SegmentExpression($bogus);
             $segment->parseSubExpressions();
             $segment->getSql();
-        } catch (Exception $e) {
+        } catch (\Exception $e) {
             return;
         }
         $this->fail('Expected exception not raised for:' . var_export($segment->getSql(), true));
diff --git a/tests/PHPUnit/Unit/TaskSchedulerTest.php b/tests/PHPUnit/Unit/TaskSchedulerTest.php
index 70ec2f2ef4f9b567c83b4746d168211680497a1e..762ae44de5e958d0cbd531eb08545a8b7314800f 100644
--- a/tests/PHPUnit/Unit/TaskSchedulerTest.php
+++ b/tests/PHPUnit/Unit/TaskSchedulerTest.php
@@ -5,13 +5,20 @@
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
+
+namespace Piwik\Tests\Unit;
+
 use Piwik\EventDispatcher;
+use Piwik\Piwik;
+use Piwik\Plugin;
 use Piwik\ScheduledTask;
 use Piwik\ScheduledTaskTimetable;
 use Piwik\TaskScheduler;
 use Piwik\Tests\Framework\Mock\PiwikOption;
+use ReflectionMethod;
+use ReflectionProperty;
 
-class TaskSchedulerTest extends PHPUnit_Framework_TestCase
+class TaskSchedulerTest extends \PHPUnit_Framework_TestCase
 {
     private static function getTestTimetable()
     {
@@ -195,13 +202,13 @@ class TaskSchedulerTest extends PHPUnit_Framework_TestCase
         $scheduledTaskThree = new ScheduledTask ($this, 'scheduledTaskThree', null, $dailySchedule);
 
         $caseOneExpectedTable = array(
-            'TaskSchedulerTest.scheduledTaskOne'   => $scheduledTaskOne->getRescheduledTime(),
-            'TaskSchedulerTest.scheduledTaskTwo_1' => $systemTime + 60000,
-            'TaskSchedulerTest.scheduledTaskThree' => $scheduledTaskThree->getRescheduledTime(),
+            'Piwik\Tests\Unit\TaskSchedulerTest.scheduledTaskOne'   => $scheduledTaskOne->getRescheduledTime(),
+            'Piwik\Tests\Unit\TaskSchedulerTest.scheduledTaskTwo_1' => $systemTime + 60000,
+            'Piwik\Tests\Unit\TaskSchedulerTest.scheduledTaskThree' => $scheduledTaskThree->getRescheduledTime(),
         );
 
         $caseTwoTimetableBeforeExecution = $caseOneExpectedTable;
-        $caseTwoTimetableBeforeExecution['TaskSchedulerTest.scheduledTaskThree'] = $systemTime; // simulate elapsed time between case 1 and 2
+        $caseTwoTimetableBeforeExecution['Piwik\Tests\Unit\TaskSchedulerTest.scheduledTaskThree'] = $systemTime; // simulate elapsed time between case 1 and 2
 
         return array(
 
@@ -214,13 +221,13 @@ class TaskSchedulerTest extends PHPUnit_Framework_TestCase
 
                 // methods that should be executed
                 array(
-                    'TaskSchedulerTest.scheduledTaskOne'
+                    'Piwik\Tests\Unit\TaskSchedulerTest.scheduledTaskOne'
                 ),
 
                 // timetable before task execution
                 array(
-                    'TaskSchedulerTest.scheduledTaskOne'   => $systemTime,
-                    'TaskSchedulerTest.scheduledTaskTwo_1' => $systemTime + 60000,
+                    'Piwik\Tests\Unit\TaskSchedulerTest.scheduledTaskOne'   => $systemTime,
+                    'Piwik\Tests\Unit\TaskSchedulerTest.scheduledTaskTwo_1' => $systemTime + 60000,
                 ),
                 // configured tasks
                 array(
@@ -237,13 +244,13 @@ class TaskSchedulerTest extends PHPUnit_Framework_TestCase
             array(
                 // expected timetable
                 array(
-                    'TaskSchedulerTest.scheduledTaskOne'   => $scheduledTaskOne->getRescheduledTime(),
-                    'TaskSchedulerTest.scheduledTaskThree' => $scheduledTaskThree->getRescheduledTime()
+                    'Piwik\Tests\Unit\TaskSchedulerTest.scheduledTaskOne'   => $scheduledTaskOne->getRescheduledTime(),
+                    'Piwik\Tests\Unit\TaskSchedulerTest.scheduledTaskThree' => $scheduledTaskThree->getRescheduledTime()
                 ),
 
                 // methods that should be executed
                 array(
-                    'TaskSchedulerTest.scheduledTaskThree'
+                    'Piwik\Tests\Unit\TaskSchedulerTest.scheduledTaskThree'
                 ),
 
                 // timetable before task execution
@@ -277,13 +284,13 @@ class TaskSchedulerTest extends PHPUnit_Framework_TestCase
     public function testRunTasks($expectedTimetable, $expectedExecutedTasks, $timetableBeforeTaskExecution, $configuredTasks)
     {
         // temporarily unload plugins
-        $plugins = \Piwik\Plugin\Manager::getInstance()->getLoadedPlugins();
-        $plugins = array_map(function ($p) { return $p->getPluginName(); }, $plugins);
+        $plugins = Plugin\Manager::getInstance()->getLoadedPlugins();
+        $plugins = array_map(function (Plugin $p) { return $p->getPluginName(); }, $plugins);
 
-        \Piwik\Plugin\Manager::getInstance()->unloadPlugins();
+        Plugin\Manager::getInstance()->unloadPlugins();
 
         // make sure the get tasks event returns our configured tasks
-        \Piwik\Piwik::addAction(TaskScheduler::GET_TASKS_EVENT, function(&$tasks) use($configuredTasks) {
+        Piwik::addAction(TaskScheduler::GET_TASKS_EVENT, function(&$tasks) use($configuredTasks) {
             $tasks = $configuredTasks;
         });
 
@@ -308,7 +315,7 @@ class TaskSchedulerTest extends PHPUnit_Framework_TestCase
 
         // restore loaded plugins & piwik options
         EventDispatcher::getInstance()->clearObservers(TaskScheduler::GET_TASKS_EVENT);
-        \Piwik\Plugin\Manager::getInstance()->loadPlugins($plugins);
+        Plugin\Manager::getInstance()->loadPlugins($plugins);
         self::resetPiwikOption();
     }
 
diff --git a/tests/PHPUnit/Unit/Translate/Filter/ByBaseTranslationsTest.php b/tests/PHPUnit/Unit/Translate/Filter/ByBaseTranslationsTest.php
index 8ca2f093191df1f0d8d70bdae1be0163b9dfdccd..5cec2c7ca7b6c37027b4ef593d1fd94d7d11a7ad 100644
--- a/tests/PHPUnit/Unit/Translate/Filter/ByBaseTranslationsTest.php
+++ b/tests/PHPUnit/Unit/Translate/Filter/ByBaseTranslationsTest.php
@@ -1,13 +1,16 @@
 <?php
-use Piwik\Translate\Filter\ByBaseTranslations;
-
 /**
  * Piwik - free/libre analytics platform
  *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-class ByBaseTranslationsTest extends PHPUnit_Framework_TestCase
+
+namespace Piwik\Tests\Unit\Translate\Filter;
+
+use Piwik\Translate\Filter\ByBaseTranslations;
+
+class ByBaseTranslationsTest extends \PHPUnit_Framework_TestCase
 {
     public function getFilterTestData()
     {
diff --git a/tests/PHPUnit/Unit/Translate/Filter/ByParameterCountTest.php b/tests/PHPUnit/Unit/Translate/Filter/ByParameterCountTest.php
index 06c72ed24f046cf265e00fe2a1fe56f55d4732bd..220e90f9a6a1c1dfa7fd6b5bfe9664e2dc40b565 100644
--- a/tests/PHPUnit/Unit/Translate/Filter/ByParameterCountTest.php
+++ b/tests/PHPUnit/Unit/Translate/Filter/ByParameterCountTest.php
@@ -1,13 +1,16 @@
 <?php
-use Piwik\Translate\Filter\ByParameterCount;
-
 /**
  * Piwik - free/libre analytics platform
  *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-class ByParameterCountTest extends PHPUnit_Framework_TestCase
+
+namespace Piwik\Tests\Unit\Translate\Filter;
+
+use Piwik\Translate\Filter\ByParameterCount;
+
+class ByParameterCountTest extends \PHPUnit_Framework_TestCase
 {
     public function getFilterTestData()
     {
diff --git a/tests/PHPUnit/Unit/Translate/Filter/EmptyTranslationsTest.php b/tests/PHPUnit/Unit/Translate/Filter/EmptyTranslationsTest.php
index a083e50a435a3aa375209b9099cb4d0b746ec70b..47ec5348db3583384f8eb9718bbfa4b539d6edb8 100644
--- a/tests/PHPUnit/Unit/Translate/Filter/EmptyTranslationsTest.php
+++ b/tests/PHPUnit/Unit/Translate/Filter/EmptyTranslationsTest.php
@@ -1,13 +1,16 @@
 <?php
-use Piwik\Translate\Filter\EmptyTranslations;
-
 /**
  * Piwik - free/libre analytics platform
  *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-class EmptyTranslationsTest extends PHPUnit_Framework_TestCase
+
+namespace Piwik\Tests\Unit\Translate\Filter;
+
+use Piwik\Translate\Filter\EmptyTranslations;
+
+class EmptyTranslationsTest extends \PHPUnit_Framework_TestCase
 {
     public function getFilterTestData()
     {
diff --git a/tests/PHPUnit/Unit/Translate/Filter/EncodedEntitiesTest.php b/tests/PHPUnit/Unit/Translate/Filter/EncodedEntitiesTest.php
index cfad46387badf8503b2c621668c1912145cfa179..19ceb5f7843d33c55a413a32a41af86547eaffe0 100644
--- a/tests/PHPUnit/Unit/Translate/Filter/EncodedEntitiesTest.php
+++ b/tests/PHPUnit/Unit/Translate/Filter/EncodedEntitiesTest.php
@@ -1,13 +1,16 @@
 <?php
-use Piwik\Translate\Filter\EncodedEntities;
-
 /**
  * Piwik - free/libre analytics platform
  *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-class EncodedEntitiesTest extends PHPUnit_Framework_TestCase
+
+namespace Piwik\Tests\Unit\Translate\Filter;
+
+use Piwik\Translate\Filter\EncodedEntities;
+
+class EncodedEntitiesTest extends \PHPUnit_Framework_TestCase
 {
     public function getFilterTestData()
     {
diff --git a/tests/PHPUnit/Unit/Translate/Filter/UnnecassaryWhitespacesTest.php b/tests/PHPUnit/Unit/Translate/Filter/UnnecassaryWhitespacesTest.php
index 3f86b97a0d6bebe2b2ac3f1a14e32517e404c8b9..77cecf7e77be97ad529de343f9e9f952aa34ec92 100644
--- a/tests/PHPUnit/Unit/Translate/Filter/UnnecassaryWhitespacesTest.php
+++ b/tests/PHPUnit/Unit/Translate/Filter/UnnecassaryWhitespacesTest.php
@@ -1,13 +1,16 @@
 <?php
-use Piwik\Translate\Filter\UnnecassaryWhitespaces;
-
 /**
  * Piwik - free/libre analytics platform
  *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-class UnnecassaryWhitepsacesTest extends PHPUnit_Framework_TestCase
+
+namespace Piwik\Tests\Unit\Translate\Filter;
+
+use Piwik\Translate\Filter\UnnecassaryWhitespaces;
+
+class UnnecassaryWhitepsacesTest extends \PHPUnit_Framework_TestCase
 {
     public function getFilterTestData()
     {
diff --git a/tests/PHPUnit/Unit/Translate/Validate/CoreTranslationsTest.php b/tests/PHPUnit/Unit/Translate/Validate/CoreTranslationsTest.php
index 3cde1e42c80ccad938e57e5a89b8e3250bb6c57c..258267fd3e858373acd75619b8f3eee1fd7b224c 100644
--- a/tests/PHPUnit/Unit/Translate/Validate/CoreTranslationsTest.php
+++ b/tests/PHPUnit/Unit/Translate/Validate/CoreTranslationsTest.php
@@ -1,13 +1,16 @@
 <?php
-use Piwik\Translate\Validate\CoreTranslations;
-
 /**
  * Piwik - free/libre analytics platform
  *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-class CoreTranslationsTest extends PHPUnit_Framework_TestCase
+
+namespace Piwik\Tests\Unit\Translate\Validate;
+
+use Piwik\Translate\Validate\CoreTranslations;
+
+class CoreTranslationsTest extends \PHPUnit_Framework_TestCase
 {
     public function setUp()
     {
diff --git a/tests/PHPUnit/Unit/Translate/Validate/NoScriptsTest.php b/tests/PHPUnit/Unit/Translate/Validate/NoScriptsTest.php
index e0a8f27b802736c377990e4c9dbbd17617329836..519126708d30f6dfed125e378e700a8cfe358917 100644
--- a/tests/PHPUnit/Unit/Translate/Validate/NoScriptsTest.php
+++ b/tests/PHPUnit/Unit/Translate/Validate/NoScriptsTest.php
@@ -1,13 +1,16 @@
 <?php
-use Piwik\Translate\Validate\NoScripts;
-
 /**
  * Piwik - free/libre analytics platform
  *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-class NoScriptsTest extends PHPUnit_Framework_TestCase
+
+namespace Piwik\Tests\Unit\Translate\Validate;
+
+use Piwik\Translate\Validate\NoScripts;
+
+class NoScriptsTest extends \PHPUnit_Framework_TestCase
 {
     public function getFilterTestDataValid()
     {
diff --git a/tests/PHPUnit/Unit/Translate/WriterTest.php b/tests/PHPUnit/Unit/Translate/WriterTest.php
index 500009941ad44d585c30c5e8986449d75a54f001..66e1efe30aa49b3b9fb89911174d222018c85434 100644
--- a/tests/PHPUnit/Unit/Translate/WriterTest.php
+++ b/tests/PHPUnit/Unit/Translate/WriterTest.php
@@ -1,4 +1,12 @@
 <?php
+/**
+ * Piwik - free/libre analytics platform
+ *
+ * @link http://piwik.org
+ * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
+ */
+
+namespace Piwik\Tests\Unit\Translate;
 
 use Piwik\Translate\Filter\ByBaseTranslations;
 use Piwik\Translate\Filter\ByParameterCount;
@@ -7,13 +15,7 @@ use Piwik\Translate\Validate\CoreTranslations;
 use Piwik\Translate\Validate\NoScripts;
 use Piwik\Translate\Writer;
 
-/**
- * Piwik - free/libre analytics platform
- *
- * @link http://piwik.org
- * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
- */
-class WriterTest extends PHPUnit_Framework_TestCase
+class WriterTest extends \PHPUnit_Framework_TestCase
 {
     public function setUp()
     {
@@ -46,7 +48,7 @@ class WriterTest extends PHPUnit_Framework_TestCase
     /**
      * @group Core
      *
-     * @expectedException Exception
+     * @expectedException \Exception
      */
     public function testConstructorInvalid()
     {
@@ -126,7 +128,7 @@ class WriterTest extends PHPUnit_Framework_TestCase
     /**
      * @group Core
      *
-     * @expectedException Exception
+     * @expectedException \Exception
      */
     public function testSaveException()
     {
@@ -137,7 +139,7 @@ class WriterTest extends PHPUnit_Framework_TestCase
     /**
      * @group Core
      *
-     * @expectedException Exception
+     * @expectedException \Exception
      */
     public function testSaveTemporaryException()
     {
@@ -249,7 +251,7 @@ class WriterTest extends PHPUnit_Framework_TestCase
     /**
      * @group Core
      *
-     * @expectedException Exception
+     * @expectedException \Exception
      * @dataProvider getInvalidLanguages
      */
     public function testSetLanguageInvalid($language)
diff --git a/tests/PHPUnit/Unit/TranslateTest.php b/tests/PHPUnit/Unit/TranslateTest.php
index b7a99f70ee5beaaa6cedf65cc03ca441fdb6de77..a26c9c3713b2f6a05038b285651fa8b2d4c6990a 100644
--- a/tests/PHPUnit/Unit/TranslateTest.php
+++ b/tests/PHPUnit/Unit/TranslateTest.php
@@ -1,14 +1,16 @@
 <?php
-
-use Piwik\Translate;
-
 /**
  * Piwik - free/libre analytics platform
  *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-class TranslateTest extends PHPUnit_Framework_TestCase
+
+namespace Piwik\Tests\Unit;
+
+use Piwik\Translate;
+
+class TranslateTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * Dataprovider for testClean
diff --git a/tests/PHPUnit/Unit/UrlHelperTest.php b/tests/PHPUnit/Unit/UrlHelperTest.php
index 79ba4fbecdd1161db0969bdbefeb372ec8df986d..9a006c7a40aacd03b4237a6560fd8963ddaa9c3a 100644
--- a/tests/PHPUnit/Unit/UrlHelperTest.php
+++ b/tests/PHPUnit/Unit/UrlHelperTest.php
@@ -1,13 +1,17 @@
 <?php
-use Piwik\UrlHelper;
-
 /**
  * Piwik - free/libre analytics platform
  *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-class Core_UrlHelperTest extends PHPUnit_Framework_TestCase
+
+namespace Piwik\Tests\Unit;
+
+use Piwik\UrlHelper;
+use Spyc;
+
+class Core_UrlHelperTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * Dataprovider for testIsUrl
@@ -176,13 +180,13 @@ class Core_UrlHelperTest extends PHPUnit_Framework_TestCase
     {
         $this->assertEquals($expected, UrlHelper::getLossyUrl($input));
     }
-
+
     private function includeDataFilesForSearchEngineTest()
     {
         include "DataFiles/SearchEngines.php";
         include "DataFiles/Countries.php";
     }
-
+
     /**
      * @group Core
      */
diff --git a/tests/PHPUnit/Unit/UrlTest.php b/tests/PHPUnit/Unit/UrlTest.php
index 3c2bafe73eff7c0e3d3afa4cfca4838e9385d49b..9ad2571be6576063a00245fd63b19486a8450626 100644
--- a/tests/PHPUnit/Unit/UrlTest.php
+++ b/tests/PHPUnit/Unit/UrlTest.php
@@ -1,16 +1,20 @@
 <?php
-use Piwik\Config;
-use Piwik\Url;
-
 /**
  * Piwik - free/libre analytics platform
  *
- * @backupGlobals enabled
- *
  * @link http://piwik.org
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
-class UrlTest extends PHPUnit_Framework_TestCase
+
+namespace Piwik\Tests\Unit;
+
+use Piwik\Config;
+use Piwik\Url;
+
+/**
+ * @backupGlobals enabled
+ */
+class UrlTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @group Core