From a9eef37456da6728d3c0747c7c75f501f64fe909 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Molakvo=C3=A6=20=28skjnldsv=29?= Date: Tue, 6 Nov 2018 15:43:53 +0100 Subject: Clear avatar cache with frontend repair MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: John Molakvoæ (skjnldsv) --- tests/lib/Repair/ClearGeneratedAvatarCacheTest.php | 82 ++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 tests/lib/Repair/ClearGeneratedAvatarCacheTest.php (limited to 'tests') diff --git a/tests/lib/Repair/ClearGeneratedAvatarCacheTest.php b/tests/lib/Repair/ClearGeneratedAvatarCacheTest.php new file mode 100644 index 00000000000..ec107d300d6 --- /dev/null +++ b/tests/lib/Repair/ClearGeneratedAvatarCacheTest.php @@ -0,0 +1,82 @@ + + * + * @author Julius Härtl + * + * @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 . + * + */ + +namespace Test\Repair; + +use OCP\IConfig; +use OCP\Migration\IOutput; +use OC\AvatarManager; +use OC\Repair\ClearGeneratedAvatarCache; + +class ClearGeneratedAvatarCacheTest extends \Test\TestCase { + + /** @var AvatarManager */ + private $avatarManager; + + /** @var IOutput */ + private $outputMock; + + /** @var IConfig */ + private $config; + + /** @var ClearGeneratedAvatarCache */ + protected $repair; + + protected function setUp() { + parent::setUp(); + + $this->outputMock = $this->createMock(IOutput::class); + $this->avatarManager = $this->createMock(AvatarManager::class); + $this->config = $this->createMock(IConfig::class); + + $this->repair = new ClearGeneratedAvatarCache($this->config, $this->avatarManager); + } + + public function shouldRunDataProvider() { + return [ + ['11.0.0.0', true], + ['15.0.0.3', true], + ['13.0.5.2', true], + ['12.0.0.0', true], + ['16.0.0.1', false], + ['15.0.0.2', true], + ['13.0.0.0', true], + ['15.0.0.5', false] + ]; + } + + /** + * @dataProvider shouldRunDataProvider + * + * @param string $from + * @param boolean $expected + */ + public function testShouldRun($from, $expected) { + $this->config->expects($this->any()) + ->method('getSystemValue') + ->with('version', '0.0.0.0') + ->willReturn($from); + + $this->assertEquals($expected, $this->invokePrivate($this->repair, 'shouldRun')); + } +} -- cgit v1.2.3