[hibernate-commits] Hibernate SVN: r19574 - in core/trunk/testsuite/src/test/java/org/hibernate/test: hql and 1 other directories.

hibernate-commits at lists.jboss.org hibernate-commits at lists.jboss.org
Fri May 21 00:26:22 EDT 2010


Author: steve.ebersole at jboss.com
Date: 2010-05-21 00:26:21 -0400 (Fri, 21 May 2010)
New Revision: 19574

Modified:
   core/trunk/testsuite/src/test/java/org/hibernate/test/compositeelement/Child.java
   core/trunk/testsuite/src/test/java/org/hibernate/test/compositeelement/CompositeElementTest.java
   core/trunk/testsuite/src/test/java/org/hibernate/test/compositeelement/Parent.hbm.xml
   core/trunk/testsuite/src/test/java/org/hibernate/test/hql/ASTParserLoadingTest.java
   core/trunk/testsuite/src/test/java/org/hibernate/test/sql/hand/query/NativeSQLQueriesTest.java
Log:
account for more failures on h2 (only 1 more!)

Modified: core/trunk/testsuite/src/test/java/org/hibernate/test/compositeelement/Child.java
===================================================================
--- core/trunk/testsuite/src/test/java/org/hibernate/test/compositeelement/Child.java	2010-05-20 22:13:26 UTC (rev 19573)
+++ core/trunk/testsuite/src/test/java/org/hibernate/test/compositeelement/Child.java	2010-05-21 04:26:21 UTC (rev 19574)
@@ -9,7 +9,8 @@
 	private String bio;
 	private Parent parent;
 	private int bioLength;
