Added comment DAO

This commit is contained in:
Marcin Kurczewski 2014-10-04 12:06:50 +02:00
parent a728279bf5
commit cc22f3c0ba
12 changed files with 376 additions and 63 deletions

44
src/Dao/CommentDao.php Normal file
View file

@ -0,0 +1,44 @@
<?php
namespace Szurubooru\Dao;
class CommentDao extends AbstractDao implements ICrudDao
{
private $userDao;
private $postDao;
public function __construct(
\Szurubooru\DatabaseConnection $databaseConnection,
\Szurubooru\Dao\UserDao $userDao,
\Szurubooru\Dao\PostDao $postDao)
{
parent::__construct(
$databaseConnection,
'comments',
new \Szurubooru\Dao\EntityConverters\CommentEntityConverter());
$this->userDao = $userDao;
$this->postDao = $postDao;
}
public function findByPost(\Szurubooru\Entities\Post $post)
{
return $this->findBy('postId', $post->getId());
}
protected function afterLoad(\Szurubooru\Entities\Entity $comment)
{
$comment->setLazyLoader(
\Szurubooru\Entities\Comment::LAZY_LOADER_USER,
function (\Szurubooru\Entities\Comment $comment)
{
return $this->userDao->findById($comment->getUserId());
});
$comment->setLazyLoader(
\Szurubooru\Entities\Comment::LAZY_LOADER_POST,
function (\Szurubooru\Entities\Comment $comment)
{
return $this->postDao->findById($comment->getPostId());
});
}
}

View file

@ -0,0 +1,29 @@
<?php
namespace Szurubooru\Dao\EntityConverters;
class CommentEntityConverter extends AbstractEntityConverter implements IEntityConverter
{
public function toArray(\Szurubooru\Entities\Entity $entity)
{
return
[
'id' => $entity->getId(),
'userId' => $entity->getUserId(),
'postId' => $entity->getPostId(),
'text' => $entity->getText(),
'lastEditTime' => $this->entityTimeToDbTime($entity->getCreationTime()),
'creationTime' => $this->entityTimeToDbTime($entity->getLastEditTime()),
];
}
public function toBasicEntity(array $array)
{
$entity = new \Szurubooru\Entities\Comment($array['id']);
$entity->setUserId($array['userId']);
$entity->setPostId($array['postId']);
$entity->setText($array['text']);
$entity->setCreationTime($this->dbTimeToEntityTime($array['creationTime']));
$entity->setLastEditTime($this->dbTimeToEntityTime($array['lastEditTime']));
return $entity;
}
}

View file

@ -46,6 +46,7 @@ class PostEntityConverter extends AbstractEntityConverter implements IEntityConv
$entity->setLastFeatureTime($this->dbTimeToEntityTime($array['lastFeatureTime'])); $entity->setLastFeatureTime($this->dbTimeToEntityTime($array['lastFeatureTime']));
$entity->setMeta(\Szurubooru\Entities\Post::META_TAG_COUNT, intval($array['tagCount'])); $entity->setMeta(\Szurubooru\Entities\Post::META_TAG_COUNT, intval($array['tagCount']));
$entity->setMeta(\Szurubooru\Entities\Post::META_FAV_COUNT, intval($array['favCount'])); $entity->setMeta(\Szurubooru\Entities\Post::META_FAV_COUNT, intval($array['favCount']));
$entity->setMeta(\Szurubooru\Entities\Post::META_COMMENT_COUNT, intval($array['commentCount']));
$entity->setMeta(\Szurubooru\Entities\Post::META_SCORE, intval($array['score'])); $entity->setMeta(\Szurubooru\Entities\Post::META_SCORE, intval($array['score']));
return $entity; return $entity;
} }

86
src/Entities/Comment.php Normal file
View file

