mirror of
https://github.com/spring-projects/spring-framework.git
synced 2026-09-30 03:09:03 +00:00
Early support for JPA 4.0 EntityAgent (autowiring a shared proxy)
Includes skipping of isOpen check on close where easily possible. Closes gh-36025
This commit is contained in:
-6
@@ -108,7 +108,6 @@ class SharedEntityManagerCreatorTests {
|
||||
Query targetQuery = mock();
|
||||
given(emf.createEntityManager()).willReturn(targetEm);
|
||||
given(targetEm.createQuery("x")).willReturn(targetQuery);
|
||||
given(targetEm.isOpen()).willReturn(true);
|
||||
given((Query) targetQuery.unwrap(targetQuery.getClass())).willReturn(targetQuery);
|
||||
|
||||
EntityManager em = SharedEntityManagerCreator.createSharedEntityManager(emf);
|
||||
@@ -129,7 +128,6 @@ class SharedEntityManagerCreatorTests {
|
||||
Query targetQuery = mock();
|
||||
given(emf.createEntityManager()).willReturn(targetEm);
|
||||
given(targetEm.createQuery("x")).willReturn(targetQuery);
|
||||
given(targetEm.isOpen()).willReturn(true);
|
||||
given((Query) targetQuery.unwrap(targetQuery.getClass())).willReturn(targetQuery);
|
||||
|
||||
EntityManager em = SharedEntityManagerCreator.createSharedEntityManager(emf);
|
||||
@@ -150,7 +148,6 @@ class SharedEntityManagerCreatorTests {
|
||||
Query targetQuery = mock();
|
||||
given(emf.createEntityManager()).willReturn(targetEm);
|
||||
given(targetEm.createQuery("x")).willReturn(targetQuery);
|
||||
given(targetEm.isOpen()).willReturn(true);
|
||||
given((Query) targetQuery.unwrap(targetQuery.getClass())).willReturn(targetQuery);
|
||||
|
||||
EntityManager em = SharedEntityManagerCreator.createSharedEntityManager(emf);
|
||||
@@ -171,7 +168,6 @@ class SharedEntityManagerCreatorTests {
|
||||
Query targetQuery = mock();
|
||||
given(emf.createEntityManager()).willReturn(targetEm);
|
||||
given(targetEm.createQuery("x")).willReturn(targetQuery);
|
||||
given(targetEm.isOpen()).willReturn(true);
|
||||
given((Query) targetQuery.unwrap(targetQuery.getClass())).willReturn(targetQuery);
|
||||
|
||||
EntityManager em = SharedEntityManagerCreator.createSharedEntityManager(emf);
|
||||
@@ -194,7 +190,6 @@ class SharedEntityManagerCreatorTests {
|
||||
given(targetEm.createStoredProcedureQuery("x")).willReturn(targetQuery);
|
||||
willReturn("y").given(targetQuery).getOutputParameterValue(0);
|
||||
willReturn("z").given(targetQuery).getOutputParameterValue(2);
|
||||
given(targetEm.isOpen()).willReturn(true);
|
||||
|
||||
EntityManager em = SharedEntityManagerCreator.createSharedEntityManager(emf);
|
||||
StoredProcedureQuery spq = em.createStoredProcedureQuery("x");
|
||||
@@ -225,7 +220,6 @@ class SharedEntityManagerCreatorTests {
|
||||
given(targetEm.createStoredProcedureQuery("x")).willReturn(targetQuery);
|
||||
willReturn("y").given(targetQuery).getOutputParameterValue("a");
|
||||
willReturn("z").given(targetQuery).getOutputParameterValue("c");
|
||||
given(targetEm.isOpen()).willReturn(true);
|
||||
|
||||
EntityManager em = SharedEntityManagerCreator.createSharedEntityManager(emf);
|
||||
StoredProcedureQuery spq = em.createStoredProcedureQuery("x");
|
||||
|
||||
-3
@@ -59,7 +59,6 @@ class PersistenceContextTransactionTests {
|
||||
void setup() {
|
||||
given(factory.createEntityManager()).willReturn(manager);
|
||||
given(manager.getTransaction()).willReturn(tx);
|
||||
given(manager.isOpen()).willReturn(true);
|
||||
|
||||
@SuppressWarnings("serial")
|
||||
PersistenceAnnotationBeanPostProcessor pabpp = new PersistenceAnnotationBeanPostProcessor() {
|
||||
@@ -99,8 +98,6 @@ class PersistenceContextTransactionTests {
|
||||
|
||||
@Test
|
||||
void testTransactionCommitWithSharedEntityManagerAndPropagationSupports() {
|
||||
given(manager.isOpen()).willReturn(true);
|
||||
|
||||
tt.setPropagationBehavior(TransactionDefinition.PROPAGATION_SUPPORTS);
|
||||
|
||||
tt.execute(status -> {
|
||||
|
||||
+1
-3
@@ -42,7 +42,6 @@ class SharedEntityManagerFactoryTests {
|
||||
Object o = new Object();
|
||||
|
||||
EntityManager mockEm = mock();
|
||||
given(mockEm.isOpen()).willReturn(true);
|
||||
|
||||
EntityManagerFactory mockEmf = mock();
|
||||
given(mockEmf.createEntityManager()).willReturn(mockEm);
|
||||
@@ -58,8 +57,7 @@ class SharedEntityManagerFactoryTests {
|
||||
assertThat(proxyFactoryBean.getObject()).isSameAs(proxy);
|
||||
assertThat(proxy.contains(o)).isFalse();
|
||||
|
||||
boolean condition = proxy instanceof EntityManagerProxy;
|
||||
assertThat(condition).isTrue();
|
||||
assertThat(proxy).isInstanceOf(EntityManagerProxy.class);
|
||||
EntityManagerProxy emProxy = (EntityManagerProxy) proxy;
|
||||
assertThatIllegalStateException().as("outside of transaction").isThrownBy(
|
||||
emProxy::getTargetEntityManager);
|
||||
|
||||
Reference in New Issue
Block a user