From 27f468c2ff91b57097598192d5f2cc246675f946 Mon Sep 17 00:00:00 2001
From: Matthieu Napoli <matthieu@mnapoli.fr>
Date: Thu, 18 Jun 2015 17:18:46 +0200
Subject: [PATCH] Remove usage of UnitTestCase

---
 .../ExamplePlugin/tests/Unit/SimpleTest.php   |  6 +---
 .../tests/Unit/AddSegmentByLabelInUTCTest.php |  3 +-
 .../Framework/TestCase/UnitTestCase.php       |  3 +-
 .../AssetManagerTest.php                      | 13 +++----
 tests/PHPUnit/Integration/CacheTest.php       | 34 +++++++++++++++++++
 .../Plugin/Dimension/ActionDimensionTest.php  |  6 ++--
 .../Dimension/ConversionDimensionTest.php     |  6 ++--
 .../DimensionMetadataProviderTest.php         |  2 +-
 .../Plugin/Dimension/VisitDimensionTest.php   |  8 ++---
 tests/PHPUnit/Unit/Archive/ChunkTest.php      |  6 +---
 tests/PHPUnit/Unit/CacheTest.php              | 19 +----------
 tests/PHPUnit/Unit/FilesystemTest.php         |  3 +-
 12 files changed, 59 insertions(+), 50 deletions(-)
 rename tests/PHPUnit/{Unit => Integration}/AssetManagerTest.php (98%)
 create mode 100644 tests/PHPUnit/Integration/CacheTest.php
 rename tests/PHPUnit/{Unit => Integration}/Plugin/Dimension/ActionDimensionTest.php (97%)
 rename tests/PHPUnit/{Unit => Integration}/Plugin/Dimension/ConversionDimensionTest.php (97%)
 rename tests/PHPUnit/{Unit => Integration}/Plugin/Dimension/DimensionMetadataProviderTest.php (98%)
 rename tests/PHPUnit/{Unit => Integration}/Plugin/Dimension/VisitDimensionTest.php (98%)

diff --git a/plugins/ExamplePlugin/tests/Unit/SimpleTest.php b/plugins/ExamplePlugin/tests/Unit/SimpleTest.php
index 5551b4819d..a40db2bac1 100644
--- a/plugins/ExamplePlugin/tests/Unit/SimpleTest.php
+++ b/plugins/ExamplePlugin/tests/Unit/SimpleTest.php
@@ -8,25 +8,21 @@
 
 namespace Piwik\Plugins\ExamplePlugin\tests\Unit;
 
-use Piwik\Tests\Framework\TestCase\UnitTestCase;
-
 /**
  * @group ExamplePlugin
  * @group SimpleTest
  * @group Plugins
  */
