From a71eb4786ae82f22846e1d0d58ec5568195c25d0 Mon Sep 17 00:00:00 2001 From: Brett Meyer Date: Wed, 12 Mar 2014 16:04:41 -0400 Subject: [PATCH] HHH-8374 test case --- .../reattachment/ProxyReattachmentTest.java | 28 ++++++++++++++++--- 1 file changed, 24 insertions(+), 4 deletions(-) diff --git a/hibernate-core/src/test/java/org/hibernate/test/reattachment/ProxyReattachmentTest.java b/hibernate-core/src/test/java/org/hibernate/test/reattachment/ProxyReattachmentTest.java index 27c520629c..9390bd0adb 100644 --- a/hibernate-core/src/test/java/org/hibernate/test/reattachment/ProxyReattachmentTest.java +++ b/hibernate-core/src/test/java/org/hibernate/test/reattachment/ProxyReattachmentTest.java @@ -23,16 +23,16 @@ */ package org.hibernate.test.reattachment; +import static org.junit.Assert.assertEquals; + import java.util.HashSet; import java.util.Iterator; import java.util.Set; -import org.junit.Test; - import org.hibernate.Session; +import org.hibernate.testing.TestForIssue; import org.hibernate.testing.junit4.BaseCoreFunctionalTestCase; - -import static org.junit.Assert.assertEquals; +import org.junit.Test; /** * Test of proxy reattachment semantics @@ -250,4 +250,24 @@ public void testIterateWithEvictBottomOfLoop() { s.getTransaction().commit(); s.close(); } + + @Test + @TestForIssue(jiraKey = "HHH-8374") + public void testRemoveAndReattachProxyEntity() { + Session s = openSession(); + s.beginTransaction(); + Parent p = new Parent("foo"); + s.persist( p ); + s.getTransaction().commit(); + s.close(); + + s = openSession(); + s.beginTransaction(); + p = (Parent) s.load( Parent.class, p.getName() ); + s.delete( p ); + // re-attach + s.persist( p ); + s.getTransaction().commit(); + s.close(); + } }