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 2007/07/01 12:39:14 UTC

svn commit: r552272 - /cayenne/main/trunk/framework/cayenne-jdk1.4-unpublished/src/test/java/org/apache/cayenne/access/DataContextSQLTemplateTest.java

Author: aadamchik
Date: Sun Jul  1 03:39:13 2007
New Revision: 552272

URL: http://svn.apache.org/viewvc?view=rev&rev=552272
Log:
frontbase testing
(frontbase seems more strict with aggregate queries, so adding a special SQLTemplate syntax for FrontBase; also "C" seems to be a keyword on Frontbase, so I couldn't use it as a column alias) 

Modified:
    cayenne/main/trunk/framework/cayenne-jdk1.4-unpublished/src/test/java/org/apache/cayenne/access/DataContextSQLTemplateTest.java

Modified: cayenne/main/trunk/framework/cayenne-jdk1.4-unpublished/src/test/java/org/apache/cayenne/access/DataContextSQLTemplateTest.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/framework/cayenne-jdk1.4-unpublished/src/test/java/org/apache/cayenne/access/DataContextSQLTemplateTest.java?view=diff&rev=552272&r1=552271&r2=552272
==============================================================================
--- cayenne/main/trunk/framework/cayenne-jdk1.4-unpublished/src/test/java/org/apache/cayenne/access/DataContextSQLTemplateTest.java (original)
+++ cayenne/main/trunk/framework/cayenne-jdk1.4-unpublished/src/test/java/org/apache/cayenne/access/DataContextSQLTemplateTest.java Sun Jul  1 03:39:13 2007
@@ -31,6 +31,7 @@
 import org.apache.cayenne.DataObjectUtils;
 import org.apache.cayenne.DataRow;
 import org.apache.cayenne.ObjectContext;
+import org.apache.cayenne.dba.frontbase.FrontBaseAdapter;
 import org.apache.cayenne.map.DataMap;
 import org.apache.cayenne.query.SQLResultSetMapping;
 import org.apache.cayenne.query.SQLTemplate;
@@ -51,52 +52,57 @@
 
     public void testSQLResultSetMappingScalar() throws Exception {
         createTestData("testSQLResultSetMappingScalar");
-        
-        String sql = "SELECT count(1) AS C FROM ARTIST";
-        
+
+        String sql = "SELECT count(1) AS X FROM ARTIST";
+
         DataMap map = getDomain().getMap("testmap");
         SQLTemplate query = new SQLTemplate(map, sql);
+        query.setTemplate(
+                FrontBaseAdapter.class.getName(),
+                "SELECT COUNT(ARTIST_ID) X FROM ARTIST");
         query.setColumnNamesCapitalization(SQLTemplate.UPPERCASE_COLUMN_NAMES);
-        
+
         SQLResultSetMapping rsMap = new SQLResultSetMapping();
-        rsMap.addColumnResult("C");
+        rsMap.addColumnResult("X");
         query.setResultSetMapping(rsMap);
-        
+
         List objects = createDataContext().performQuery(query);
         assertEquals(1, objects.size());
-        
+
         Object o = objects.get(0);
-        assertTrue(o instanceof Number);
+        assertTrue("Expected Number: " + o, o instanceof Number);
         assertEquals(4, ((Number) o).intValue());
     }
-    
+
     public void testSQLResultSetMappingScalarArray() throws Exception {
         createTestData("testSQLResultSetMappingScalar");
-        
-        String sql = "SELECT count(1) AS C, 77 AS D FROM ARTIST";
-        
+
+        String sql = "SELECT count(1) AS X, 77 AS Y FROM ARTIST";
+
         DataMap map = getDomain().getMap("testmap");
         SQLTemplate query = new SQLTemplate(map, sql);
+        query.setTemplate(
+                FrontBaseAdapter.class.getName(),
+                "SELECT COUNT(ARTIST_ID) X, 77 Y FROM ARTIST GROUP BY Y");
         query.setColumnNamesCapitalization(SQLTemplate.UPPERCASE_COLUMN_NAMES);
-        
+
         SQLResultSetMapping rsMap = new SQLResultSetMapping();
-        rsMap.addColumnResult("C");
-        rsMap.addColumnResult("D");
+        rsMap.addColumnResult("X");
+        rsMap.addColumnResult("Y");
         query.setResultSetMapping(rsMap);
-        
+
         List objects = createDataContext().performQuery(query);
         assertEquals(1, objects.size());
-        
+
         Object o = objects.get(0);
         assertTrue(o instanceof Object[]);
-        
+
         Object[] row = (Object[]) o;
         assertEquals(2, row.length);
-        
+
         assertEquals(4, ((Number) row[0]).intValue());
         assertEquals(77, ((Number) row[1]).intValue());
     }
-
 
     public void testColumnNamesCapitalization() throws Exception {
         getAccessStack().createTestData(DataContextCase.class, "testArtists", null);