[hibernate-commits] Hibernate SVN: r17628 - core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity.
hibernate-commits at lists.jboss.org
hibernate-commits at lists.jboss.org
Tue Oct 6 04:18:12 EDT 2009
Author: epbernard
Date: 2009-10-06 04:18:12 -0400 (Tue, 06 Oct 2009)
New Revision: 17628
Added:
core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/FormalLastName.java
Modified:
core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/BasicHibernateAnnotationsTest.java
Log:
HHH-4232 add missing test
Modified: core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/BasicHibernateAnnotationsTest.java
===================================================================
--- core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/BasicHibernateAnnotationsTest.java 2009-10-06 08:15:27 UTC (rev 17627)
+++ core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/BasicHibernateAnnotationsTest.java 2009-10-06 08:18:12 UTC (rev 17628)
@@ -1,4 +1,27 @@
//$Id$
+/*
+ * Hibernate, Relational Persistence for Idiomatic Java
+ *
+ * Copyright (c) 2009, Red Hat, Inc. and/or its affiliates or third-party contributors as
+ * indicated by the @author tags or express copyright attribution
+ * statements applied by the authors. All third-party contributions are
+ * distributed under license by Red Hat, Inc.
+ *
+ * This copyrighted material is made available to anyone wishing to use, modify,
+ * copy, or redistribute it subject to the terms and conditions of the GNU
+ * Lesser General Public License, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this distribution; if not, write to:
+ * Free Software Foundation, Inc.
+ * 51 Franklin Street, Fifth Floor
+ * Boston, MA 02110-1301 USA
+ */
package org.hibernate.test.annotations.entity;
import java.math.BigDecimal;
@@ -143,19 +166,33 @@
}
- //Test import of TypeDefs from MappedSuperclass and
- //Embedded classes
+ /*
+ * Test import of TypeDefs from MappedSuperclass and
+ * Embedded classes.
+ * The classes 'Name' and 'FormalLastName' both embed the same
+ * component 'LastName'. This is to verify that processing the
+ * typedef defined in the component TWICE does not create any
+ * issues.
+ *
+ */
public void testImportTypeDefinitions() throws Exception {
+ LastName lastName = new LastName();
+ lastName.setName("reddy");
+
Name name = new Name();
name.setFirstName("SHARATH");
- LastName lastName = new LastName();
- lastName.setName("reddy");
name.setLastName(lastName);
+
+ FormalLastName formalName = new FormalLastName();
+ formalName.setLastName(lastName);
+ formalName.setDesignation("Mr");
+
Session s;
Transaction tx;
s = openSession();
tx = s.beginTransaction();
s.persist(name);
+ s.persist(formalName);
tx.commit();
s.close();
@@ -165,7 +202,12 @@
assertNotNull( name );
assertEquals( "sharath", name.getFirstName() );
assertEquals( "REDDY", name.getLastName().getName() );
+
+ formalName = (FormalLastName) s.get(FormalLastName.class, formalName.getId());
+ assertEquals( "REDDY", formalName.getLastName().getName() );
+
s.delete(name);
+ s.delete(formalName);
tx.commit();
s.close();
}
@@ -424,6 +466,7 @@
ZipCode.class,
Flight.class,
Name.class,
+ FormalLastName.class,
Car.class,
Peugot.class,
ContactDetails.class
Added: core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/FormalLastName.java
===================================================================
--- core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/FormalLastName.java (rev 0)
+++ core/trunk/annotations/src/test/java/org/hibernate/test/annotations/entity/FormalLastName.java 2009-10-06 08:18:12 UTC (rev 17628)
@@ -0,0 +1,71 @@
+//$Id: BasicHibernateAnnotationsTest.java 17531 2009-09-22 17:43:48Z epbernard $
+/*
+ * Hibernate, Relational Persistence for Idiomatic Java
+ *
+ * Copyright (c) 2009, Red Hat, Inc. and/or its affiliates or third-party contributors as
+ * indicated by the @author tags or express copyright attribution
+ * statements applied by the authors. All third-party contributions are
+ * distributed under license by Red Hat, Inc.
+ *
+ * This copyrighted material is made available to anyone wishing to use, modify,
+ * copy, or redistribute it subject to the terms and conditions of the GNU
+ * Lesser General Public License, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this distribution; if not, write to:
+ * Free Software Foundation, Inc.
+ * 51 Franklin Street, Fifth Floor
+ * Boston, MA 02110-1301 USA
+ */
+package org.hibernate.test.annotations.entity;
+
+import javax.persistence.Embedded;
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+
+/**
+ * @author Sharath Reddy
+ */
+ at Entity
+public class FormalLastName {
+
+ @Id
+ @GeneratedValue
+ private Integer id;
+
+ @Embedded
+ private LastName lastName;
+
+ private String designation; /* Mr/Mrs/Master */
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public LastName getLastName() {
+ return lastName;
+ }
+
+ public void setLastName(LastName lastName) {
+ this.lastName = lastName;
+ }
+
+ public String getDesignation() {
+ return designation;
+ }
+
+ public void setDesignation(String designation) {
+ this.designation = designation;
+ }
+
+}
More information about the hibernate-commits
mailing list