@ -0,0 +1,86 @@
<?php
namespace Szurubooru\Entities;
class Comment extends Entity
{
private $postId;
private $userId;
private $creationTime;
private $lastEditTime;
private $text;
const LAZY_LOADER_USER = 'user';
const LAZY_LOADER_POST = 'post';
public function getUserId()
{
return $this->userId;
}
public function setUserId($userId)
{
$this->userId = $userId;
}
public function getPostId()
{
return $this->postId;
}
public function setPostId($postId)
{
$this->postId = $postId;
}
public function getCreationTime()
{
return $this->creationTime;
}
public function setCreationTime($creationTime)
{
$this->creationTime = $creationTime;
}
public function getLastEditTime()
{
return $this->lastEditTime;
}
public function setLastEditTime($lastEditTime)
{
$this->lastEditTime = $lastEditTime;
}
public function getText()
{
return $this->text;
}
public function setText($text)
{
$this->text = $text;
}
public function getUser()
{
return $this->lazyLoad(self::LAZY_LOADER_USER, null);
}
public function setUser(\Szurubooru\Entities\User $user)
{
$this->lazySave(self::LAZY_LOADER_USER, $user);
$this->userId = $user->getId();
}
public function getPost()
{
return $this->lazyLoad(self::LAZY_LOADER_POST, null);
}
public function setPost(\Szurubooru\Entities\Post $post)
{
$this->lazySave(self::LAZY_LOADER_POST, $post);
$this->postId = $post->getId();
}
}

View file

@ -20,6 +20,7 @@ final class Post extends Entity
const META_TAG_COUNT = 'tagCount'; const META_TAG_COUNT = 'tagCount';
const META_FAV_COUNT = 'favCount'; const META_FAV_COUNT = 'favCount';
const META_COMMENT_COUNT = 'commentCount';
const META_SCORE = 'score'; const META_SCORE = 'score';
protected $name; protected $name;
@ -265,6 +266,11 @@ final class Post extends Entity
return $this->getMeta(self::META_FAV_COUNT, 0); return $this->getMeta(self::META_FAV_COUNT, 0);
} }
public function getCommentCount()
{
return $this->getMeta(self::META_COMMENT_COUNT, 0);
}
public function getScore() public function getScore()
{ {
return $this->getMeta(self::META_SCORE, 0); return $this->getMeta(self::META_SCORE, 0);

View file

@ -0,0 +1,54 @@
<?php
namespace Szurubooru\Upgrades;
class Upgrade14 implements IUpgrade
{
public function run(\Szurubooru\DatabaseConnection $databaseConnection)
{
$pdo = $databaseConnection->getPDO();
$driver = $databaseConnection->getDriver();
$pdo->exec('CREATE TABLE comments
(
id INTEGER PRIMARY KEY ' . ($driver === 'mysql' ? 'AUTO_INCREMENT' : 'AUTOINCREMENT') . ',
postId INTEGER NOT NULL,
userId INTEGER,
creationTime DATETIME NOT NULL,
lastEditTime DATETIME NOT NULL,
text TEXT
)');
$pdo->exec('
CREATE TRIGGER commentsDelete AFTER DELETE ON comments
FOR EACH ROW
BEGIN
UPDATE posts SET
commentCount = (SELECT COUNT(1) FROM comments WHERE comments.postId = posts.id),
lastCommentTime = (SELECT MAX(lastEditTime) FROM comments WHERE comments.postId = posts.id)
WHERE posts.id = OLD.postId;
END');
$pdo->exec('
CREATE TRIGGER commentsInsert AFTER INSERT ON comments
FOR EACH ROW
BEGIN
UPDATE posts SET
commentCount = (SELECT COUNT(1) FROM comments WHERE comments.postId = posts.id),
lastCommentTime = (SELECT MAX(lastEditTime) FROM comments WHERE comments.postId = posts.id)
WHERE posts.id = NEW.postId;
END');
$pdo->exec('
CREATE TRIGGER commentsUpdate AFTER UPDATE ON comments
FOR EACH ROW
BEGIN
UPDATE posts SET
commentCount = (SELECT COUNT(1) FROM comments WHERE comments.postId = posts.id),
lastCommentTime = (SELECT MAX(lastEditTime) FROM comments WHERE comments.postId = posts.id)
WHERE posts.id IN (OLD.postId, NEW.postId);
END');
$pdo->exec('ALTER TABLE posts ADD COLUMN commentCount INTEGER NOT NULL DEFAULT 0');
$pdo->exec('ALTER TABLE posts ADD COLUMN lastCommentTime DATETIME');
}
}

View file

@ -29,6 +29,7 @@ return [
$container->get(\Szurubooru\Upgrades\Upgrade11::class), $container->get(\Szurubooru\Upgrades\Upgrade11::class),
$container->get(\Szurubooru\Upgrades\Upgrade12::class), $container->get(\Szurubooru\Upgrades\Upgrade12::class),
$container->get(\Szurubooru\Upgrades\Upgrade13::class), $container->get(\Szurubooru\Upgrades\Upgrade13::class),
$container->get(\Szurubooru\Upgrades\Upgrade14::class),
]; ];
}), }),

View file

@ -29,4 +29,26 @@ abstract class AbstractDatabaseTestCase extends \Szurubooru\Tests\AbstractTestCa
if ($this->databaseConnection) if ($this->databaseConnection)
$this->databaseConnection->close(); $this->databaseConnection->close();
} }
protected static function getTestPost()
{
$post = new \Szurubooru\Entities\Post();
$post->setName('test');
$post->setUploadTime(date('c'));
$post->setSafety(\Szurubooru\Entities\Post::POST_SAFETY_SAFE);
$post->setContentType(\Szurubooru\Entities\Post::POST_TYPE_YOUTUBE);
$post->setContentChecksum('whatever');
return $post;
}
protected static function getTestUser($userName = 'test')
{
$user = new \Szurubooru\Entities\User();
$user->setName($userName);
$user->setPasswordHash('whatever');
$user->setLastLoginTime(date('c', mktime(1, 2, 3)));
$user->setRegistrationTime(date('c', mktime(3, 2, 1)));
$user->setAccessRank(\Szurubooru\Entities\User::ACCESS_RANK_REGULAR_USER);
return $user;
}
} }

