summaryrefslogtreecommitdiffstats
path: root/tests
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-06 12:32:50 +0100
commitbf24b4db2430ecd6796bfe323859656234691bba (patch)
tree16677977e3b1048c36206d54cd80588114859aff /tests
parent31313178a56d6c173a45e7e89546da1f5d43052a (diff)
downloadnextcloud-server-bf24b4db2430ecd6796bfe323859656234691bba.tar.gz
nextcloud-server-bf24b4db2430ecd6796bfe323859656234691bba.zip
Add tests and class mapping
Signed-off-by: Julius Härtl <jus@bitgrid.net>
Diffstat (limited to 'tests')
-rw-r--r--tests/lib/Repair/ClearFrontendCachesTest.php94
1 files changed, 94 insertions, 0 deletions
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);
+ }
+}