01: /**
02: * EasyBeans
03: * Copyright (C) 2006 Bull S.A.S.
04: * Contact: easybeans@ow2.org
05: *
06: * This library is free software; you can redistribute it and/or
07: * modify it under the terms of the GNU Lesser General Public
08: * License as published by the Free Software Foundation; either
09: * version 2.1 of the License, or any later version.
10: *
11: * This library is distributed in the hope that it will be useful,
12: * but WITHOUT ANY WARRANTY; without even the implied warranty of
13: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14: * Lesser General Public License for more details.
15: *
16: * You should have received a copy of the GNU Lesser General Public
17: * License along with this library; if not, write to the Free Software
18: * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
19: * USA
20: *
21: * --------------------------------------------------------------------------
22: * $Id: TestPersistenceLifetimeCMExtended02.java 1970 2007-10-16 11:49:25Z benoitf $
23: * --------------------------------------------------------------------------
24: */package org.ow2.easybeans.tests.persistence.lifetime;
25:
26: import static org.ow2.easybeans.tests.common.helper.EJBHelper.getBeanRemoteInstance;
27:
28: import org.ow2.easybeans.tests.common.ejbs.base.persistencectxlife.ItfPCtxLifeCMETest00;
29: import org.ow2.easybeans.tests.common.ejbs.stateful.beanmanaged.persistencectxlife.SFSBBeanManagedPCtxLifeCMETest00;
30: import org.testng.annotations.BeforeMethod;
31: import org.testng.annotations.Test;
32:
33: /**
34: * Tests container-managed extended-scoped persistence context. It uses a Stateful as client and a
35: * Stateful with extendended-scoped persistence context.
36: * @reference JSR 220 - Persistence API - FINAL DRAFT - 5.6.2
37: * @requirement Application Server must be running; the package
38: * org.ow2.easybeans.tests.common.ejbs.stateful.beanmanaged.persistencectxlife
39: * must be deployed
40: * @setup gets the reference of the bean.
41: * @author Eduardo Studzinski Estima de Castro
42: * @author Gisele Pinheiro Souza
43: */
44: public class TestPersistenceLifetimeCMExtended02 {
45:
46: /**
47: * Bean.
48: */
49: private ItfPCtxLifeCMETest00 bean;
50:
51: /**
52: * Gets bean instances used in the tests.
53: * @throws Exception if there is a problem with the bean initialization.
54: */
55: @BeforeMethod
56: public void startUp() throws Exception {
57: bean = getBeanRemoteInstance(
58: SFSBBeanManagedPCtxLifeCMETest00.class,
59: ItfPCtxLifeCMETest00.class);
60: }
61:
62: /**
63: * Tests if an entity manager with a Stateful bean managed can manage an
64: * extended-scoped persistence context. The Stateful creates a transaction
65: * that must be propagated to another Stateful which has an extended persistence context. After the commit,
66: * it is check if the context is still managed. In the second step,
67: * the test verifies using another bean method if the entity is still managed.
68: * @input With providing a client(stateful bean manged) transaction,
69: * invocation of a bean method which creates an entity and persists it.
70: * @output A managed entity.
71: * @throws Exception if a problem occurs.
72: */
73: @Test
74: public void test00() throws Exception {
75: bean.create();
76: bean.check();
77: }
78: }
|