[jboss-user] [JBoss Seam] - Re: Uni testing and datasource problem
jagin
do-not-reply at jboss.com
Sun Jan 6 14:44:24 EST 2008
The last working example is not very good because for every @Test method we have to createEntityManagerFactory. I don't think it's a good idea.
So i found a better solution:
| public class MyTest extends SeamTest {
| private EntityManagerFactory emf;
|
| @Override
| @BeforeClass
| public void init() throws Exception {
| super.init();
| emf = Persistence.createEntityManagerFactory("ezapp");
| }
|
| @Override
| @AfterClass
| public void cleanup() throws Exception {
| emf.close();
| super.cleanup();
| }
|
| @Test
| public void testFindByUsername() {
| EntityManager em = emf.createEntityManager();
| em.getTransaction().begin();
|
| em.getTransaction().rollback();
| em.close();
| }
| }
|
First we have to extend SeamTest even if we are not going to use it's functionality in our unit test. But we need to initialize embedded container which is started in SeamTest.init(). So we override this method, call super.init() to initialize container and next we create our EntityManagerFactory. We close EntityManagerFactory in overrided cleanup() method.
Regards
Jarek
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4117392#4117392
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4117392
More information about the jboss-user
mailing list