diff --git a/lib/Db/Board.php b/lib/Db/Board.php index 93510ddeb..e5531fea8 100644 --- a/lib/Db/Board.php +++ b/lib/Db/Board.php @@ -36,7 +36,7 @@ class Board extends RelationalEntity implements JsonSerializable { protected $acl = []; protected $permissions = []; protected $shared; - protected $deletedAt; + protected $deletedAt = 0; public function __construct() { $this->addType('id', 'integer'); diff --git a/tests/unit/Cron/DeleteCronTest.php b/tests/unit/Cron/DeleteCronTest.php new file mode 100644 index 000000000..72b733c91 --- /dev/null +++ b/tests/unit/Cron/DeleteCronTest.php @@ -0,0 +1,58 @@ + + * + * @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 OCA\Deck\Cron; + +use OCA\Deck\Db\BoardMapper; + +class DeleteCronTest extends \Test\TestCase { + + /** @var BoardMapper|\PHPUnit_Framework_MockObject_MockObject */ + protected $boardMapper; + /** @var DeleteCron */ + protected $deleteCron; + + public function setUp() { + $this->boardMapper = $this->createMock(BoardMapper::class); + $this->deleteCron = new DeleteCron($this->boardMapper); + } + + public function testDeleteCron() { + $this->boardMapper->expects($this->once()) + ->method('findToDelete') + ->willReturn([1, 2, 3, 4]); + $this->boardMapper->expects($this->at(0)) + ->method('delete') + ->with(1); + $this->boardMapper->expects($this->at(1)) + ->method('delete') + ->with(2); + $this->boardMapper->expects($this->at(2)) + ->method('delete') + ->with(3); + $this->boardMapper->expects($this->at(3)) + ->method('delete') + ->with(4); + $this->invokePrivate($this->deleteCron, 'run', null); + } +} \ No newline at end of file diff --git a/tests/unit/Db/BoardMapperTest.php b/tests/unit/Db/BoardMapperTest.php index 9b3e87d33..310265e97 100644 --- a/tests/unit/Db/BoardMapperTest.php +++ b/tests/unit/Db/BoardMapperTest.php @@ -72,7 +72,7 @@ class BoardMapperTest extends MapperTestUtility { $this->aclMapper->insert($this->getAcl('user','user1', false, false, false, $this->boards[2]->getId())) ]; - foreach ($this->acls as $acl) { + foreach ($this->acls as $acl) { $acl->resetUpdatedFields(); } foreach ($this->boards as $board) { @@ -96,6 +96,7 @@ class BoardMapperTest extends MapperTestUtility { $board = new Board(); $board->setTitle($title); $board->setOwner($owner); + $board->setShared(1); return $board; } @@ -104,6 +105,23 @@ class BoardMapperTest extends MapperTestUtility { $expected = $this->boards[0]; $this->assertEquals($expected, $actual); } + + public function testFindAllByUser() { + $actual = $this->boardMapper->findAllByUser('user1'); + $expected = [ + $this->boards[0], + $this->boards[1], + $this->boards[2] + ]; + foreach ($expected as $e) { + foreach ($actual as $a) { + if($e->getId() === $a->getId()) { + $this->assertEquals($e->getTitle(), $a->getTitle()); + } + } + } + } + public function testFindWithLabels() { $actual = $this->boardMapper->find($this->boards[0]->getId(), true, false); $expected = $this->boards[0];