summaryrefslogtreecommitdiff
path: root/dbaccess/qa/complex/dbaccess/SingleSelectQueryComposer.java
diff options
context:
space:
mode:
Diffstat (limited to 'dbaccess/qa/complex/dbaccess/SingleSelectQueryComposer.java')
-rwxr-xr-xdbaccess/qa/complex/dbaccess/SingleSelectQueryComposer.java33
1 files changed, 32 insertions, 1 deletions
diff --git a/dbaccess/qa/complex/dbaccess/SingleSelectQueryComposer.java b/dbaccess/qa/complex/dbaccess/SingleSelectQueryComposer.java
index f795b0a3cc17..bb3636100849 100755
--- a/dbaccess/qa/complex/dbaccess/SingleSelectQueryComposer.java
+++ b/dbaccess/qa/complex/dbaccess/SingleSelectQueryComposer.java
@@ -52,6 +52,7 @@ public class SingleSelectQueryComposer extends CRMBasedTestCase
{
return new String[]
{
+ "testSetCommand",
"testAttributes",
"testSubQueries",
"testParameters",
@@ -128,6 +129,31 @@ public class SingleSelectQueryComposer extends CRMBasedTestCase
log.println(" (results in " + (String) m_composer.getQuery() + ")");
}
+ /** tests setCommand of the composer
+ */
+ public void testSetCommand()
+ {
+ log.println("testing SingleSelectQueryComposer's setCommand");
+
+ try
+ {
+ final String table = "SELECT * FROM \"customers\"";
+ m_composer.setCommand("customers",CommandType.TABLE);
+ assure("setCommand/getQuery TABLE inconsistent", m_composer.getQuery().equals(table));
+
+ m_database.getDatabase().getDataSource().createQuery("set command test", "SELECT * FROM \"orders for customer\" \"a\", \"customers\" \"b\" WHERE \"a\".\"Product Name\" = \"b\".\"Name\"");
+ m_composer.setCommand("set command test",CommandType.QUERY);
+ assure("setCommand/getQuery QUERY inconsistent", m_composer.getQuery().equals(m_database.getDatabase().getDataSource().getQueryDefinition("set command test").getCommand()));
+
+ final String sql = "SELECT * FROM \"orders for customer\" WHERE \"Product Name\" = 'test'";
+ m_composer.setCommand(sql,CommandType.COMMAND);
+ assure("setCommand/getQuery COMMAND inconsistent", m_composer.getQuery().equals(sql));
+ }
+ catch (Exception e)
+ {
+ assure("Exception caught: " + e, false);
+ }
+ }
/** tests accessing attributes of the composer (order, filter, group by, having)
*/
public void testAttributes()
@@ -136,6 +162,11 @@ public class SingleSelectQueryComposer extends CRMBasedTestCase
try
{
+ log.println("check setElementaryQuery");
+ final String simpleQuery2 = "SELECT * FROM \"customers\" WHERE \"Name\" = 'oranges'";
+ m_composer.setElementaryQuery(simpleQuery2);
+ assure("setElementaryQuery/getQuery inconsistent", m_composer.getQuery().equals(simpleQuery2));
+
log.println("check setQuery");
final String simpleQuery = "SELECT * FROM \"customers\"";
m_composer.setQuery(simpleQuery);
@@ -260,7 +291,7 @@ public class SingleSelectQueryComposer extends CRMBasedTestCase
filter.addProperty("Type", PropertyAttribute.MAYBEVOID, Integer.valueOf(DataType.LONGVARCHAR));
final XPropertySet column = (XPropertySet) UnoRuntime.queryInterface(XPropertySet.class,filter);
- m_composer.appendFilterByColumn(column, true);
+ m_composer.appendFilterByColumn(column, true,SQLFilterOperator.LIKE);
assure("At least one row should exist",m_database.getConnection().createStatement().executeQuery(m_composer.getQuery()).next());
}