View file

@ -0,0 +1,102 @@
<?php
namespace Szurubooru\Tests\Dao;
class CommentDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
{
private $userDaoMock;
private $postDaoMock;
public function setUp()
{
parent::setUp();
$this->userDaoMock = $this->mock(\Szurubooru\Dao\UserDao::class);
$this->postDaoMock = $this->mock(\Szurubooru\Dao\PostDao::class);
}
public function testSaving()
{
$user = new \Szurubooru\Entities\User(1);
$user->setName('olivia');
$post = new \Szurubooru\Entities\Post(2);
$post->setName('sword');
$comment = new \Szurubooru\Entities\Comment();
$comment->setUser($user);
$comment->setPost($post);
$comment->setCreationTime(date('c'));
$comment->setLastEditTime(date('c'));
$comment->setText('whatever');
$commentDao = $this->getCommentDao();
$commentDao->save($comment);
$this->userDaoMock->expects($this->once())->method('findById')->with(1)->willReturn($user);
$this->postDaoMock->expects($this->once())->method('findById')->with(2)->willReturn($post);
$savedComment = $commentDao->findById($comment->getId());
$this->assertEquals(1, $savedComment->getUserId());
$this->assertEquals(2, $savedComment->getPostId());
$this->assertEquals($comment->getCreationTime(), $savedComment->getCreationTime());
$this->assertEquals($comment->getLastEditTime(), $savedComment->getLastEditTime());
$this->assertEquals($comment->getText(), $savedComment->getText());
$this->assertEntitiesEqual($user, $savedComment->getUser());
$this->assertEntitiesEqual($post, $savedComment->getPost());
}
public function testPostMetadataSyncInsert()
{
$userDao = \Szurubooru\Injector::get(\Szurubooru\Dao\UserDao::class);
$postDao = \Szurubooru\Injector::get(\Szurubooru\Dao\PostDao::class);
$commentDao = \Szurubooru\Injector::get(\Szurubooru\Dao\CommentDao::class);
$user = self::getTestUser('olivia');
$userDao->save($user);
$post = self::getTestPost();
$postDao->save($post);
$this->assertEquals(0, $post->getCommentCount());
$this->assertNotNull($post->getId());
$comment = new \Szurubooru\Entities\Comment();
$comment->setUser($user);
$comment->setPost($post);
$comment->setCreationTime(date('c'));
$comment->setLastEditTime(date('c'));
$comment->setText('whatever');
$commentDao->save($comment);
$post = $postDao->findById($post->getId());
$this->assertNotNull($post);
$this->assertEquals(1, $post->getCommentCount());
return [$postDao, $commentDao, $post, $comment];
}
/**
* @depends testPostMetadataSyncInsert
*/
public function testPostMetadataSyncDelete($args)
{
list ($postDao, $commentDao, $post, $comment) = $args;
$commentDao->deleteById($comment->getId());
$post = $postDao->findById($post->getId());
$this->assertNotNull($post);
$this->assertEquals(0, $post->getCommentCount());
}
public function findByPost(\Szurubooru\Entities\Post $post)
{
return $this->findOneBy('postId', $post->getId());
}
private function getCommentDao()
{
return new \Szurubooru\Dao\CommentDao(
$this->databaseConnection,
$this->userDaoMock,
$this->postDaoMock);
}
}