-class SimpleTest extends UnitTestCase
+class SimpleTest extends \PHPUnit_Framework_TestCase
 {
     public function setUp()
     {
-        parent::setUp();
         // set up here if needed
     }
     
     public function tearDown()
     {
         // tear down here if needed
-        parent::tearDown();
     }
 
     /**
diff --git a/plugins/VisitTime/tests/Unit/AddSegmentByLabelInUTCTest.php b/plugins/VisitTime/tests/Unit/AddSegmentByLabelInUTCTest.php
index bf0c828321..8a70d11548 100644
--- a/plugins/VisitTime/tests/Unit/AddSegmentByLabelInUTCTest.php
+++ b/plugins/VisitTime/tests/Unit/AddSegmentByLabelInUTCTest.php
@@ -10,14 +10,13 @@ namespace Piwik\Plugins\VisitTime\tests\Unit;
 
 use Piwik\DataTable\Row;
 use Piwik\DataTable;
-use Piwik\Tests\Framework\TestCase\UnitTestCase;
 
 /**
  * @group VisitTime
  * @group AddSegmentByLabelInUTCTest
  * @group Plugins
  */
-class AddSegmentByLabelInUTCTest extends UnitTestCase
+class AddSegmentByLabelInUTCTest extends \PHPUnit_Framework_TestCase
 {
     private $filter = 'Piwik\Plugins\VisitTime\DataTable\Filter\AddSegmentByLabelInUTC';
 
diff --git a/tests/PHPUnit/Framework/TestCase/UnitTestCase.php b/tests/PHPUnit/Framework/TestCase/UnitTestCase.php
index 70c054faea..990827c1bc 100755
--- a/tests/PHPUnit/Framework/TestCase/UnitTestCase.php
+++ b/tests/PHPUnit/Framework/TestCase/UnitTestCase.php
@@ -9,12 +9,13 @@
 namespace Piwik\Tests\Framework\TestCase;
 
 use Piwik\Application\Environment;
-use Piwik\EventDispatcher;
 use Piwik\Tests\Framework\Mock\File;
 
 /**
  * Base class for Unit tests.
  *
+ * @deprecated Unit tests don't need no environment.
+ *
  * @since 2.10.0
  */
 abstract class UnitTestCase extends \PHPUnit_Framework_TestCase
diff --git a/tests/PHPUnit/Unit/AssetManagerTest.php b/tests/PHPUnit/Integration/AssetManagerTest.php
similarity index 98%
rename from tests/PHPUnit/Unit/AssetManagerTest.php
rename to tests/PHPUnit/Integration/AssetManagerTest.php
index 02ee3b724f..2dff91aabf 100644
--- a/tests/PHPUnit/Unit/AssetManagerTest.php
+++ b/tests/PHPUnit/Integration/AssetManagerTest.php
@@ -6,7 +6,7 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
-namespace Piwik\Tests\Unit;
+namespace Piwik\Tests\Integration;
 
 use Piwik\AssetManager\UIAsset\OnDiskUIAsset;
 use Piwik\AssetManager\UIAsset;
@@ -15,7 +15,8 @@ use Piwik\AssetManager\UIAssetFetcher\StaticUIAssetFetcher;
 use Piwik\Config;
 use Piwik\Plugin;
 use Piwik\Plugin\Manager;
-use Piwik\Tests\Framework\TestCase\UnitTestCase;
+use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
+use Piwik\Tests\Unit\AssetManager\PluginManagerMock;
 use Piwik\Tests\Unit\AssetManager\PluginMock;
 use Piwik\Tests\Unit\AssetManager\ThemeMock;
 use Piwik\Tests\Unit\AssetManager\UIAssetCacheBusterMock;
@@ -23,7 +24,7 @@ use Piwik\Tests\Unit\AssetManager\UIAssetCacheBusterMock;
 /**
  * @group AssetManagerTest
  */
-class AssetManagerTest extends UnitTestCase
+class AssetManagerTest extends IntegrationTestCase
 {
     // todo Theme->rewriteAssetPathIfOverridesFound is not tested
 
@@ -51,12 +52,12 @@ class AssetManagerTest extends UnitTestCase
     private $mergedAsset;
 
     /**
-     * @var \Piwik\Tests\Unit\AssetManager\UIAssetCacheBusterMock
+     * @var UIAssetCacheBusterMock
      */
     private $cacheBuster;
 
     /**
-     * @var \Piwik\Tests\Unit\AssetManager\PluginManagerMock
+     * @var PluginManagerMock
      */
     private $pluginManager;
 
@@ -88,7 +89,7 @@ class AssetManagerTest extends UnitTestCase
         parent::tearDown();
     }
 
-    protected function provideContainerConfig()
+    public function provideContainerConfig()
     {
         return array(
             'Piwik\Plugin\Manager' => \DI\object('Piwik\Tests\Unit\AssetManager\PluginManagerMock')
diff --git a/tests/PHPUnit/Integration/CacheTest.php b/tests/PHPUnit/Integration/CacheTest.php
new file mode 100644
index 0000000000..93aaefc764
--- /dev/null
+++ b/tests/PHPUnit/Integration/CacheTest.php
@@ -0,0 +1,34 @@
+<?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;
+
+use Piwik\Cache;
+use Piwik\Piwik;
+use Piwik\Tests\Framework\TestCase\UnitTestCase;
+
+/**
+ * @group Cache
+ */
+class CacheTest extends UnitTestCase
+{
+    public function test_getEagerCache_shouldPersistOnceEventWasTriggered()
+    {
+        $storageId = 'eagercache-test-ui';
+        $cache = Cache::getEagerCache();
+        $cache->save('test', 'mycontent'); // make sure something was changed, otherwise it won't save anything
+
+        /** @var Cache\Backend $backend */
+        $backend = $this->environment->getContainer()->get('Piwik\Cache\Backend');
+        $this->assertFalse($backend->doContains($storageId));
+
+        Piwik::postEvent('Request.dispatch.end'); // should trigger save
+
+        $this->assertTrue($backend->doContains($storageId));
+    }
+}
diff --git a/tests/PHPUnit/Unit/Plugin/Dimension/ActionDimensionTest.php b/tests/PHPUnit/Integration/Plugin/Dimension/ActionDimensionTest.php
similarity index 97%
rename from tests/PHPUnit/Unit/Plugin/Dimension/ActionDimensionTest.php
rename to tests/PHPUnit/Integration/Plugin/Dimension/ActionDimensionTest.php
index 7e79190971..1666b193db 100644
--- a/tests/PHPUnit/Unit/Plugin/Dimension/ActionDimensionTest.php
+++ b/tests/PHPUnit/Integration/Plugin/Dimension/ActionDimensionTest.php
@@ -6,13 +6,13 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
-namespace Piwik\Plugins\Test;
 // there is a test that requires the class to be defined in a plugin
+namespace Piwik\Plugins\Test;
 
 use Piwik\Plugin\Dimension\ActionDimension;
 use Piwik\Plugin\Segment;
 use Piwik\Plugin\Manager;
-use Piwik\Tests\Framework\TestCase\UnitTestCase;
+use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
 
 class FakeActionDimension extends ActionDimension
 {
@@ -46,7 +46,7 @@ class FakeActionDimension extends ActionDimension
 /**
  * @group Core
  */
-class Plugin_ActionDimensionTest extends UnitTestCase
+class ActionDimensionTest extends IntegrationTestCase
 {
     /**
      * @var FakeActionDimension
diff --git a/tests/PHPUnit/Unit/Plugin/Dimension/ConversionDimensionTest.php b/tests/PHPUnit/Integration/Plugin/Dimension/ConversionDimensionTest.php
similarity index 97%
rename from tests/PHPUnit/Unit/Plugin/Dimension/ConversionDimensionTest.php
rename to tests/PHPUnit/Integration/Plugin/Dimension/ConversionDimensionTest.php
index 9e7950b253..7e6ac7191c 100644
--- a/tests/PHPUnit/Unit/Plugin/Dimension/ConversionDimensionTest.php
+++ b/tests/PHPUnit/Integration/Plugin/Dimension/ConversionDimensionTest.php
@@ -6,13 +6,13 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
-namespace Piwik\Plugins\Test;
 // there is a test that requires the class to be defined in a plugin
+namespace Piwik\Plugins\Test;
 
 use Piwik\Plugin\Dimension\ConversionDimension;
 use Piwik\Plugin\Segment;
 use Piwik\Plugin\Manager;
-use Piwik\Tests\Framework\TestCase\UnitTestCase;
+use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
 
 class FakeConversionDimension extends ConversionDimension
 {
@@ -46,7 +46,7 @@ class FakeConversionDimension extends ConversionDimension
 /**
  * @group Core
  */
-class Plugin_ConversionDimensionTest extends UnitTestCase
+class ConversionDimensionTest extends IntegrationTestCase
 {
     /**
      * @var FakeConversionDimension
diff --git a/tests/PHPUnit/Unit/Plugin/Dimension/DimensionMetadataProviderTest.php b/tests/PHPUnit/Integration/Plugin/Dimension/DimensionMetadataProviderTest.php
similarity index 98%
rename from tests/PHPUnit/Unit/Plugin/Dimension/DimensionMetadataProviderTest.php
rename to tests/PHPUnit/Integration/Plugin/Dimension/DimensionMetadataProviderTest.php
index e5a7823f98..8f6c471f15 100644
--- a/tests/PHPUnit/Unit/Plugin/Dimension/DimensionMetadataProviderTest.php
+++ b/tests/PHPUnit/Integration/Plugin/Dimension/DimensionMetadataProviderTest.php
@@ -6,7 +6,7 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
-namespace Piwik\Tests\Unit\Plugin\Dimension;
+namespace Piwik\Tests\Integration\Plugin\Dimension;
 
 use Piwik\Plugin\Dimension\DimensionMetadataProvider;
 use Piwik\Tests\Framework\TestCase\UnitTestCase;
diff --git a/tests/PHPUnit/Unit/Plugin/Dimension/VisitDimensionTest.php b/tests/PHPUnit/Integration/Plugin/Dimension/VisitDimensionTest.php
similarity index 98%
rename from tests/PHPUnit/Unit/Plugin/Dimension/VisitDimensionTest.php
rename to tests/PHPUnit/Integration/Plugin/Dimension/VisitDimensionTest.php
index dc47ee1e41..2f3d8149a6 100644
--- a/tests/PHPUnit/Unit/Plugin/Dimension/VisitDimensionTest.php
+++ b/tests/PHPUnit/Integration/Plugin/Dimension/VisitDimensionTest.php
@@ -6,13 +6,13 @@
  * @license http://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
  */
 
-namespace Piwik\Plugins\Test;
 // there is a test that requires the class to be defined in a plugin
+namespace Piwik\Plugins\Test;
 
 use Piwik\Plugin\Dimension\VisitDimension;
 use Piwik\Plugin\Segment;
 use Piwik\Plugin\Manager;
-use Piwik\Tests\Framework\TestCase\UnitTestCase;
+use Piwik\Tests\Framework\TestCase\IntegrationTestCase;
 use Piwik\Tracker\Request;
 use Piwik\Tracker\Visitor;
 
@@ -62,7 +62,7 @@ class FakeConversionVisitDimension extends FakeVisitDimension
 /**
  * @group Core
  */
-class Plugin_VisitDimensionTest extends UnitTestCase
+class VisitDimensionTest extends IntegrationTestCase
 {
     /**
      * @var FakeVisitDimension
@@ -255,4 +255,4 @@ class Plugin_VisitDimensionTest extends UnitTestCase
             $this->assertRegExp('/Piwik.Plugins.(DevicesDetection|Actions).Columns/', get_class($dimension));
         }
     }
-}
\ No newline at end of file
+}
diff --git a/tests/PHPUnit/Unit/Archive/ChunkTest.php b/tests/PHPUnit/Unit/Archive/ChunkTest.php
index 3518d5d87f..2c08ab0355 100644
--- a/tests/PHPUnit/Unit/Archive/ChunkTest.php
+++ b/tests/PHPUnit/Unit/Archive/ChunkTest.php
@@ -9,15 +9,12 @@
 namespace Piwik\Tests\Unit;
 
 use Piwik\Archive\Chunk;
-use Piwik\Tests\Framework\TestCase\UnitTestCase;
 
 /**
  * @group ChunkTest
- * @group Chunk
  * @group Archive
- * @group Core
  */
-class ChunkTest extends UnitTestCase
+class ChunkTest extends \PHPUnit_Framework_TestCase
 {
     /**
      * @var Chunk
@@ -28,7 +25,6 @@ class ChunkTest extends UnitTestCase
 
     public function setUp()
     {
-        parent::setUp();
         $this->chunk = new Chunk();
     }
 
diff --git a/tests/PHPUnit/Unit/CacheTest.php b/tests/PHPUnit/Unit/CacheTest.php
index 0765bc0420..49f59ab595 100644
--- a/tests/PHPUnit/Unit/CacheTest.php
+++ b/tests/PHPUnit/Unit/CacheTest.php
@@ -9,13 +9,11 @@
 namespace Piwik\Tests\Unit;
 
 use Piwik\Cache;
-use Piwik\Piwik;
-use Piwik\Tests\Framework\TestCase\UnitTestCase;
 
 /**
  * @group Cache
  */
-class CacheTest extends UnitTestCase
+class CacheTest extends \PHPUnit_Framework_TestCase
 {
     public function test_getLazyCache_shouldCreateAnInstanceOfLazy()
     {
@@ -47,21 +45,6 @@ class CacheTest extends UnitTestCase
         $this->assertSame($cache1, $cache2);
     }
 
-    public function test_getEagerCache_shouldPersistOnceEventWasTriggered()
-    {
-        $storageId = 'eagercache-test-ui';
-        $cache = Cache::getEagerCache();
-        $cache->save('test', 'mycontent'); // make sure something was changed, otherwise it won't save anything
-
-        /** @var \Piwik\Cache\Backend $backend */
-        $backend = $this->environment->getContainer()->get('Piwik\Cache\Backend');
-        $this->assertFalse($backend->doContains($storageId));
-
-        Piwik::postEvent('Request.dispatch.end'); // should trigger save
-
-        $this->assertTrue($backend->doContains($storageId));
-    }
-
     public function test_getTransientCache_shouldCreateAnInstanceOfTransient()
     {
         $cache = Cache::getTransientCache();
diff --git a/tests/PHPUnit/Unit/FilesystemTest.php b/tests/PHPUnit/Unit/FilesystemTest.php
index 4725516a84..166c13df1c 100644
--- a/tests/PHPUnit/Unit/FilesystemTest.php
+++ b/tests/PHPUnit/Unit/FilesystemTest.php
@@ -10,12 +10,11 @@ namespace Piwik\Tests\Unit;
 
 use Piwik\Filesystem;
 use Piwik\Tests\Framework\Mock\File;
-use Piwik\Tests\Framework\TestCase\UnitTestCase;
 
 /**
  * @group Core
  */
-class FilesystemTest extends UnitTestCase
+class FilesystemTest extends \PHPUnit_Framework_TestCase
 {
     private $testPath;
 
-- 
GitLab