[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