-	private double heightInches;
+	private int position;
+
 	Child() {}
 	public Child(String name) {
 		this.name = name;
@@ -44,12 +45,15 @@
 	public void setBio(String bio) {
 		this.bio = bio;
 	}
-	public double getHeightInches() {
-		return heightInches;
+
+	public int getPosition() {
+		return position;
 	}
-	public void setHeightInches(double heightInches) {
-		this.heightInches = heightInches;
-	}	
+
+	public void setPosition(int position) {
+		this.position = position;
+	}
+
 	public int hashCode() {
 		return name.hashCode();
 	}

Modified: core/trunk/testsuite/src/test/java/org/hibernate/test/compositeelement/CompositeElementTest.java
===================================================================
--- core/trunk/testsuite/src/test/java/org/hibernate/test/compositeelement/CompositeElementTest.java	2010-05-20 22:13:26 UTC (rev 19573)
+++ core/trunk/testsuite/src/test/java/org/hibernate/test/compositeelement/CompositeElementTest.java	2010-05-21 04:26:21 UTC (rev 19574)
@@ -88,47 +88,37 @@
 	}
 	
 	public void testCustomColumnReadAndWrite() {
-		final double HEIGHT_INCHES = 49;
-		final double HEIGHT_CENTIMETERS = HEIGHT_INCHES * 2.54d;
-
 		Session s = openSession();
 		Transaction t = s.beginTransaction();
 		Child c = new Child( "Child One" );
-		c.setHeightInches(HEIGHT_INCHES);
+		c.setPosition( 1 );
 		Parent p = new Parent( "Parent" );
 		p.getChildren().add( c );
 		c.setParent( p );
 		s.save( p );
 		s.flush();
 
-		// Test value conversion during insert
-		Double heightViaSql = (Double)s.createSQLQuery("select height_centimeters from parentchild c where c.name='Child One'")
-			.uniqueResult();
-		assertEquals(HEIGHT_CENTIMETERS, heightViaSql, 0.01d);
-		
-		// Test projection		
-		Double heightViaHql = (Double)s.createQuery("select c.heightInches from Parent p join p.children c where p.name='Parent'")
-			.uniqueResult();
-		assertEquals(HEIGHT_INCHES, heightViaHql, 0.01d);
-		
-		// Test entity load via criteria
+		Integer sqlValue = (Integer) s.createSQLQuery("select child_position from parentchild c where c.name='Child One'")
+				.uniqueResult();
+		assertEquals( 0, sqlValue.intValue() );
+
+		Integer hqlValue = (Integer)s.createQuery("select c.position from Parent p join p.children c where p.name='Parent'")
+				.uniqueResult();
+		assertEquals( 1, hqlValue.intValue() );
+
 		p = (Parent)s.createCriteria(Parent.class).add(Restrictions.eq("name", "Parent")).uniqueResult();
 		c = (Child)p.getChildren().iterator().next();
-		assertEquals(HEIGHT_INCHES, c.getHeightInches(), 0.01d);
-		
-		// Test predicate and entity load via HQL
-		p = (Parent)s.createQuery("from Parent p join p.children c where c.heightInches between ? and ?")
-			.setDouble(0, HEIGHT_INCHES - 0.01d)
-			.setDouble(1, HEIGHT_INCHES + 0.01d)
-			.uniqueResult();
+		assertEquals( 1, c.getPosition() );
+
+		p = (Parent)s.createQuery("from Parent p join p.children c where c.position = 1").uniqueResult();
 		c = (Child)p.getChildren().iterator().next();
-		assertEquals(HEIGHT_INCHES, c.getHeightInches(), 0.01d);
-		
-		// Test update
-		c.setHeightInches(1);
+		assertEquals( 1, c.getPosition() );
+
+		c.setPosition( 2 );
 		s.flush();
-		heightViaSql = (Double)s.createSQLQuery("select height_centimeters from parentchild c where c.name='Child One'").uniqueResult();
-		assertEquals(2.54d, heightViaSql, 0.01d);
+		sqlValue = (Integer) s.createSQLQuery("select child_position from parentchild c where c.name='Child One'")
+				.uniqueResult();
+		assertEquals( 1, sqlValue.intValue() );
 		s.delete( p );
 		t.commit();
 		s.close();

Modified: core/trunk/testsuite/src/test/java/org/hibernate/test/compositeelement/Parent.hbm.xml
===================================================================
--- core/trunk/testsuite/src/test/java/org/hibernate/test/compositeelement/Parent.hbm.xml	2010-05-20 22:13:26 UTC (rev 19573)
+++ core/trunk/testsuite/src/test/java/org/hibernate/test/compositeelement/Parent.hbm.xml	2010-05-21 04:26:21 UTC (rev 19574)
@@ -28,11 +28,11 @@
 				<property name="name" not-null="true"/>
 				<property name="bio"/>
 				<property name="bioLength" formula="length(bio)"/>
-				<property name="heightInches">
-					<column name="height_centimeters" 
-						not-null="true" 
-						read="height_centimeters / 2.54" 
-						write="? * 2.54"/>
+				<property name="position">
+					<column name="child_position"
+						not-null="true"
+						read="child_position + 1"
+						write="? - 1"/>
 				</property>				
 			</composite-element>
 		</set>

Modified: core/trunk/testsuite/src/test/java/org/hibernate/test/hql/ASTParserLoadingTest.java
===================================================================
--- core/trunk/testsuite/src/test/java/org/hibernate/test/hql/ASTParserLoadingTest.java	2010-05-20 22:13:26 UTC (rev 19573)
+++ core/trunk/testsuite/src/test/java/org/hibernate/test/hql/ASTParserLoadingTest.java	2010-05-21 04:26:21 UTC (rev 19574)
@@ -26,6 +26,7 @@
 import org.hibernate.cfg.Configuration;
 import org.hibernate.cfg.Environment;
 import org.hibernate.dialect.DB2Dialect;
+import org.hibernate.dialect.H2Dialect;
 import org.hibernate.dialect.HSQLDialect;
 import org.hibernate.dialect.IngresDialect;
 import org.hibernate.dialect.MySQLDialect;
@@ -1370,9 +1371,11 @@
 		Object bodyWeight = s.createQuery("select cast(bodyWeight as integer) from Animal").uniqueResult();
 		assertTrue( Integer.class.isInstance( bodyWeight ) );
 		assertEquals( 12, bodyWeight );
+
 		bodyWeight = s.createQuery("select cast(bodyWeight as big_decimal) from Animal").uniqueResult();
 		assertTrue( BigDecimal.class.isInstance( bodyWeight ) );
-		assertEquals( BigDecimal.valueOf( a.getBodyWeight() ), bodyWeight );
+		assertEquals( a.getBodyWeight(), ( (BigDecimal) bodyWeight ).floatValue() );
+
 		Object literal = s.createQuery("select cast(10000000 as big_integer) from Animal").uniqueResult();
 		assertTrue( BigInteger.class.isInstance( literal ) );
 		assertEquals( BigInteger.valueOf( 10000000 ), literal );

Modified: core/trunk/testsuite/src/test/java/org/hibernate/test/sql/hand/query/NativeSQLQueriesTest.java
===================================================================
--- core/trunk/testsuite/src/test/java/org/hibernate/test/sql/hand/query/NativeSQLQueriesTest.java	2010-05-20 22:13:26 UTC (rev 19573)
+++ core/trunk/testsuite/src/test/java/org/hibernate/test/sql/hand/query/NativeSQLQueriesTest.java	2010-05-21 04:26:21 UTC (rev 19574)
@@ -15,6 +15,7 @@
 import org.hibernate.Query;
 import org.hibernate.Session;
 import org.hibernate.Transaction;
+import org.hibernate.dialect.H2Dialect;
 import org.hibernate.util.ArrayHelper;
 import org.hibernate.test.sql.hand.Organization;
 import org.hibernate.test.sql.hand.Person;
@@ -112,6 +113,11 @@
 		//      there is actually an exception thrown, but it is the database
 		//      throwing a sql exception because the SQL gets passed
 		//      "un-processed"...
+		//
+		// Oddly, H2 accepts this query.
+		if ( H2Dialect.class.isInstance( getDialect() ) ) {
+			return;
+		}
 		Session s = openSession();
 		s.beginTransaction();
 		try {



More information about the hibernate-commits mailing list