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 2010/06/05 03:09:20 UTC
svn commit: r951629 - in
/cayenne/main/trunk/build-tools/cayenne-test-utilities/src/main/java/org/apache/cayenne/test:
DBHelper.java TableHelper.java
Author: aadamchik
Date: Sat Jun 5 01:09:19 2010
New Revision: 951629
URL: http://svn.apache.org/viewvc?rev=951629&view=rev
Log:
adding 'select' to the test utils
Modified:
cayenne/main/trunk/build-tools/cayenne-test-utilities/src/main/java/org/apache/cayenne/test/DBHelper.java
cayenne/main/trunk/build-tools/cayenne-test-utilities/src/main/java/org/apache/cayenne/test/TableHelper.java
Modified: cayenne/main/trunk/build-tools/cayenne-test-utilities/src/main/java/org/apache/cayenne/test/DBHelper.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/build-tools/cayenne-test-utilities/src/main/java/org/apache/cayenne/test/DBHelper.java?rev=951629&r1=951628&r2=951629&view=diff
==============================================================================
--- cayenne/main/trunk/build-tools/cayenne-test-utilities/src/main/java/org/apache/cayenne/test/DBHelper.java (original)
+++ cayenne/main/trunk/build-tools/cayenne-test-utilities/src/main/java/org/apache/cayenne/test/DBHelper.java Sat Jun 5 01:09:19 2010
@@ -42,6 +42,37 @@ public class DBHelper {
}
/**
+ * Selects a single row.
+ */
+ public Object[] select(String table, final String[] columns) throws SQLException {
+
+ if (columns.length == 0) {
+ throw new IllegalArgumentException("No columns");
+ }
+
+ StringBuilder sql = new StringBuilder("select ");
+ sql.append(columns[0]);
+ for (int i = 1; i < columns.length; i++) {
+ sql.append(", ").append(columns[i]);
+ }
+ sql.append(" from ").append(table);
+
+ return new RowTemplate<Object[]>(this) {
+
+ @Override
+ Object[] readRow(ResultSet rs, String sql) throws SQLException {
+
+ Object[] result = new Object[columns.length];
+ for (int i = 1; i <= result.length; i++) {
+ result[i - 1] = rs.getObject(i);
+ }
+
+ return result;
+ }
+ }.execute(sql.toString());
+ }
+
+ /**
* Inserts a single row.
*/
public void insert(String table, String[] columns, Object[] values)
Modified: cayenne/main/trunk/build-tools/cayenne-test-utilities/src/main/java/org/apache/cayenne/test/TableHelper.java
URL: http://svn.apache.org/viewvc/cayenne/main/trunk/build-tools/cayenne-test-utilities/src/main/java/org/apache/cayenne/test/TableHelper.java?rev=951629&r1=951628&r2=951629&view=diff
==============================================================================
--- cayenne/main/trunk/build-tools/cayenne-test-utilities/src/main/java/org/apache/cayenne/test/TableHelper.java (original)
+++ cayenne/main/trunk/build-tools/cayenne-test-utilities/src/main/java/org/apache/cayenne/test/TableHelper.java Sat Jun 5 01:09:19 2010
@@ -47,6 +47,9 @@ public class TableHelper {
return this;
}
+ /**
+ * Sets columns that will be implicitly used in subsequent inserts and selects.
+ */
public TableHelper setColumns(String... columns) {
this.columns = columns;
return this;
@@ -66,6 +69,13 @@ public class TableHelper {
return this;
}
+ /**
+ * Selects a single row from the mapped table.
+ */
+ public Object[] select() throws SQLException {
+ return dbHelper.select(tableName, columns);
+ }
+
public int getRowCount() throws SQLException {
return dbHelper.getRowCount(tableName);
}