summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJulius Härtl <jus@bitgrid.net>2018-02-01 16:02:09 +0100
committerJulius Härtl <jus@bitgrid.net>2018-02-03 15:21:51 +0100
commit5460166ff5440e9750870470afbd861c65b2b41e (patch)
treedcac5a75e991518207f53458037930f1447e6988
parent7381a81d3041a3460617623028d6e8cfb5391649 (diff)
downloadnextcloud-server-5460166ff5440e9750870470afbd861c65b2b41e.tar.gz
nextcloud-server-5460166ff5440e9750870470afbd861c65b2b41e.zip
Add tests and class mapping
Signed-off-by: Julius Härtl <jus@bitgrid.net>
-rw-r--r--lib/composer/composer/autoload_classmap.php1
-rw-r--r--lib/composer/composer/autoload_static.php1
-rw-r--r--tests/lib/Repair/ClearFrontendCachesTest.php94
3 files changed, 96 insertions, 0 deletions
diff --git a/lib/composer/composer/autoload_classmap.php b/lib/composer/composer/autoload_classmap.php
index 28004d50cf5..3eb532be0c6 100644
--- a/lib/composer/composer/autoload_classmap.php
+++ b/lib/composer/composer/autoload_classmap.php
@@ -802,6 +802,7 @@ return array(
'OC\\Repair' => $baseDir . '/lib/private/Repair.php',
'OC\\RepairException' => $baseDir . '/lib/private/RepairException.php',
'OC\\Repair\\CleanTags' => $baseDir . '/lib/private/Repair/CleanTags.php',
+ 'OC\\Repair\\ClearFrontendCaches' => $baseDir . '/lib/private/Repair/ClearFrontendCaches.php',
'OC\\Repair\\Collation' => $baseDir . '/lib/private/Repair/Collation.php',
'OC\\Repair\\MoveUpdaterStepFile' => $baseDir . '/lib/private/Repair/MoveUpdaterStepFile.php',
'OC\\Repair\\NC11\\FixMountStorages' => $baseDir . '/lib/private/Repair/NC11/FixMountStorages.php',
diff --git a/lib/composer/composer/autoload_static.php b/lib/composer/composer/autoload_static.php
index f23933fe983..2483b5689b3 100644
--- a/lib/composer/composer/autoload_static.php
+++ b/lib/composer/composer/autoload_static.php
@@ -832,6 +832,7 @@ class ComposerStaticInit53792487c5a8370acc0b06b1a864ff4c
'OC\\Repair' => __DIR__ . '/../../..' . '/lib/private/Repair.php',
'OC\\RepairException' => __DIR__ . '/../../..' . '/lib/private/RepairException.php',
'OC\\Repair\\CleanTags' => __DIR__ . '/../../..' . '/lib/private/Repair/CleanTags.php',
+ 'OC\\Repair\\ClearFrontendCaches' => __DIR__ . '/../../..' . '/lib/private/Repair/ClearFrontendCaches.php',
'OC\\Repair\\Collation' => __DIR__ . '/../../..' . '/lib/private/Repair/Collation.php',
'OC\\Repair\\MoveUpdaterStepFile' => __DIR__ . '/../../..' . '/lib/private/Repair/MoveUpdaterStepFile.php',
'OC\\Repair\\NC11\\FixMountStorages' => __DIR__ . '/../../..' . '/lib/private/Repair/NC11/FixMountStorages.php',
diff --git a/tests/lib/Repair/ClearFrontendCachesTest.php b/tests/lib/Repair/ClearFrontendCachesTest.php
new file mode 100644
index 00000000000..393e1de4f54
--- /dev/null
+++ b/tests/lib/Repair/ClearFrontendCachesTest.php
@@ -0,0 +1,94 @@
+<?php
+/**
+ * @copyright Copyright (c) 2018 Julius Härtl <jus@bitgrid.net>
+ *
+ * @author Julius Härtl <jus@bitgrid.net>
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ */
+
+namespace Test\Repair;
+use OC\Template\JSCombiner;
+use OC\Template\SCSSCacher;
+use OCP\ICache;
+use OCP\ICacheFactory;
+use OCP\Migration\IOutput;
+
+class ClearFrontendCachesTest extends \Test\TestCase {
+
+ /** @var ICacheFactory */
+ private $cacheFactory;
+
+ /** @var SCSSCacher */
+ private $scssCacher;
+
+ /** @var JSCombiner */
+ private $jsCombiner;
+
+ /** @var \OC\Repair\ClearFrontendCaches */
+ protected $repair;
+
+ /** @var IOutput */
+ private $outputMock;
+
+ protected function setUp() {
+ parent::setUp();
+
+ $this->outputMock = $this->createMock(IOutput::class);
+
+ $this->cacheFactory = $this->createMock(ICacheFactory::class);
+ $this->scssCacher = $this->createMock(SCSSCacher::class);
+ $this->jsCombiner = $this->createMock(JSCombiner::class);
+
+ $this->repair = new \OC\Repair\ClearFrontendCaches($this->cacheFactory, $this->scssCacher, $this->jsCombiner);
+ }
+
+
+ public function testRun() {
+ $imagePathCache = $this->createMock(ICache::class);
+ $imagePathCache->expects($this->once())
+ ->method('clear')
+ ->with('');
+ $jsCache = $this->createMock(ICache::class);
+ $jsCache->expects($this->once())
+ ->method('clear')
+ ->with('');
+ $cssCache = $this->createMock(ICache::class);
+ $cssCache->expects($this->once())
+ ->method('clear')
+ ->with('');
+ $this->jsCombiner->expects($this->once())
+ ->method('resetCache');
+ $this->scssCacher->expects($this->once())
+ ->method('resetCache');
+ $this->cacheFactory->expects($this->at(0))
+ ->method('createDistributed')
+ ->with('imagePath')
+ ->willReturn($imagePathCache);
+ $this->cacheFactory->expects($this->at(1))
+ ->method('createDistributed')
+ ->with('SCSS')
+ ->willReturn($cssCache);
+ $this->cacheFactory->expects($this->at(2))
+ ->method('createDistributed')
+ ->with('JS')
+ ->willReturn($jsCache);
+
+ $this->repair->run($this->outputMock);
+ $this->assertTrue(true);
+ }
+}