Card,Stack undo delete: CardServiceTest fix

Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info>

Stack,Card undo delete: Test Fix 2

Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info>

Card, Stack undo delete: Test fix 3

Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info>

Card,Stack undo delete: Test fix 4

Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info>

Stack, Card undo delete: Relative time in deleted entity listings

Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info>

Card, Stack undo delete: Test Fix 5

Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info>

Test Fix 6

Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info>

Test Fix 7

Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info>

fix codacy

Signed-off-by: Manuel Arno Korfmann <manu@korfmann.info>
This commit is contained in:
Manuel Arno Korfmann
2018-07-28 04:12:50 +02:00
committed by Julius Härtl
parent 41d30d4fd4
commit 5ddfb66633
13 changed files with 96 additions and 45 deletions

View File

@@ -5,20 +5,20 @@
* @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 OCA\Deck\Db;
@@ -175,4 +175,4 @@ class BoardMapperTest extends MapperTestUtility {
}
}
}
}

View File

@@ -5,20 +5,20 @@
* @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 OCA\Deck\Db;
@@ -81,6 +81,7 @@ class CardTest extends TestCase {
'attachments' => null,
'attachmentCount' => null,
'assignedUsers' => null,
'deletedAt' => 0
], $card->jsonSerialize());
}
public function testJsonSerializeLabels() {
@@ -103,6 +104,7 @@ class CardTest extends TestCase {
'attachments' => null,
'attachmentCount' => null,
'assignedUsers' => null,
'deletedAt' => 0
], $card->jsonSerialize());
}
@@ -135,7 +137,8 @@ class CardTest extends TestCase {
'attachments' => null,
'attachmentCount' => null,
'assignedUsers' => ['user1'],
'deletedAt' => 0
], $card->jsonSerialize());
}
}
}

View File

@@ -5,20 +5,20 @@
* @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 OCA\Deck\Db;
@@ -39,6 +39,7 @@ class StackTest extends \Test\TestCase {
'title' => "My Stack",
'order' => 1,
'boardId' => 1,
'deletedAt' => 0
], $board->jsonSerialize());
}
public function testJsonSerializeWithCards() {
@@ -51,6 +52,7 @@ class StackTest extends \Test\TestCase {
'order' => 1,
'boardId' => 1,
'cards' => array("foo", "bar"),
'deletedAt' => 0
], $board->jsonSerialize());
}
}
}

View File

