Index: lams_tool_forum/.classpath =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/.classpath,v diff -u -r1.8 -r1.9 --- lams_tool_forum/.classpath 15 Dec 2005 04:32:02 -0000 1.8 +++ lams_tool_forum/.classpath 17 Jan 2006 00:17:20 -0000 1.9 @@ -1,6 +1,6 @@ - + Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumDao.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumDao.java,v diff -u -r1.8 -r1.9 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumDao.java 15 Dec 2005 04:32:02 -0000 1.8 +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumDao.java 17 Jan 2006 00:17:19 -0000 1.9 @@ -11,8 +11,6 @@ * */ public class ForumDao extends HibernateDaoSupport { - private static final String FIND_INSTRUCTION_FILE = "from " + Attachment.class.getName() - + " as i where forum_uid=? and i.fileUuid=? and i.fileVersionId=? and i.fileType=?"; private static final String FIND_FORUM_BY_CONTENTID = "from Forum forum where forum.contentId=?"; public void saveOrUpdate(Forum forum) { @@ -34,6 +32,7 @@ */ public void delete(Forum forum) { this.getHibernateTemplate().delete(forum); + this.getHibernateTemplate().flush(); } public Forum getByContentId(Long contentID) { Index: lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumUserDao.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumUserDao.java,v diff -u -r1.4 -r1.5 --- lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumUserDao.java 15 Dec 2005 03:43:45 -0000 1.4 +++ lams_tool_forum/src/java/org/lamsfoundation/lams/tool/forum/persistence/ForumUserDao.java 17 Jan 2006 00:17:20 -0000 1.5 @@ -68,5 +68,10 @@ return (ForumUser) this.getHibernateTemplate().get(ForumUser.class,userUid); } + public void delete(ForumUser user) { + this.getHibernateTemplate().delete(user); + this.getHibernateTemplate().flush(); + } + } Index: lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/DAOBaseTest.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/Attic/DAOBaseTest.java,v diff -u --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/DAOBaseTest.java 17 Jan 2006 00:17:19 -0000 1.1 @@ -0,0 +1,45 @@ +/* + *Copyright (C) 2005 LAMS Foundation (http://lamsfoundation.org) + * + *This program is free software; you can redistribute it and/or modify + *it under the terms of the GNU General Public License as published by + *the Free Software Foundation; either version 2 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 General Public License for more details. + * + *You should have received a copy of the GNU General Public License + *along with this program; if not, write to the Free Software + *Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + *USA + * + *http://www.gnu.org/licenses/gpl.txt + */ +package org.lamsfoundation.lams.tool.forum.test; + +import org.lamsfoundation.lams.tool.forum.persistence.ForumDao; +import org.lamsfoundation.lams.tool.forum.persistence.ForumToolSessionDao; +import org.lamsfoundation.lams.tool.forum.persistence.ForumUserDao; +import org.lamsfoundation.lams.tool.forum.persistence.MessageDao; + +public class DAOBaseTest extends BaseTest { + + protected ForumDao forumDao; + protected ForumToolSessionDao forumToolSessionDao; + protected ForumUserDao forumUserDao; + protected MessageDao messageDao; + + public DAOBaseTest(String name) { + super(name); + } + protected void setUp() throws Exception { + super.setUp(); + forumDao = (ForumDao) context.getBean("forumDao"); + forumToolSessionDao = (ForumToolSessionDao) context.getBean("forumToolSessionDao"); + forumUserDao = (ForumUserDao) context.getBean("forumUserDao"); + messageDao = (MessageDao) context.getBean("messageDao"); + } +} Index: lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/TestUtils.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/Attic/TestUtils.java,v diff -u -r1.2 -r1.3 --- lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/TestUtils.java 16 Dec 2005 00:25:43 -0000 1.2 +++ lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/TestUtils.java 17 Jan 2006 00:17:19 -0000 1.3 @@ -29,7 +29,6 @@ public static Forum getForumA(){ Forum forum = new Forum(); forum.setContentId(new Long(1)); - forum.setCreatedBy(getUserA()); return forum; @@ -45,44 +44,24 @@ ForumToolSession session = new ForumToolSession(); session.setSessionId(new Long(1)); session.setStatus(1); - Forum forum = new Forum(); - forum.setUid(new Long(1)); - forum.setContentId(new Long(1)); - session.setForum(forum); return session; } public static ForumToolSession getSessionB(){ ForumToolSession session = new ForumToolSession(); session.setSessionId(new Long(2)); session.setStatus(2); - Forum forum = new Forum(); - forum.setUid(new Long(1)); - forum.setContentId(new Long(1)); - session.setForum(forum); return session; } public static Message getMessageA() { Message msg = new Message(); msg.setBody("bodyA"); - ForumToolSession session = new ForumToolSession(); - session.setUid(new Long(1)); - msg.setToolSession(session); msg.setSubject("subjectA"); - Forum forum = new Forum(); - forum.setUid(new Long(1)); - msg.setForum(forum); return msg; } public static Message getMessageB() { Message msg = new Message(); msg.setBody("bodyB"); msg.setSubject("subjectB"); - ForumToolSession session = new ForumToolSession(); - session.setUid(new Long(1)); - msg.setToolSession(session); - Forum forum = new Forum(); - forum.setUid(new Long(1)); - msg.setForum(forum); return msg; } Index: lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/ForumDAOTest.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/Attic/ForumDAOTest.java,v diff -u -r1.3 -r1.4 --- lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/ForumDAOTest.java 16 Dec 2005 00:25:43 -0000 1.3 +++ lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/ForumDAOTest.java 17 Jan 2006 00:17:20 -0000 1.4 @@ -21,35 +21,28 @@ package org.lamsfoundation.lams.tool.forum.test.dao; import org.lamsfoundation.lams.tool.forum.persistence.Forum; -import org.lamsfoundation.lams.tool.forum.persistence.ForumDao; -import org.lamsfoundation.lams.tool.forum.persistence.ForumUser; -import org.lamsfoundation.lams.tool.forum.test.BaseTest; +import org.lamsfoundation.lams.tool.forum.test.DAOBaseTest; import org.lamsfoundation.lams.tool.forum.test.TestUtils; -public class ForumDAOTest extends BaseTest{ +public class ForumDAOTest extends DAOBaseTest{ public ForumDAOTest(String name) { super(name); } public void testSave(){ Forum forum = TestUtils.getForumA(); - ForumUser user = forum.getCreatedBy(); - - ForumDao forumDao = new ForumDao(); forumDao.saveOrUpdate(forum); Forum tForum = forumDao.getById(forum.getUid()); assertEquals(tForum.getContentId(),new Long(1)); - assertEquals(tForum.getCreatedBy(),user); //remove test data forumDao.delete(forum); } public void testDelete(){ Forum forum = TestUtils.getForumA(); - ForumDao forumDao = new ForumDao(); forumDao.saveOrUpdate(forum); //remove test data @@ -58,8 +51,9 @@ assertNull(forumDao.getById(forum.getUid())); } public void testGetByContentId(){ + Forum forum = TestUtils.getForumA(); - ForumDao forumDao = new ForumDao(); + forumDao.saveOrUpdate(forum); Forum tforum = forumDao.getByContentId(forum.getContentId()); assertEquals(tforum, forum); Index: lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/ForumToolSessionDAOTest.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/Attic/ForumToolSessionDAOTest.java,v diff -u -r1.2 -r1.3 --- lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/ForumToolSessionDAOTest.java 16 Dec 2005 00:25:43 -0000 1.2 +++ lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/ForumToolSessionDAOTest.java 17 Jan 2006 00:17:20 -0000 1.3 @@ -22,12 +22,12 @@ import java.util.List; +import org.lamsfoundation.lams.tool.forum.persistence.Forum; import org.lamsfoundation.lams.tool.forum.persistence.ForumToolSession; -import org.lamsfoundation.lams.tool.forum.persistence.ForumToolSessionDao; -import org.lamsfoundation.lams.tool.forum.test.BaseTest; +import org.lamsfoundation.lams.tool.forum.test.DAOBaseTest; import org.lamsfoundation.lams.tool.forum.test.TestUtils; -public class ForumToolSessionDAOTest extends BaseTest{ +public class ForumToolSessionDAOTest extends DAOBaseTest{ public ForumToolSessionDAOTest(String name) { super(name); @@ -36,54 +36,56 @@ public void testSave(){ ForumToolSession session = TestUtils.getSessionA(); - ForumToolSessionDao dao = new ForumToolSessionDao(); - dao.saveOrUpdate(session); + forumToolSessionDao.saveOrUpdate(session); - ForumToolSession tSession = dao.getBySessionId(session.getSessionId()); + ForumToolSession tSession = forumToolSessionDao.getBySessionId(session.getSessionId()); assertEquals(session,tSession); //remove test data - dao.delete(session); + forumToolSessionDao.delete(session); } public void testDelete(){ ForumToolSession session = TestUtils.getSessionA(); - ForumToolSessionDao dao = new ForumToolSessionDao(); - dao.saveOrUpdate(session); - dao.delete(session); + forumToolSessionDao.saveOrUpdate(session); + forumToolSessionDao.delete(session); - assertNull(dao.getBySessionId(session.getSessionId())); + assertNull(forumToolSessionDao.getBySessionId(session.getSessionId())); } public void testGetByContentId(){ - ForumToolSessionDao dao = new ForumToolSessionDao(); + Forum forumA = TestUtils.getForumA(); + forumDao.saveOrUpdate(forumA); + ForumToolSession sessionA = TestUtils.getSessionA(); - dao.saveOrUpdate(sessionA); + sessionA.setForum(forumA); + forumToolSessionDao.saveOrUpdate(sessionA); ForumToolSession sessionB = TestUtils.getSessionB(); - dao.saveOrUpdate(sessionB); + sessionB.setForum(forumA); + forumToolSessionDao.saveOrUpdate(sessionB); - List list = dao.getByContentId(new Long(1)); + List list = forumToolSessionDao.getByContentId(new Long(1)); - assertEquals(list.size(),2); + assertEquals(2,list.size()); assertEquals(list.get(0),sessionA); assertEquals(list.get(1),sessionB); //remove test data - dao.delete(sessionA); - dao.delete(sessionB); + forumToolSessionDao.delete(sessionA); + forumToolSessionDao.delete(sessionB); + forumDao.delete(forumA); } public void testGetBySessionId(){ ForumToolSession session = TestUtils.getSessionA(); - ForumToolSessionDao dao = new ForumToolSessionDao(); - dao.saveOrUpdate(session); + forumToolSessionDao.saveOrUpdate(session); - ForumToolSession tSession = dao.getBySessionId(session.getSessionId()); + ForumToolSession tSession = forumToolSessionDao.getBySessionId(session.getSessionId()); assertEquals(session,tSession); //remove test data - dao.delete(session); + forumToolSessionDao.delete(session); } } Index: lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/ForumUserDAOTest.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/Attic/ForumUserDAOTest.java,v diff -u -r1.2 -r1.3 --- lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/ForumUserDAOTest.java 16 Dec 2005 00:25:43 -0000 1.2 +++ lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/ForumUserDAOTest.java 17 Jan 2006 00:17:20 -0000 1.3 @@ -21,29 +21,31 @@ package org.lamsfoundation.lams.tool.forum.test.dao; import org.lamsfoundation.lams.tool.forum.persistence.ForumUser; -import org.lamsfoundation.lams.tool.forum.persistence.ForumUserDao; -import org.lamsfoundation.lams.tool.forum.test.BaseTest; +import org.lamsfoundation.lams.tool.forum.test.DAOBaseTest; import org.lamsfoundation.lams.tool.forum.test.TestUtils; -public class ForumUserDAOTest extends BaseTest{ +public class ForumUserDAOTest extends DAOBaseTest{ public ForumUserDAOTest(String name) { super(name); } public void testSave(){ ForumUser user = TestUtils.getUserA(); - ForumUserDao dao = new ForumUserDao(); - dao.save(user); - ForumUser tUser = dao.getByUid(user.getUid()); + forumUserDao.save(user); + ForumUser tUser = forumUserDao.getByUid(user.getUid()); assertEquals(tUser,user); + + //remove test data + forumUserDao.delete(user); } public void testGetByUserId(){ ForumUser user = TestUtils.getUserA(); - ForumUserDao dao = new ForumUserDao(); - dao.save(user); - ForumUser tUser = dao.getByUserId(new Long(1)); + forumUserDao.save(user); + ForumUser tUser = forumUserDao.getByUserId(new Long(1)); assertEquals(tUser,user); + //remove test data + forumUserDao.delete(user); } } Index: lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/MessageDAOTest.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/Attic/MessageDAOTest.java,v diff -u -r1.2 -r1.3 --- lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/MessageDAOTest.java 16 Dec 2005 00:25:43 -0000 1.2 +++ lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/dao/MessageDAOTest.java 17 Jan 2006 00:17:20 -0000 1.3 @@ -22,126 +22,152 @@ import java.util.List; +import org.lamsfoundation.lams.tool.forum.persistence.Forum; +import org.lamsfoundation.lams.tool.forum.persistence.ForumToolSession; +import org.lamsfoundation.lams.tool.forum.persistence.ForumUser; import org.lamsfoundation.lams.tool.forum.persistence.Message; -import org.lamsfoundation.lams.tool.forum.persistence.MessageDao; -import org.lamsfoundation.lams.tool.forum.test.BaseTest; +import org.lamsfoundation.lams.tool.forum.test.DAOBaseTest; import org.lamsfoundation.lams.tool.forum.test.TestUtils; -public class MessageDAOTest extends BaseTest{ +public class MessageDAOTest extends DAOBaseTest{ public MessageDAOTest(String name) { super(name); } public void testSave(){ Message msg = TestUtils.getMessageA(); - MessageDao dao = new MessageDao(); - dao.saveOrUpdate(msg); - Message tmsg = dao.getById(msg.getUid()); + messageDao.saveOrUpdate(msg); + Message tmsg = messageDao.getById(msg.getUid()); assertEquals(msg,tmsg); - dao.delete(msg.getUid()); + messageDao.delete(msg.getUid()); } public void testDelete(){ Message msg = TestUtils.getMessageA(); - MessageDao dao = new MessageDao(); - dao.saveOrUpdate(msg); - dao.delete(msg.getUid()); + messageDao.saveOrUpdate(msg); + messageDao.delete(msg.getUid()); - assertNull(dao.getById(msg.getUid())); + assertNull(messageDao.getById(msg.getUid())); } public void testGetBySession(){ - MessageDao dao = new MessageDao(); + ForumToolSession sessionA = TestUtils.getSessionA(); + forumToolSessionDao.saveOrUpdate(sessionA); + Message msgA = TestUtils.getMessageA(); - dao.saveOrUpdate(msgA); + msgA.setToolSession(sessionA); + messageDao.saveOrUpdate(msgA); Message msgB = TestUtils.getMessageB(); - dao.saveOrUpdate(msgB); + msgB.setToolSession(sessionA); + messageDao.saveOrUpdate(msgB); - List list = dao.getBySession(new Long(1)); + List list = messageDao.getBySession(new Long(1)); - assertEquals(list.size(),2); + assertEquals(2,list.size()); assertEquals(list.get(0),msgA); assertEquals(list.get(1),msgB); //remove test data - dao.delete(msgA.getUid()); - dao.delete(msgB.getUid()); - + messageDao.delete(msgA.getUid()); + messageDao.delete(msgB.getUid()); + forumToolSessionDao.delete(sessionA); } public void testGetBySessionAndUser(){ - MessageDao dao = new MessageDao(); + ForumToolSession sessionA = TestUtils.getSessionA(); + forumToolSessionDao.saveOrUpdate(sessionA); + ForumUser userA = TestUtils.getUserA(); + forumUserDao.save(userA); + Message msgA = TestUtils.getMessageA(); - dao.saveOrUpdate(msgA); + msgA.setToolSession(sessionA); + msgA.setCreatedBy(userA); + messageDao.saveOrUpdate(msgA); Message msgB = TestUtils.getMessageB(); - dao.saveOrUpdate(msgB); + msgB.setToolSession(sessionA); + msgB.setCreatedBy(userA); + messageDao.saveOrUpdate(msgB); - List list = dao.getByUserAndSession(new Long(1),new Long(1)); + List list = messageDao.getByUserAndSession(userA.getUid(),sessionA.getSessionId()); - assertEquals(list.size(),1); + assertEquals(2,list.size()); assertEquals(list.get(0),msgA); + assertEquals(list.get(1),msgB); //remove test data - dao.delete(msgA.getUid()); - dao.delete(msgB.getUid()); + messageDao.delete(msgA.getUid()); + messageDao.delete(msgB.getUid()); + forumToolSessionDao.delete(sessionA); + forumUserDao.delete(userA); } public void testGetFromAuthor(){ - MessageDao dao = new MessageDao(); + ForumUser userA = TestUtils.getUserA(); + forumUserDao.save(userA); + Forum forumA = TestUtils.getForumA(); + forumDao.saveOrUpdate(forumA); + Message msgA = TestUtils.getMessageA(); + msgA.setCreatedBy(userA); + msgA.setForum(forumA); msgA.setIsAuthored(true); - dao.saveOrUpdate(msgA); + messageDao.saveOrUpdate(msgA); Message msgB = TestUtils.getMessageB(); + msgB.setForum(forumA); + msgB.setCreatedBy(userA); msgB.setIsAuthored(false); - dao.saveOrUpdate(msgB); + messageDao.saveOrUpdate(msgB); - List list = dao.getTopicsFromAuthor(new Long(1)); + List list = messageDao.getTopicsFromAuthor(forumA.getUid()); - assertEquals(list.size(),1); + assertEquals(1,list.size()); assertEquals(list.get(0),msgA); //remove test data - dao.delete(msgA.getUid()); - dao.delete(msgB.getUid()); + messageDao.delete(msgA.getUid()); + messageDao.delete(msgB.getUid()); + forumUserDao.delete(userA); + forumDao.delete(forumA); } public void testGetRootTopics(){ - MessageDao dao = new MessageDao(); + ForumToolSession sessionA = TestUtils.getSessionA(); + forumToolSessionDao.saveOrUpdate(sessionA); + Message msgA = TestUtils.getMessageA(); - msgA.setIsAuthored(true); - dao.saveOrUpdate(msgA); + msgA.setToolSession(sessionA); + messageDao.saveOrUpdate(msgA); + Message msgB = TestUtils.getMessageB(); - msgB.setIsAuthored(false); msgB.setParent(msgA); - dao.saveOrUpdate(msgB); + msgB.setToolSession(sessionA); + messageDao.saveOrUpdate(msgB); - List list = dao.getRootTopics(new Long(1)); + List list = messageDao.getRootTopics(sessionA.getSessionId()); - assertEquals(list.size(),1); + assertEquals(1,list.size()); assertEquals(list.get(0),msgA); //remove test data - dao.delete(msgA.getUid()); - dao.delete(msgB.getUid()); + messageDao.delete(msgB.getUid()); + messageDao.delete(msgA.getUid()); } public void testGetChildrenTopics(){ - MessageDao dao = new MessageDao(); Message msgA = TestUtils.getMessageA(); - msgA.setIsAuthored(true); - dao.saveOrUpdate(msgA); + messageDao.saveOrUpdate(msgA); + Message msgB = TestUtils.getMessageB(); - msgB.setIsAuthored(false); msgB.setParent(msgA); - dao.saveOrUpdate(msgB); + messageDao.saveOrUpdate(msgB); - List list = dao.getChildrenTopics(new Long(1)); + List list = messageDao.getChildrenTopics(msgA.getUid()); - assertEquals(list.size(),1); + assertEquals(1,list.size()); assertEquals(list.get(0),msgB); //remove test data - dao.delete(msgA.getUid()); - dao.delete(msgB.getUid()); + messageDao.delete(msgB.getUid()); + messageDao.delete(msgA.getUid()); } Index: lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/service/ForumServiceTest.java =================================================================== RCS file: /usr/local/cvsroot/lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/service/Attic/ForumServiceTest.java,v diff -u -r1.3 -r1.4 --- lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/service/ForumServiceTest.java 15 Dec 2005 05:59:10 -0000 1.3 +++ lams_tool_forum/test/java/org/lamsfoundation/lams/tool/forum/test/service/ForumServiceTest.java 17 Jan 2006 00:17:20 -0000 1.4 @@ -26,15 +26,16 @@ import org.lamsfoundation.lams.tool.ToolSessionManager; import org.lamsfoundation.lams.tool.exception.DataMissingException; import org.lamsfoundation.lams.tool.exception.ToolException; +import org.lamsfoundation.lams.tool.forum.dto.MessageDTO; import org.lamsfoundation.lams.tool.forum.persistence.Forum; import org.lamsfoundation.lams.tool.forum.persistence.ForumToolSession; import org.lamsfoundation.lams.tool.forum.persistence.ForumUser; import org.lamsfoundation.lams.tool.forum.persistence.Message; import org.lamsfoundation.lams.tool.forum.service.IForumService; -import org.lamsfoundation.lams.tool.forum.test.BaseTest; +import org.lamsfoundation.lams.tool.forum.test.DAOBaseTest; import org.lamsfoundation.lams.tool.forum.test.TestUtils; -public class ForumServiceTest extends BaseTest{ +public class ForumServiceTest extends DAOBaseTest{ private IForumService forumService; private ToolContentManager contentManager; private ToolSessionManager sessionManager; @@ -49,91 +50,148 @@ sessionManager = (ToolSessionManager) forumService; } public void testUpdateForum(){ - Forum forum = TestUtils.getForumA(); - ForumUser user = forum.getCreatedBy(); + ForumUser user = TestUtils.getUserA(); + forumService.createUser(user); + Forum forum = TestUtils.getForumA(); + forum.setCreatedBy(user); forumService.updateForum(forum); + //get back - Forum tForum = forumService.getForum(new Long(1)); + Forum tForum = forumService.getForum(forum.getUid()); assertEquals(tForum.getContentId(),new Long(1)); assertEquals(tForum.getCreatedBy(),user); + + //remove test data + forumDao.delete(forum); + forumUserDao.delete(user); } public void testCreateRootTopic(){ + Forum forum = TestUtils.getForumA(); + forumDao.saveOrUpdate(forum); + ForumToolSession session = TestUtils.getSessionA(); + session.setForum(forum); + forumToolSessionDao.saveOrUpdate(session); + Message msg = TestUtils.getMessageA(); - forumService.createRootTopic(new Long(1),new Long(1),msg); + msg.setForum(forum); + + forumService.createRootTopic(forum.getUid(),session.getSessionId(),msg); Message tMsg = forumService.getMessage(msg.getUid()); - assertFalse(tMsg.getUpdated().equals(msg.getUpdated())); tMsg.setUpdated(msg.getUpdated()); assertEquals(tMsg,msg); + + //remove test data + forumService.deleteTopic(msg.getUid()); + forumToolSessionDao.delete(session); + forumDao.delete(forum); } public void testUpdateTopic(){ + Forum forum = TestUtils.getForumA(); + forumDao.saveOrUpdate(forum); + ForumToolSession session = TestUtils.getSessionA(); + session.setForum(forum); + forumToolSessionDao.saveOrUpdate(session); Message msg = TestUtils.getMessageA(); + forumService.createRootTopic(forum.getUid(),session.getSessionId(),msg); + + msg.setBody("update"); Message tMsg = forumService.updateTopic(msg); //update date will be different - assertFalse(tMsg.getUpdated().equals(msg.getUpdated())); tMsg.setUpdated(msg.getUpdated()); + tMsg.setBody("update"); assertEquals(tMsg,msg); //remove test data forumService.deleteTopic(msg.getUid()); + forumToolSessionDao.delete(session); + forumDao.delete(forum); } public void testReplyTopic(){ + Forum forum = TestUtils.getForumA(); + forumDao.saveOrUpdate(forum); + ForumToolSession session = TestUtils.getSessionA(); + session.setForum(forum); + forumToolSessionDao.saveOrUpdate(session); + ForumUser user = TestUtils.getUserA(); + forumUserDao.save(user); + Message parent = TestUtils.getMessageA(); - forumService.updateTopic(parent); + parent.setCreatedBy(user); + forumService.createRootTopic(forum.getUid(),session.getSessionId(),parent); Message msg = TestUtils.getMessageB(); - ForumToolSession session = TestUtils.getSessionA(); - forumService.updateSession(session); - Message tMsg = forumService.replyTopic(parent.getUid(),session.getUid(),msg); + msg.setCreatedBy(user); + Message tMsg = forumService.replyTopic(parent.getUid(),session.getSessionId(),msg); + List list = forumService.getTopicThread(parent.getUid()); + Message child = ((MessageDTO) list.get(1)).getMessage(); + assertEquals(child,tMsg); - //update date will be different - assertFalse(tMsg.getUpdated().equals(msg.getUpdated())); - tMsg.setUpdated(msg.getUpdated()); - assertEquals(tMsg,msg); - // remove test data forumService.deleteTopic(parent.getUid()); + forumToolSessionDao.delete(session); + forumDao.delete(forum); + forumUserDao.delete(user); + } public void testDeleteTopic(){ + Forum forum = TestUtils.getForumA(); + forumDao.saveOrUpdate(forum); + ForumToolSession session = TestUtils.getSessionA(); + session.setForum(forum); + forumToolSessionDao.saveOrUpdate(session); + Message parent = TestUtils.getMessageA(); - forumService.updateTopic(parent); + forumService.createRootTopic(forum.getUid(),session.getSessionId(),parent); Message msg = TestUtils.getMessageB(); - ForumToolSession session = TestUtils.getSessionA(); - forumService.updateSession(session); - forumService.replyTopic(parent.getUid(),session.getUid(),msg); + forumService.replyTopic(parent.getUid(),session.getSessionId(),msg); //delete parent and its children. forumService.deleteTopic(parent.getUid()); assertNull(forumService.getMessage(parent.getUid())); assertNull(forumService.getMessage(msg.getUid())); +// remove test data + forumToolSessionDao.delete(session); + forumDao.delete(forum); + } public void testGetTopicThread(){ + Forum forum = TestUtils.getForumA(); + forumDao.saveOrUpdate(forum); + ForumToolSession session = TestUtils.getSessionA(); + session.setForum(forum); + forumToolSessionDao.saveOrUpdate(session); + ForumUser user = TestUtils.getUserA(); + forumUserDao.save(user); + Message parent = TestUtils.getMessageA(); - ForumToolSession sessionA = TestUtils.getSessionA(); - forumService.updateSession(sessionA); - parent.setToolSession(sessionA); - forumService.updateTopic(parent); + parent.setCreatedBy(user); + forumService.createRootTopic(forum.getUid(),session.getSessionId(),parent); Message msg = TestUtils.getMessageB(); - forumService.replyTopic(parent.getUid(),sessionA.getUid(),msg); + msg.setCreatedBy(user); + forumService.replyTopic(parent.getUid(),session.getSessionId(),msg); - List list = forumService.getRootTopics(sessionA.getUid()); + List list = forumService.getRootTopics(session.getSessionId()); - assertEquals(list.size(),1); - assertEquals(list.get(0),parent); + assertEquals(1,list.size()); + assertEquals(((MessageDTO)list.get(0)).getMessage(),parent); +// remove test data //delete parent and its children. forumService.deleteTopic(parent.getUid()); - + forumToolSessionDao.delete(session); + forumDao.delete(forum); + forumUserDao.delete(user); } public void testUpdateSession() throws DataMissingException, ToolException{ ForumToolSession sessionA = TestUtils.getSessionA(); forumService.updateSession(sessionA); - ForumToolSession session = TestUtils.getSessionA(); + ForumToolSession session = forumService.getSessionBySessionId(sessionA.getSessionId()); assertEquals(session,sessionA); //remove test data. @@ -142,7 +200,7 @@ public void testCreateUser(){ ForumUser userA = TestUtils.getUserA(); forumService.createUser(userA); - ForumUser user = TestUtils.getUserA(); + ForumUser user = forumService.getUser(userA.getUid()); assertEquals(userA,user); } }