/* * Hibernate, Relational Persistence for Idiomatic Java * * License: GNU Lesser General Public License (LGPL), version 2.1 or later. * See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>. */ package org.hibernate.test.annotations.cascade; import java.util.HashSet; import java.util.Set; import org.hibernate.Session; import org.hibernate.Transaction; import org.hibernate.testing.junit4.BaseCoreFunctionalTestCase; import org.junit.Test; public class CascadeToEmbeddedManyToOneTest extends BaseCoreFunctionalTestCase { @Test public void testPersistCascadeToSetOfEmbedded() { Session sess = openSession(); try { final Transaction trx = sess.beginTransaction(); try { final Set<PersonPair> setOfPairs = new HashSet<PersonPair>(); setOfPairs.add(new PersonPair(new Person("PERSON NAME 1"), new Person("PERSON NAME 2"))); sess.persist( new CodedPairSetHolder( "CODE", setOfPairs ) ); sess.flush(); } finally { trx.rollback(); } } finally { sess.close(); } } @Test public void testPersistCascadeToEmbedded() { Session sess = openSession(); try { final Transaction trx = sess.beginTransaction(); try { PersonPair personPair = new PersonPair(new Person("PERSON NAME 1"), new Person("PERSON NAME 2")); sess.persist( new CodedPairHolder( "CODE", personPair ) ); sess.flush(); } finally { trx.rollback(); } } finally { sess.close(); } } @Override protected Class[] getAnnotatedClasses() { return new Class[]{ CodedPairSetHolder.class, CodedPairHolder.class, Person.class, PersonPair.class }; } }