@@ -29,6 +29,7 @@ use OCA\Deck\Db\AssignedUsersMapper;
use OCA\Deck\Db\Card;
use OCA\Deck\Db\CardMapper;
use OCA\Deck\Db\StackMapper;
use OCA\Deck\Db\BoardMapper;
use OCA\Deck\NotFoundException;
use OCA\Deck\Notification\NotificationHelper;
use OCA\Deck\StatusException;
@@ -55,12 +56,13 @@ class CardServiceTest extends TestCase {
parent::setUp();
$this->cardMapper = $this->createMock(CardMapper::class);
$this->stackMapper = $this->createMock(StackMapper::class);
$this->boardMapper = $this->createMock(BoardMapper::class);
$this->permissionService = $this->createMock(PermissionService::class);
$this->boardService = $this->createMock(BoardService::class);
$this->notificationHelper = $this->createMock(NotificationHelper::class);
$this->assignedUsersMapper = $this->createMock(AssignedUsersMapper::class);
$this->attachmentService = $this->createMock(AttachmentService::class);
$this->cardService = new CardService($this->cardMapper, $this->stackMapper, $this->permissionService, $this->boardService, $this->notificationHelper, $this->assignedUsersMapper, $this->attachmentService, 'userXY');
$this->cardService = new CardService($this->cardMapper, $this->stackMapper, $this->boardMapper, $this->permissionService, $this->boardService, $this->notificationHelper, $this->assignedUsersMapper, $this->attachmentService, 'userXY');
}
public function testFind() {
@@ -100,13 +102,15 @@ class CardServiceTest extends TestCase {
}
public function testDelete() {
$cardToBeDeleted = new Card();
$this->cardMapper->expects($this->once())
->method('find')
->willReturn(new Card());
->willReturn($cardToBeDeleted);
$this->cardMapper->expects($this->once())
->method('delete')
->willReturn(1);
$this->assertEquals(1, $this->cardService->delete(123));
->method('update')
->willReturn($cardToBeDeleted);
$this->cardService->delete(123);
$this->assertTrue($cardToBeDeleted->getDeletedAt() <= time(), 'deletedAt is in the past');
}
public function testUpdate() {
@@ -115,7 +119,7 @@ class CardServiceTest extends TestCase {
$card->setArchived(false);
$this->cardMapper->expects($this->once())->method('find')->willReturn($card);
$this->cardMapper->expects($this->once())->method('update')->willReturnCallback(function($c) { return $c; });
$actual = $this->cardService->update(123, 'newtitle', 234, 'text', 999, 'foo', 'admin', '2017-01-01 00:00:00');
$actual = $this->cardService->update(123, 'newtitle', 234, 'text', 999, 'foo', 'admin', '2017-01-01 00:00:00', null);
$this->assertEquals('newtitle', $actual->getTitle());
$this->assertEquals(234, $actual->getStackId());
$this->assertEquals('text', $actual->getType());
@@ -131,7 +135,7 @@ class CardServiceTest extends TestCase {
$this->cardMapper->expects($this->once())->method('find')->willReturn($card);
$this->cardMapper->expects($this->never())->method('update');
$this->setExpectedException(StatusException::class);
$this->cardService->update(123, 'newtitle', 234, 'text', 999, 'foo', 'admin', '2017-01-01 00:00:00');
$this->cardService->update(123, 'newtitle', 234, 'text', 999, 'foo', 'admin', '2017-01-01 00:00:00', null);
}
public function testRename() {
@@ -317,4 +321,4 @@ class CardServiceTest extends TestCase {
}
}
}

View File

@@ -28,6 +28,7 @@ namespace OCA\Deck\Service;
use OCA\Deck\Db\AssignedUsersMapper;
use OCA\Deck\Db\Card;
use OCA\Deck\Db\CardMapper;
use OCA\Deck\Db\BoardMapper;
use OCA\Deck\Db\Label;
use OCA\Deck\Db\LabelMapper;
use OCA\Deck\Db\Stack;
@@ -48,6 +49,8 @@ class StackServiceTest extends TestCase {
private $stackMapper;
/** @var \PHPUnit\Framework\MockObject\MockObject|CardMapper */
private $cardMapper;
/** @var \PHPUnit\Framework\MockObject\MockObject|BoardMapper */
private $boardMapper;
/** @var \PHPUnit\Framework\MockObject\MockObject|LabelMapper */
private $labelMapper;
/** @var \PHPUnit\Framework\MockObject\MockObject|PermissionService */
@@ -63,16 +66,23 @@ class StackServiceTest extends TestCase {
parent::setUp();
$this->stackMapper = $this->createMock(StackMapper::class);
$this->cardMapper = $this->createMock(CardMapper::class);
$this->labelMapper = $this->createMock(LabelMapper::class);
$this->boardMapper = $this->createMock(BoardMapper::class);
$this->permissionService = $this->createMock(PermissionService::class);
$this->boardService = $this->createMock(BoardService::class);
$this->assignedUsersMapper = $this->createMock(AssignedUsersMapper::class);
$this->attachmentService = $this->createMock(AttachmentService::class);
$this->labelMapper = $this->getMockBuilder(LabelMapper::class)
->setMethodsExcept(['liveOrMemoizedLabelsForBoardId'])
->disableOriginalConstructor()
->getMock();
$this->stackService = new StackService(
$this->stackMapper,
$this->cardMapper,
$this->labelMapper,
$this->boardMapper,
$this->cardMapper,
$this->labelMapper,
$this->permissionService,
$this->boardService,
$this->assignedUsersMapper,
@@ -130,8 +140,10 @@ class StackServiceTest extends TestCase {
private function getStacks() {
$s1 = new Stack();
$s1->setId(222);
$s1->setBoardId(1);
$s2 = new Stack();
$s2->setId(223);
$s1->setBoardId(1);
return [$s1, $s2];
}
private function getCards($stackId=0) {
@@ -158,9 +170,12 @@ class StackServiceTest extends TestCase {
public function testDelete() {
$this->permissionService->expects($this->once())->method('checkPermission');
$this->stackMapper->expects($this->once())->method('find')->willReturn(new Stack());
$this->stackMapper->expects($this->once())->method('delete');
$stackToBeDeleted = new Stack();
$stackToBeDeleted->setId(1);
$this->stackMapper->expects($this->once())->method('find')->willReturn($stackToBeDeleted);
$this->stackMapper->expects($this->once())->method('update');
$this->stackService->delete(123);
$this->assertTrue($stackToBeDeleted->getDeletedAt() <= time(), "deletedAt is in the past");
}
public function testUpdate() {
@@ -172,7 +187,7 @@ class StackServiceTest extends TestCase {
$stack->setTitle('Foo');
$stack->setBoardId(2);
$stack->setOrder(1);
$result = $this->stackService->update(123, 'Foo', 2, 1);
$result = $this->stackService->update(123, 'Foo', 2, 1, null);
$this->assertEquals($stack, $result);
}
@@ -207,4 +222,4 @@ class StackServiceTest extends TestCase {
return $stack;
}
}
}

View File

@@ -76,7 +76,7 @@ class CardControllerTest extends \Test\TestCase {
->method('update')
->with(1, 'title', 3, 'text', 5, 'foo', $this->userId, '2017-01-01 00:00:00')
->willReturn(1);
$this->assertEquals(1, $this->controller->update(1, 'title', 3, 'text', 5, 'foo', '2017-01-01 00:00:00'));
$this->assertEquals(1, $this->controller->update(1, 'title', 3, 'text', 5, 'foo', '2017-01-01 00:00:00', null));
}
public function testDelete() {

View File

@@ -81,7 +81,7 @@ class StackControllerTest extends \Test\TestCase {
->method('update')
->with(1, 2, 3, 4)
->willReturn(1);
$this->assertEquals(1, $this->controller->update(1, 2, 3, 4));
$this->assertEquals(1, $this->controller->update(1, 2, 3, 4, null));
}
public function testReorder() {