View file

@ -24,7 +24,7 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
{ {
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$post = $this->getPost(); $post = self::getTestPost();
$savedPost = $postDao->save($post); $savedPost = $postDao->save($post);
$this->assertEquals('test', $post->getName()); $this->assertEquals('test', $post->getName());
$this->assertNotNull($savedPost->getId()); $this->assertNotNull($savedPost->getId());
@ -33,7 +33,7 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
public function testUpdating() public function testUpdating()
{ {
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$post = $this->getPost(); $post = self::getTestPost();
$post = $postDao->save($post); $post = $postDao->save($post);
$this->assertEquals('test', $post->getName()); $this->assertEquals('test', $post->getName());
$id = $post->getId(); $id = $post->getId();
@ -47,8 +47,8 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
{ {
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$post1 = $this->getPost(); $post1 = self::getTestPost();
$post2 = $this->getPost(); $post2 = self::getTestPost();
$postDao->save($post1); $postDao->save($post1);
$postDao->save($post2); $postDao->save($post2);
@ -67,9 +67,9 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
{ {
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$post1 = $this->getPost(); $post1 = self::getTestPost();
$post2 = $this->getPost(); $post2 = self::getTestPost();
$post3 = $this->getPost(); $post3 = self::getTestPost();
$post1->setOriginalFileSize(1249812); $post1->setOriginalFileSize(1249812);
$post2->setOriginalFileSize(128); $post2->setOriginalFileSize(128);
$post3->setOriginalFileSize(null); $post3->setOriginalFileSize(null);
@ -88,8 +88,8 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
{ {
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$post1 = $this->getPost(); $post1 = self::getTestPost();
$post2 = $this->getPost(); $post2 = self::getTestPost();
$postDao->save($post1); $postDao->save($post1);
$postDao->save($post2); $postDao->save($post2);
@ -103,8 +103,8 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
{ {
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$post1 = $this->getPost(); $post1 = self::getTestPost();
$post2 = $this->getPost(); $post2 = self::getTestPost();
$postDao->save($post1); $postDao->save($post1);
$postDao->save($post2); $postDao->save($post2);
@ -121,8 +121,8 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
{ {
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$post1 = $this->getPost(); $post1 = self::getTestPost();
$post2 = $this->getPost(); $post2 = self::getTestPost();
$postDao->save($post1); $postDao->save($post1);
$postDao->save($post2); $postDao->save($post2);
@ -144,7 +144,7 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
$testTags = ['tag1' => $tag1, 'tag2' => $tag2]; $testTags = ['tag1' => $tag1, 'tag2' => $tag2];
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$post = $this->getPost(); $post = self::getTestPost();
$post->setTags($testTags); $post->setTags($testTags);
$postDao->save($post); $postDao->save($post);
@ -161,12 +161,12 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
public function testSavingUnsavedRelations() public function testSavingUnsavedRelations()
{ {
$post1 = $this->getPost(); $post1 = self::getTestPost();
$post2 = $this->getPost(); $post2 = self::getTestPost();
$testPosts = [$post1, $post2]; $testPosts = [$post1, $post2];
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$post = $this->getPost(); $post = self::getTestPost();
$post->setRelatedPosts($testPosts); $post->setRelatedPosts($testPosts);
$this->setExpectedException(\Exception::class, 'Unsaved entities found'); $this->setExpectedException(\Exception::class, 'Unsaved entities found');
$postDao->save($post); $postDao->save($post);
@ -174,14 +174,14 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
public function testSavingRelations() public function testSavingRelations()
{ {
$post1 = $this->getPost(); $post1 = self::getTestPost();
$post2 = $this->getPost(); $post2 = self::getTestPost();
$testPosts = [$post1, $post2]; $testPosts = [$post1, $post2];
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$postDao->save($post1); $postDao->save($post1);
$postDao->save($post2); $postDao->save($post2);
$post = $this->getPost(); $post = self::getTestPost();
$post->setRelatedPosts($testPosts); $post->setRelatedPosts($testPosts);
$postDao->save($post); $postDao->save($post);
@ -196,7 +196,7 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
$testUser->setName('it\'s me'); $testUser->setName('it\'s me');
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$post = $this->getPost(); $post = self::getTestPost();
$post->setUser($testUser); $post->setUser($testUser);
$postDao->save($post); $postDao->save($post);
@ -208,14 +208,14 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
public function testNotLoadingContentForNewPosts() public function testNotLoadingContentForNewPosts()
{ {
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$newlyCreatedPost = $this->getPost(); $newlyCreatedPost = self::getTestPost();
$this->assertNull($newlyCreatedPost->getContent()); $this->assertNull($newlyCreatedPost->getContent());
} }
public function testLoadingContentPostsForExistingPosts() public function testLoadingContentPostsForExistingPosts()
{ {
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$post = $this->getPost(); $post = self::getTestPost();
$postDao->save($post); $postDao->save($post);
$post = $postDao->findById($post->getId()); $post = $postDao->findById($post->getId());
@ -232,7 +232,7 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
public function testSavingContent() public function testSavingContent()
{ {
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$post = $this->getPost(); $post = self::getTestPost();
$post->setContent('whatever'); $post->setContent('whatever');
$this->thumbnailServiceMock $this->thumbnailServiceMock
@ -251,10 +251,11 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
$postDao->save($post); $postDao->save($post);
} }
public function testSavingContentAndThumbnail() public function testSavingContentAndThumbnail()
{ {
$postDao = $this->getPostDao(); $postDao = $this->getPostDao();
$post = $this->getPost(); $post = self::getTestPost();
$post->setContent('whatever'); $post->setContent('whatever');
$post->setThumbnailSourceContent('an image of sharks'); $post->setThumbnailSourceContent('an image of sharks');
@ -291,15 +292,4 @@ final class PostDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
{ {
return $this->tagDao; return $this->tagDao;
} }
private function getPost()
{
$post = new \Szurubooru\Entities\Post();
$post->setName('test');
$post->setUploadTime(date('c'));
$post->setSafety(\Szurubooru\Entities\Post::POST_SAFETY_SAFE);
$post->setContentType(\Szurubooru\Entities\Post::POST_TYPE_YOUTUBE);
$post->setContentChecksum('whatever');
return $post;
}
} }

View file

@ -145,15 +145,4 @@ class UserDaoFilterTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
$this->fileServiceMock, $this->fileServiceMock,
$this->thumbnailServiceMock); $this->thumbnailServiceMock);
} }
private static function getTestUser($userName)
{
$user = new \Szurubooru\Entities\User();
$user->setName($userName);
$user->setPasswordHash('whatever');
$user->setLastLoginTime(date('c', mktime(1, 2, 3)));
$user->setRegistrationTime(date('c', mktime(3, 2, 1)));
$user->setAccessRank(\Szurubooru\Entities\User::ACCESS_RANK_REGULAR_USER);
return $user;
}
} }

View file

@ -18,7 +18,7 @@ final class UserDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
{ {
$userDao = $this->getUserDao(); $userDao = $this->getUserDao();
$user = $this->getTestUser(); $user = self::getTestUser();
$userDao->save($user); $userDao->save($user);
$expected = $user; $expected = $user;
@ -40,7 +40,7 @@ final class UserDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
$userDao = $this->getUserDao(); $userDao = $this->getUserDao();
$this->assertFalse($userDao->hasAnyUsers()); $this->assertFalse($userDao->hasAnyUsers());
$user = $this->getTestUser(); $user = self::getTestUser();
$userDao->save($user); $userDao->save($user);
$this->assertTrue($userDao->hasAnyUsers()); $this->assertTrue($userDao->hasAnyUsers());
} }
@ -48,7 +48,7 @@ final class UserDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
public function testNotLoadingAvatarContentForNewUsers() public function testNotLoadingAvatarContentForNewUsers()
{ {
$userDao = $this->getUserDao(); $userDao = $this->getUserDao();
$user = $this->getTestUser(); $user = self::getTestUser();
$user->setAvatarStyle(\Szurubooru\Entities\User::AVATAR_STYLE_MANUAL); $user->setAvatarStyle(\Szurubooru\Entities\User::AVATAR_STYLE_MANUAL);
$userDao->save($user); $userDao->save($user);
@ -58,7 +58,7 @@ final class UserDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
public function testLoadingContentUsersForExistingUsers() public function testLoadingContentUsersForExistingUsers()
{ {
$userDao = $this->getUserDao(); $userDao = $this->getUserDao();
$user = $this->getTestUser(); $user = self::getTestUser();
$user->setAvatarStyle(\Szurubooru\Entities\User::AVATAR_STYLE_MANUAL); $user->setAvatarStyle(\Szurubooru\Entities\User::AVATAR_STYLE_MANUAL);
$userDao->save($user); $userDao->save($user);
@ -75,7 +75,7 @@ final class UserDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
public function testSavingContent() public function testSavingContent()
{ {
$userDao = $this->getUserDao(); $userDao = $this->getUserDao();
$user = $this->getTestUser(); $user = self::getTestUser();
$user->setAvatarStyle(\Szurubooru\Entities\User::AVATAR_STYLE_MANUAL); $user->setAvatarStyle(\Szurubooru\Entities\User::AVATAR_STYLE_MANUAL);
$user->setCustomAvatarSourceContent('whatever'); $user->setCustomAvatarSourceContent('whatever');
@ -108,15 +108,4 @@ final class UserDaoTest extends \Szurubooru\Tests\AbstractDatabaseTestCase
$this->fileServiceMock, $this->fileServiceMock,
$this->thumbnailServiceMock); $this->thumbnailServiceMock);
} }
private function getTestUser()
{
$user = new \Szurubooru\Entities\User();
$user->setName('test');
$user->setPasswordHash('whatever');
$user->setLastLoginTime(date('c', mktime(1, 2, 3)));
$user->setRegistrationTime(date('c', mktime(3, 2, 1)));
$user->setAccessRank(\Szurubooru\Entities\User::ACCESS_RANK_REGULAR_USER);
return $user;
}
} }