You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by aa...@apache.org on 2008/05/03 15:36:11 UTC

svn commit: r653077 - in /cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test: java/org/apache/cayenne/access/DataContextEJBQLConditionsTest.java resources/dml/access.DataContextEJBQLConditionsTest.xml

Author: aadamchik
Date: Sat May  3 06:36:10 2008
New Revision: 653077

URL: http://svn.apache.org/viewvc?rev=653077&view=rev
Log:
CAY-919  EJBQL Query with relational queries (<, <=, >, >=) are throwing exceptions
(testing...)

Modified:
    cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextEJBQLConditionsTest.java
    cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/dml/access.DataContextEJBQLConditionsTest.xml

Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextEJBQLConditionsTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextEJBQLConditionsTest.java?rev=653077&r1=653076&r2=653077&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextEJBQLConditionsTest.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/java/org/apache/cayenne/access/DataContextEJBQLConditionsTest.java Sat May  3 06:36:10 2008
@@ -18,6 +18,7 @@
  ****************************************************************/
 package org.apache.cayenne.access;
 
+import java.math.BigDecimal;
 import java.util.HashSet;
 import java.util.Iterator;
 import java.util.List;
@@ -42,7 +43,7 @@
 
         // TODO: andrus 02/25/2008 - fails on HSQLDB / succeeds on MySQL. HSQLDB error is
         // "Unresolved parameter type : as both operands of aritmetic operator in
-        
+
         // statement"
         // String ejbql = "SELECT p FROM Painting p WHERE p.estimatedPrice < (1 + - 4.0 *
         // - 1000.0)";
@@ -285,6 +286,32 @@
         assertTrue(ids.contains(33001l));
     }
 
+    public void testGreaterOrEquals() throws Exception {
+        createTestData("prepareGreaterThan");
+
+        String ejbql = "SELECT p FROM Painting p WHERE p.estimatedPrice >= :estimatedPrice";
+
+        ObjectContext context = createDataContext();
+
+        EJBQLQuery query = new EJBQLQuery(ejbql);
+        query.setParameter("estimatedPrice", new BigDecimal(4000));
+        List<?> objects = context.performQuery(query);
+        assertEquals(4, objects.size());
+    }
+
+    public void testLessOrEquals() throws Exception {
+        createTestData("prepareGreaterThan");
+
+        String ejbql = "SELECT p FROM Painting p WHERE p.estimatedPrice <= :estimatedPrice";
+
+        ObjectContext context = createDataContext();
+
+        EJBQLQuery query = new EJBQLQuery(ejbql);
+        query.setParameter("estimatedPrice", new BigDecimal(4000));
+        List<?> objects = context.performQuery(query);
+        assertEquals(2, objects.size());
+    }
+
     public void testCollectionNotMemberOfParameter() throws Exception {
         createTestData("prepareCollection");
 

Modified: cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/dml/access.DataContextEJBQLConditionsTest.xml
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/dml/access.DataContextEJBQLConditionsTest.xml?rev=653077&r1=653076&r2=653077&view=diff
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/dml/access.DataContextEJBQLConditionsTest.xml (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.5-unpublished/src/test/resources/dml/access.DataContextEJBQLConditionsTest.xml Sat May  3 06:36:10 2008
@@ -209,6 +209,18 @@
 		</constructor-arg>
 	</bean>
 	
+	<bean id="prepareGreaterThan" class="java.util.ArrayList">
+		<constructor-arg>
+			<list>
+				<ref bean="P1" />
+				<ref bean="P2" />
+				<ref bean="P3" />
+				<ref bean="P4" />
+				<ref bean="P5" />
+			</list>
+		</constructor-arg>
+	</bean>
+	
 	<bean id="prepareIn" class="java.util.ArrayList">
 		<constructor-arg>
 			<list>