diff options
Diffstat (limited to 'tests/lib/RepairStepTest.php')
-rw-r--r-- | tests/lib/RepairStepTest.php | 131 |
1 files changed, 0 insertions, 131 deletions
diff --git a/tests/lib/RepairStepTest.php b/tests/lib/RepairStepTest.php deleted file mode 100644 index b1d16fdd3fd..00000000000 --- a/tests/lib/RepairStepTest.php +++ /dev/null @@ -1,131 +0,0 @@ -<?php -/** - * Copyright (c) 2014 Vincent Petry <pvince81@owncloud.com> - * This file is licensed under the Affero General Public License version 3 or - * later. - * See the COPYING-README file. - */ - -namespace Test; - -use OCP\Migration\IRepairStep; -use Psr\Log\LoggerInterface; -use Symfony\Component\EventDispatcher\EventDispatcher; - -class RepairStepTest implements IRepairStep { - private $warning; - - public function __construct($warning = false) { - $this->warning = $warning; - } - - public function getName() { - return 'Test Name'; - } - - public function run(\OCP\Migration\IOutput $out) { - if ($this->warning) { - $out->warning('Simulated warning'); - } else { - $out->info('Simulated info'); - } - } -} - -class RepairTest extends TestCase { - /** @var \OC\Repair */ - private $repair; - - /** @var string[] */ - private $outputArray; - - protected function setUp(): void { - parent::setUp(); - $dispatcher = new EventDispatcher(); - $this->repair = new \OC\Repair([], $dispatcher, $this->createMock(LoggerInterface::class)); - - $dispatcher->addListener('\OC\Repair::warning', function ($event) { - /** @var \Symfony\Component\EventDispatcher\GenericEvent $event */ - $this->outputArray[] = 'warning: ' . $event->getArgument(0); - }); - $dispatcher->addListener('\OC\Repair::info', function ($event) { - /** @var \Symfony\Component\EventDispatcher\GenericEvent $event */ - $this->outputArray[] = 'info: ' . $event->getArgument(0); - }); - $dispatcher->addListener('\OC\Repair::step', function ($event) { - /** @var \Symfony\Component\EventDispatcher\GenericEvent $event */ - $this->outputArray[] = 'step: ' . $event->getArgument(0); - }); - } - - public function testRunRepairStep() { - $this->repair->addStep(new TestRepairStep(false)); - $this->repair->run(); - - $this->assertEquals( - [ - 'step: Test Name', - 'info: Simulated info', - ], - $this->outputArray - ); - } - - public function testRunRepairStepThatFail() { - $this->repair->addStep(new TestRepairStep(true)); - $this->repair->run(); - - $this->assertEquals( - [ - 'step: Test Name', - 'warning: Simulated warning', - ], - $this->outputArray - ); - } - - public function testRunRepairStepsWithException() { - $mock = $this->createMock(TestRepairStep::class); - $mock->expects($this->any()) - ->method('run') - ->will($this->throwException(new \Exception())); - $mock->expects($this->any()) - ->method('getName') - ->willReturn('Exception Test'); - - $this->repair->addStep($mock); - $this->repair->addStep(new TestRepairStep(false)); - - $thrown = false; - try { - $this->repair->run(); - } catch (\Exception $e) { - $thrown = true; - } - - $this->assertTrue($thrown); - // jump out after exception - $this->assertEquals( - [ - 'step: Exception Test', - ], - $this->outputArray - ); - } - - public function testRunRepairStepsContinueAfterWarning() { - $this->repair->addStep(new TestRepairStep(true)); - $this->repair->addStep(new TestRepairStep(false)); - $this->repair->run(); - - $this->assertEquals( - [ - 'step: Test Name', - 'warning: Simulated warning', - 'step: Test Name', - 'info: Simulated info', - ], - $this->outputArray - ); - } -} |