[hibernate-commits] Hibernate SVN: r19225 - in core/trunk/testsuite/src/test/java/org/hibernate/test: namingstrategy and 1 other directory.

hibernate-commits at lists.jboss.org hibernate-commits at lists.jboss.org
Tue Apr 13 12:31:22 EDT 2010


Author: epbernard
Date: 2010-04-13 12:31:21 -0400 (Tue, 13 Apr 2010)
New Revision: 19225

Added:
   core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/
   core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/Customers.hbm.xml
   core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/Customers.java
   core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/NamingStrategyTest.java
   core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/TestNamingStrategy.java
Log:
HHH-4077 add test for naming strategy in hbm files

Added: core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/Customers.hbm.xml
===================================================================
--- core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/Customers.hbm.xml	                        (rev 0)
+++ core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/Customers.hbm.xml	2010-04-13 16:31:21 UTC (rev 19225)
@@ -0,0 +1,11 @@
+<?xml version="1.0"?>
+<!DOCTYPE hibernate-mapping PUBLIC
+        "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
+        "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
+<hibernate-mapping
+        package="org.hibernate.test.namingstrategy">
+    <class name="Customers">
+        <id name="id" column="id" type="int"/>
+        <property name="specified_column" column="specified_column"/>
+    </class>
+</hibernate-mapping>
\ No newline at end of file

Added: core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/Customers.java
===================================================================
--- core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/Customers.java	                        (rev 0)
+++ core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/Customers.java	2010-04-13 16:31:21 UTC (rev 19225)
@@ -0,0 +1,25 @@
+package org.hibernate.test.namingstrategy;
+
+/**
+ * @author Emmanuel Bernard
+ */
+public class Customers implements java.io.Serializable {
+	private int id;
+	private String specified_column;
+
+	public int getId() {
+		return id;
+	}
+
+	public void setId(int id) {
+		this.id = id;
+	}
+
+	public String getSpecified_column() {
+		return specified_column;
+	}
+
+	public void setSpecified_column(String specified_column) {
+		this.specified_column = specified_column;
+	}
+}

Added: core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/NamingStrategyTest.java
===================================================================
--- core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/NamingStrategyTest.java	                        (rev 0)
+++ core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/NamingStrategyTest.java	2010-04-13 16:31:21 UTC (rev 19225)
@@ -0,0 +1,34 @@
+package org.hibernate.test.namingstrategy;
+
+import org.hibernate.cfg.Configuration;
+import org.hibernate.cfg.Environment;
+import org.hibernate.junit.functional.FunctionalTestCase;
+import org.hibernate.mapping.Column;
+import org.hibernate.mapping.PersistentClass;
+
+/**
+ * @author Emmanuel Bernard
+ */
+public class NamingStrategyTest extends FunctionalTestCase {
+	public void testCorrectDatabase() {
+		PersistentClass classMapping = getCfg().getClassMapping( Customers.class.getName() );
+		Column stateColumn = (Column) classMapping.getProperty( "specified_column" ).getColumnIterator().next();
+		assertEquals( "CN_specified_column", stateColumn.getName() );
+	}
+
+	@Override
+	public void configure(Configuration cfg) {
+		super.configure( cfg );
+		cfg.setNamingStrategy( new TestNamingStrategy() );
+	}
+
+	public NamingStrategyTest(String string) {
+		super( string );
+	}
+
+	public String[] getMappings() {
+		return new String[] {
+				"namingstrategy/Customers.hbm.xml"
+		};
+	}
+}

Added: core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/TestNamingStrategy.java
===================================================================
--- core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/TestNamingStrategy.java	                        (rev 0)
+++ core/trunk/testsuite/src/test/java/org/hibernate/test/namingstrategy/TestNamingStrategy.java	2010-04-13 16:31:21 UTC (rev 19225)
@@ -0,0 +1,21 @@
+package org.hibernate.test.namingstrategy;
+
+import org.hibernate.cfg.DefaultNamingStrategy;
+
+/**
+ * @author Emmanuel Bernard
+ */
+public class TestNamingStrategy extends DefaultNamingStrategy {
+	public String propertyToColumnName(String propertyName) {
+		return "PTCN_" + propertyName;
+	}
+
+	public String columnName(String columnName) {
+		return "CN_" + columnName;
+	}
+
+	public String logicalColumnName(String columnName, String
+			propertyName) {
+		return "LCN_" + super.logicalColumnName( columnName, propertyName );
+	}
+}



More information about the hibernate-commits mailing list