Index: lams_common/build.xml =================================================================== diff -u -rfe4acb49960c15b037e3a7a33205ce46d3ec12a2 -rceebf32d92002b7509364edecf1da2405913e8e7 --- lams_common/build.xml (.../build.xml) (revision fe4acb49960c15b037e3a7a33205ce46d3ec12a2) +++ lams_common/build.xml (.../build.xml) (revision ceebf32d92002b7509364edecf1da2405913e8e7) @@ -369,7 +369,7 @@ - + Fisheye: Tag ceebf32d92002b7509364edecf1da2405913e8e7 refers to a dead (removed) revision in file `lams_common/test/java/org/lamsfoundation/lams/AbstractLamsCommonTestCase.java'. Fisheye: No comparison available. Pass `N' to diff? Index: lams_common/test/java/org/lamsfoundation/lams/AbstractLamsTestCase.java =================================================================== diff -u --- lams_common/test/java/org/lamsfoundation/lams/AbstractLamsTestCase.java (revision 0) +++ lams_common/test/java/org/lamsfoundation/lams/AbstractLamsTestCase.java (revision ceebf32d92002b7509364edecf1da2405913e8e7) @@ -0,0 +1,99 @@ +/* ******************************************************************************** + * Copyright Notice + * ================= + * This file contains propriety information of LAMS Foundation. + * Copying or reproduction with prior written permission is prohibited. + * Copyright (c) 2005 + * Created on 2/02/2005 + ******************************************************************************** */ + +package org.lamsfoundation.lams; + +import junit.framework.TestCase; + +import net.sf.hibernate.HibernateException; +import net.sf.hibernate.Session; +import net.sf.hibernate.SessionFactory; + +import org.springframework.context.ApplicationContext; +import org.springframework.context.support.ClassPathXmlApplicationContext; +import org.springframework.orm.hibernate.SessionFactoryUtils; +import org.springframework.orm.hibernate.SessionHolder; +import org.springframework.transaction.support.TransactionSynchronizationManager; + + +/** + * + * @author Jacky Fang 2/02/2005 + * + */ +public abstract class AbstractLamsTestCase extends TestCase +{ + protected ApplicationContext context; + + /** + * + */ + public AbstractLamsTestCase(String name) + { + super(name); + } + + /** + * @see TestCase#setUp() + */ + protected void setUp() throws Exception + { + super.setUp(); + context = new ClassPathXmlApplicationContext(getContextConfigLocation()); + initializeHibernateSession(); + } + + protected abstract String[] getContextConfigLocation(); + + /** + * @see TestCase#tearDown() + */ + protected void tearDown() throws Exception + { + super.tearDown(); + finalizeHibernateSession(); + } + + /** + * @throws HibernateException + */ + protected void initializeHibernateSession() throws HibernateException + { + //hold the hibernate session + SessionFactory sessionFactory = (SessionFactory) this.context.getBean("coreSessionFactory"); + Session s = sessionFactory.openSession(); + TransactionSynchronizationManager.bindResource(sessionFactory, new SessionHolder(s)); + } + /** + * @throws HibernateException + */ + protected void finalizeHibernateSession() throws HibernateException + { + //clean the hibernate session + SessionFactory sessionFactory = (SessionFactory)this.context.getBean("coreSessionFactory"); + SessionHolder holder = (SessionHolder)TransactionSynchronizationManager.getResource(sessionFactory); + if (holder != null) { + Session s = holder.getSession(); + s.flush(); + TransactionSynchronizationManager.unbindResource(sessionFactory); + SessionFactoryUtils.closeSessionIfNecessary(s, sessionFactory); + } + } + + protected Session getSession() + { + SessionFactory sessionFactory = (SessionFactory)this.context.getBean("coreSessionFactory"); + SessionHolder holder = (SessionHolder)TransactionSynchronizationManager.getResource(sessionFactory); + if (holder != null) + return holder.getSession(); + else + return null; + + } +} Index: lams_common/test/java/org/lamsfoundation/lams/learningdesign/dao/TestActivityDAO.java =================================================================== diff -u -rcfef4351991e34dc2c827370370af84d6059bc0d -rceebf32d92002b7509364edecf1da2405913e8e7 --- lams_common/test/java/org/lamsfoundation/lams/learningdesign/dao/TestActivityDAO.java (.../TestActivityDAO.java) (revision cfef4351991e34dc2c827370370af84d6059bc0d) +++ lams_common/test/java/org/lamsfoundation/lams/learningdesign/dao/TestActivityDAO.java (.../TestActivityDAO.java) (revision ceebf32d92002b7509364edecf1da2405913e8e7) @@ -1,6 +1,6 @@ package org.lamsfoundation.lams.learningdesign.dao; -import org.lamsfoundation.lams.AbstractLamsCommonTestCase; +import org.lamsfoundation.lams.AbstractLamsTestCase; import org.lamsfoundation.lams.learningdesign.dao.hibernate.ActivityDAO; import org.lamsfoundation.lams.learningdesign.dao.hibernate.GroupingDAO; import org.lamsfoundation.lams.learningdesign.dao.hibernate.LearningDesignDAO; @@ -20,7 +20,7 @@ * TODO To change the template for this generated type comment go to * Window - Preferences - Java - Code Style - Code Templates */ -public class TestActivityDAO extends AbstractLamsCommonTestCase { +public class TestActivityDAO extends AbstractLamsTestCase { protected ActivityDAO activityDAO; protected Activity activity; @@ -55,7 +55,7 @@ System.out.println("Transition FROM:" + transition.getActivityByToActivityId()); } /* (non-Javadoc) - * @see org.lamsfoundation.lams.AbstractLamsCommonTestCase#getContextConfigLocation() + * @see org.lamsfoundation.lams.AbstractLamsTestCase#getContextConfigLocation() */ protected String[] getContextConfigLocation() { return new String[] {"/org/lamsfoundation/lams/learningdesign/learningDesignApplicationContext.xml", Index: lams_common/test/java/org/lamsfoundation/lams/learningdesign/dao/TestLearningDesignDAO.java =================================================================== diff -u -rcfef4351991e34dc2c827370370af84d6059bc0d -rceebf32d92002b7509364edecf1da2405913e8e7 --- lams_common/test/java/org/lamsfoundation/lams/learningdesign/dao/TestLearningDesignDAO.java (.../TestLearningDesignDAO.java) (revision cfef4351991e34dc2c827370370af84d6059bc0d) +++ lams_common/test/java/org/lamsfoundation/lams/learningdesign/dao/TestLearningDesignDAO.java (.../TestLearningDesignDAO.java) (revision ceebf32d92002b7509364edecf1da2405913e8e7) @@ -3,7 +3,7 @@ */ package org.lamsfoundation.lams.learningdesign.dao; -import org.lamsfoundation.lams.AbstractLamsCommonTestCase; +import org.lamsfoundation.lams.AbstractLamsTestCase; import org.lamsfoundation.lams.learningdesign.LearningDesign; import org.lamsfoundation.lams.learningdesign.dao.hibernate.LearningDesignDAO; import org.lamsfoundation.lams.usermanagement.User; @@ -17,7 +17,7 @@ * TODO To change the template for this generated type comment go to * Window - Preferences - Java - Code Style - Code Templates */ -public class TestLearningDesignDAO extends AbstractLamsCommonTestCase { +public class TestLearningDesignDAO extends AbstractLamsTestCase { private LearningDesignDAO learningDesignDAO; @@ -90,7 +90,7 @@ } /* (non-Javadoc) - * @see org.lamsfoundation.lams.AbstractLamsCommonTestCase#getContextConfigLocation() + * @see org.lamsfoundation.lams.AbstractLamsTestCase#getContextConfigLocation() */ protected String[] getContextConfigLocation() { return new String[] {"/org/lamsfoundation/lams/learningdesign/learningDesignApplicationContext.xml", Index: lams_common/test/java/org/lamsfoundation/lams/learningdesign/dao/TestLearningLibraryDAO.java =================================================================== diff -u -rcfef4351991e34dc2c827370370af84d6059bc0d -rceebf32d92002b7509364edecf1da2405913e8e7 --- lams_common/test/java/org/lamsfoundation/lams/learningdesign/dao/TestLearningLibraryDAO.java (.../TestLearningLibraryDAO.java) (revision cfef4351991e34dc2c827370370af84d6059bc0d) +++ lams_common/test/java/org/lamsfoundation/lams/learningdesign/dao/TestLearningLibraryDAO.java (.../TestLearningLibraryDAO.java) (revision ceebf32d92002b7509364edecf1da2405913e8e7) @@ -5,15 +5,15 @@ * Window - Preferences - Java - Code Style - Code Templates */ package org.lamsfoundation.lams.learningdesign.dao; -import org.lamsfoundation.lams.AbstractLamsCommonTestCase; +import org.lamsfoundation.lams.AbstractLamsTestCase; import org.lamsfoundation.lams.learningdesign.LearningLibrary; import org.lamsfoundation.lams.learningdesign.dao.hibernate.LearningLibraryDAO; /** * @author manpreet */ -public class TestLearningLibraryDAO extends AbstractLamsCommonTestCase { +public class TestLearningLibraryDAO extends AbstractLamsTestCase { protected LearningLibraryDAO libraryDAO; protected LearningLibrary library; @@ -33,7 +33,7 @@ } /** * (non-Javadoc) - * @see org.lamsfoundation.lams.AbstractLamsCommonTestCase#getContextConfigLocation() + * @see org.lamsfoundation.lams.AbstractLamsTestCase#getContextConfigLocation() */ protected String[] getContextConfigLocation() { return new String[] {"/org/lamsfoundation/lams/learningdesign/learningDesignApplicationContext.xml", Index: lams_common/test/java/org/lamsfoundation/lams/learningdesign/dao/TestTransitionDAO.java =================================================================== diff -u -rcfef4351991e34dc2c827370370af84d6059bc0d -rceebf32d92002b7509364edecf1da2405913e8e7 --- lams_common/test/java/org/lamsfoundation/lams/learningdesign/dao/TestTransitionDAO.java (.../TestTransitionDAO.java) (revision cfef4351991e34dc2c827370370af84d6059bc0d) +++ lams_common/test/java/org/lamsfoundation/lams/learningdesign/dao/TestTransitionDAO.java (.../TestTransitionDAO.java) (revision ceebf32d92002b7509364edecf1da2405913e8e7) @@ -8,7 +8,7 @@ import java.util.List; -import org.lamsfoundation.lams.AbstractLamsCommonTestCase; +import org.lamsfoundation.lams.AbstractLamsTestCase; import org.lamsfoundation.lams.learningdesign.Transition; import org.lamsfoundation.lams.learningdesign.dao.hibernate.TransitionDAO; @@ -18,7 +18,7 @@ * TODO To change the template for this generated type comment go to * Window - Preferences - Java - Code Style - Code Templates */ -public class TestTransitionDAO extends AbstractLamsCommonTestCase{ +public class TestTransitionDAO extends AbstractLamsTestCase{ protected TransitionDAO transitionDAO; protected Transition transition; @@ -41,7 +41,7 @@ } /** * (non-Javadoc) - * @see org.lamsfoundation.lams.AbstractLamsCommonTestCase#getContextConfigLocation() + * @see org.lamsfoundation.lams.AbstractLamsTestCase#getContextConfigLocation() */ protected String[] getContextConfigLocation() { return new String[] {"/org/lamsfoundation/lams/learningdesign/learningDesignApplicationContext.xml", Index: lams_common/test/java/org/lamsfoundation/lams/lesson/LessonDataAccessTestCase.java =================================================================== diff -u -r302ccfe6bd6ab0c26e695090e0126914598d72b7 -rceebf32d92002b7509364edecf1da2405913e8e7 --- lams_common/test/java/org/lamsfoundation/lams/lesson/LessonDataAccessTestCase.java (.../LessonDataAccessTestCase.java) (revision 302ccfe6bd6ab0c26e695090e0126914598d72b7) +++ lams_common/test/java/org/lamsfoundation/lams/lesson/LessonDataAccessTestCase.java (.../LessonDataAccessTestCase.java) (revision ceebf32d92002b7509364edecf1da2405913e8e7) @@ -17,7 +17,7 @@ import net.sf.hibernate.HibernateException; -import org.lamsfoundation.lams.AbstractLamsCommonTestCase; +import org.lamsfoundation.lams.AbstractLamsTestCase; import org.lamsfoundation.lams.learningdesign.Group; import org.lamsfoundation.lams.learningdesign.Grouping; import org.lamsfoundation.lams.learningdesign.LearningDesign; @@ -43,7 +43,7 @@ * @author Jacky Fang 2/02/2005 * */ -public class LessonDataAccessTestCase extends AbstractLamsCommonTestCase +public class LessonDataAccessTestCase extends AbstractLamsTestCase { //--------------------------------------------------------------------- @@ -114,7 +114,7 @@ } /** - * @see org.lamsfoundation.lams.AbstractLamsCommonTestCase#getContextConfigLocation() + * @see org.lamsfoundation.lams.AbstractLamsTestCase#getContextConfigLocation() */ protected String[] getContextConfigLocation() { Index: lams_common/test/java/org/lamsfoundation/lams/tool/ToolDataAccessTestCase.java =================================================================== diff -u -r302ccfe6bd6ab0c26e695090e0126914598d72b7 -rceebf32d92002b7509364edecf1da2405913e8e7 --- lams_common/test/java/org/lamsfoundation/lams/tool/ToolDataAccessTestCase.java (.../ToolDataAccessTestCase.java) (revision 302ccfe6bd6ab0c26e695090e0126914598d72b7) +++ lams_common/test/java/org/lamsfoundation/lams/tool/ToolDataAccessTestCase.java (.../ToolDataAccessTestCase.java) (revision ceebf32d92002b7509364edecf1da2405913e8e7) @@ -9,7 +9,7 @@ package org.lamsfoundation.lams.tool; -import org.lamsfoundation.lams.AbstractLamsCommonTestCase; +import org.lamsfoundation.lams.AbstractLamsTestCase; import org.lamsfoundation.lams.tool.dao.IToolContentDAO; import org.lamsfoundation.lams.tool.dao.IToolDAO; import org.lamsfoundation.lams.tool.dao.hibernate.ToolContentDAO; @@ -21,7 +21,7 @@ * @author Jacky Fang 8/02/2005 * */ -public class ToolDataAccessTestCase extends AbstractLamsCommonTestCase +public class ToolDataAccessTestCase extends AbstractLamsTestCase { protected IToolContentDAO toolContentDao; @@ -59,7 +59,7 @@ super(arg0); } /** - * @see org.lamsfoundation.lams.AbstractLamsCommonTestCase#getContextConfigLocation() + * @see org.lamsfoundation.lams.AbstractLamsTestCase#getContextConfigLocation() */ protected String[] getContextConfigLocation() {