[hibernate-commits] Hibernate SVN: r19086 - core/branches/Branch_3_3/testsuite/src/test/java/org/hibernate/test/criteria.
hibernate-commits at lists.jboss.org
hibernate-commits at lists.jboss.org
Tue Mar 23 03:14:24 EDT 2010
Author: stliu
Date: 2010-03-23 03:14:24 -0400 (Tue, 23 Mar 2010)
New Revision: 19086
Modified:
core/branches/Branch_3_3/testsuite/src/test/java/org/hibernate/test/criteria/LikeTest.java
Log:
HHH-2997 LikeExpression case sensitive not working properly
Modified: core/branches/Branch_3_3/testsuite/src/test/java/org/hibernate/test/criteria/LikeTest.java
===================================================================
--- core/branches/Branch_3_3/testsuite/src/test/java/org/hibernate/test/criteria/LikeTest.java 2010-03-23 05:24:30 UTC (rev 19085)
+++ core/branches/Branch_3_3/testsuite/src/test/java/org/hibernate/test/criteria/LikeTest.java 2010-03-23 07:14:24 UTC (rev 19086)
@@ -29,6 +29,7 @@
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.criterion.Restrictions;
+import org.hibernate.dialect.MySQLDialect;
import org.hibernate.junit.functional.FunctionalTestCase;
@@ -42,75 +43,50 @@
return new String[]{"criteria/TestObject.hbm.xml"};
}
public void testLike(){
- Session session=openSession();
+ Session session = openSession();
+ Transaction tx = session.beginTransaction();
+ TestObject obj = new TestObject();
String uniq = "uniq" + System.currentTimeMillis();
-
- // insert object
- try {
- Transaction tx = session.beginTransaction();
-
-
- TestObject obj = new TestObject();
- obj.setText("XyZ " + uniq + " blablabla");
-
- session.saveOrUpdate(obj);
- session.flush();
- tx.commit();
- } finally {
- session.close();
-
- }
+ obj.setText( "XyZ " + uniq + " blablabla" );
+ session.save( obj );
+ session.flush();
+ tx.commit();
+ session.close();
String pattern = "XyZ " + uniq + "%";
-
// retrieve object - case sensitive - works ok
session = openSession();
- try {
- List objects = session.createCriteria(TestObject.class)
- .add(Restrictions.like("text", pattern))
- .list();
-
- assertEquals(1, objects.size());
- } finally {
- session.close();
- }
+ tx = session.beginTransaction();
+ List objects = session.createCriteria( TestObject.class ).add(
+ Restrictions.like( "text", pattern ) ).list();
+ assertEquals( 1, objects.size() );
+ session.clear();
// retrieve object - case insensitive - works ok
- session = openSession();
- try {
- List objects = session.createCriteria(TestObject.class)
- .add(Restrictions.like("text", pattern).ignoreCase())
- .list();
-
- assertEquals(1, objects.size());
- } finally {
- session.close();
- }
+ objects = session.createCriteria( TestObject.class ).add(
+ Restrictions.like( "text", pattern ).ignoreCase() ).list();
-
- // retrieve object - case insensitive via custom expression - works ok
- session = openSession();
- try {
- List objects = session.createCriteria(TestObject.class)
- .add(StringExpression.stringExpression("text", pattern, true))
- .list();
-
- assertEquals(1, objects.size());
- } finally {
- session.close();
- }
+ assertEquals( 1, objects.size() );
+ session.clear();
+ if ( !( getDialect() instanceof MySQLDialect ) ) {
+ // retrieve object - case insensitive via custom expression - works
+ // ok
+ objects = session.createCriteria( TestObject.class ).add(
+ StringExpression.stringExpression( "text", pattern, true ) )
+ .list();
-
- // retrieve object - case sensitive via custom expression - not working
- session = openSession();
- try {
- List objects = session.createCriteria(TestObject.class)
- .add(StringExpression.stringExpression("text", pattern, false))
- .list();
-
- assertEquals(1, objects.size());
- } finally {
- session.close();
+ assertEquals( 1, objects.size() );
+ session.clear();
+
+ // retrieve object - case sensitive via custom expression - not
+ // working
+ objects = session.createCriteria( TestObject.class )
+ .add(
+ StringExpression.stringExpression( "text", pattern,
+ false ) ).list();
+ assertEquals( 1, objects.size() );
}
+ tx.rollback();
+ session.close();
}
}
More information about the hibernate-commits
mailing list