summaryrefslogtreecommitdiffstats
path: root/das-java/tags/1.0-incubating-beta2-rc1/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DynamicResultDescriptorTests.java
diff options
context:
space:
mode:
Diffstat (limited to 'das-java/tags/1.0-incubating-beta2-rc1/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DynamicResultDescriptorTests.java')
-rw-r--r--das-java/tags/1.0-incubating-beta2-rc1/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DynamicResultDescriptorTests.java351
1 files changed, 0 insertions, 351 deletions
diff --git a/das-java/tags/1.0-incubating-beta2-rc1/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DynamicResultDescriptorTests.java b/das-java/tags/1.0-incubating-beta2-rc1/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DynamicResultDescriptorTests.java
deleted file mode 100644
index d2535a2223..0000000000
--- a/das-java/tags/1.0-incubating-beta2-rc1/rdb/src/test/java/org/apache/tuscany/das/rdb/test/DynamicResultDescriptorTests.java
+++ /dev/null
@@ -1,351 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.tuscany.das.rdb.test;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.config.ConfigFactory;
-import org.apache.tuscany.das.rdb.config.ResultDescriptor;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class DynamicResultDescriptorTests extends DasTest {
-
- protected void setUp() throws Exception {
- super.setUp();
- new CustomerData(getAutoConnection()).refresh();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- /**
- * Set result descriptor on Command dynamically
- */
- public void testSetResultDescriptors() throws Exception {
- ConfigFactory factory = ConfigFactory.INSTANCE;
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Read a customer
- Command select = das.createCommand("SELECT ID, LASTNAME, ADDRESS FROM CUSTOMER WHERE CUSTOMER.ID = 1");
-
- List resultDescriptorList = new ArrayList();
- //as long as columnIndex is correct, order in ArrayList does not matter
- ResultDescriptor desc3 = factory.createResultDescriptor();
- desc3.setColumnIndex(3);
- desc3.setColumnName("ADDRESS");
- desc3.setColumnType("commonj.sdo.String");
- desc3.setTableName("CUSTOMER");
-
- ResultDescriptor desc1 = factory.createResultDescriptor();
- desc1.setColumnIndex(1);
- desc1.setColumnName("ID");
- desc1.setColumnType("commonj.sdo.Int");
- desc1.setTableName("CUSTOMER");
-
- ResultDescriptor desc2 = factory.createResultDescriptor();
- desc2.setColumnIndex(2);
- desc2.setColumnName("LASTNAME");
- desc2.setColumnType("commonj.sdo.String");
- desc2.setTableName("CUSTOMER");
-
- resultDescriptorList.add(desc3);
- resultDescriptorList.add(desc1);
- resultDescriptorList.add(desc2);
-
- select.setResultDescriptors(resultDescriptorList);
- DataObject root = select.executeQuery();
- assertEquals(1, root.getList("CUSTOMER").size());
- }
-
- /**
- * Set a result descriptor on Command dynamically
- * and later replace it with another invalid one, and check failure
- */
- public void testReplaceResultDescriptors() throws Exception {
- ConfigFactory factory = ConfigFactory.INSTANCE;
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Read a customer
- Command select = das.createCommand("SELECT ID, LASTNAME, ADDRESS FROM CUSTOMER WHERE CUSTOMER.ID = 1");
-
- List resultDescriptorList = new ArrayList();
- //as long as columnIndex is correct, order in ArrayList does not matter
- ResultDescriptor desc3 = factory.createResultDescriptor();
- desc3.setColumnIndex(3);
- desc3.setColumnName("ADDRESS");
- desc3.setColumnType("commonj.sdo.String");
- desc3.setTableName("CUSTOMER");
-
- ResultDescriptor desc1 = factory.createResultDescriptor();
- desc1.setColumnIndex(1);
- desc1.setColumnName("ID");
- desc1.setColumnType("commonj.sdo.Int");
- desc1.setTableName("CUSTOMER");
-
- ResultDescriptor desc2 = factory.createResultDescriptor();
- desc2.setColumnIndex(2);
- desc2.setColumnName("LASTNAME");
- desc2.setColumnType("commonj.sdo.String");
- desc2.setTableName("CUSTOMER");
-
- resultDescriptorList.add(desc3);
- resultDescriptorList.add(desc1);
- resultDescriptorList.add(desc2);
-
- select.setResultDescriptors(resultDescriptorList);
- DataObject root = select.executeQuery();
- assertEquals(1, root.getList("CUSTOMER").size());
-
- //Now use invalid one
- resultDescriptorList.clear();
-
- desc3.setColumnIndex(3);
- desc3.setColumnName("ADDRESS");
- desc3.setColumnType("commonj.sdo.Int");//incompatible type
- desc3.setTableName("CUSTOMER");
-
- desc1.setColumnIndex(1);
- desc1.setColumnName("ID");
- desc1.setColumnType("commonj.sdo.Int");
- desc1.setTableName("CUSTOMER");
-
- desc2 = factory.createResultDescriptor();
- desc2.setColumnIndex(2);
- desc2.setColumnName("LASTNAME");
- desc2.setColumnType("commonj.sdo.String");
- desc2.setTableName("CUSTOMER");
-
- resultDescriptorList.add(desc3);
- resultDescriptorList.add(desc2);
- resultDescriptorList.add(desc1);
-
- select.setResultDescriptors(resultDescriptorList);
- try{
- root = select.executeQuery();
- fail("Expected exception");
- }catch(Exception e){
- assertTrue(e instanceof ClassCastException);
- }
- }
-
- /**
- * Set result descriptor on Command dynamically
- * , overriding the one set from static config.
- */
- public void testOverrideResultDescriptorsFromConfig() throws Exception {
- ConfigFactory factory = ConfigFactory.INSTANCE;
- DAS das = DAS.FACTORY.createDAS(getConfig("customerMappingWithResultDescriptor.xml"), getConnection());
- Command select = das.getCommand("testSelectCustomer");
- DataObject root = select.executeQuery();
- List custList = root.getList("CUSTOMER");
- assertEquals("Williams", ((DataObject)custList.get(0)).getString("LASTNAME"));
-
- List resultDescriptorList = new ArrayList();
-
- ResultDescriptor desc3 = factory.createResultDescriptor();
- desc3.setColumnIndex(3);
- desc3.setColumnName("ADDRESS");
- desc3.setColumnType("commonj.sdo.Int");//incompatible type
- desc3.setTableName("CUSTOMER");
-
- ResultDescriptor desc1 = factory.createResultDescriptor();
- desc1.setColumnIndex(1);
- desc1.setColumnName("ID");
- desc1.setColumnType("commonj.sdo.Int");
- desc1.setTableName("CUSTOMER");
-
- ResultDescriptor desc2 = factory.createResultDescriptor();
- desc2.setColumnIndex(2);
- desc2.setColumnName("LASTNAME");
- desc2.setColumnType("commonj.sdo.String");
- desc2.setTableName("CUSTOMER");
-
- resultDescriptorList.add(desc3);
- resultDescriptorList.add(desc1);
- resultDescriptorList.add(desc2);
-
- select.setResultDescriptors(resultDescriptorList);
- try{
- select.executeQuery();
- fail("Expected exception");
- }catch(Exception e){
- assertTrue(e instanceof ClassCastException);
- }
- }
-
- /**
- * Set null result descriptor on Command dynamically
- */
- public void testNullResultDescriptors() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Read a customer
- Command select = das.createCommand("SELECT ID, LASTNAME, ADDRESS FROM CUSTOMER WHERE CUSTOMER.ID = 1");
-
- List resultDescriptorList = null;
-
- try{
- select.setResultDescriptors(resultDescriptorList);
-
- select.executeQuery();
- this.assertTrue("Derby has DBMS metadata, so it will be used", true);
- }catch(RuntimeException e){
- fail("Expected to succeed with no exception");
- }
- }
-
- /**
- * Set -ve columnIndex in result descriptor on Command dynamically
- * Set will not be sorted and Type mismatch wi (Int and String for ID)
- * will throw exception
- */
- public void testNegativeIndexResultDescriptors() throws Exception {
- ConfigFactory factory = ConfigFactory.INSTANCE;
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Read a customer
- Command select = das.createCommand("SELECT ID, LASTNAME, ADDRESS FROM CUSTOMER WHERE CUSTOMER.ID = 1");
-
- List resultDescriptorList = new ArrayList();
-
- ResultDescriptor desc3 = factory.createResultDescriptor();
- desc3.setColumnIndex(-3);//invalid
- desc3.setColumnName("ADDRESS");
- desc3.setColumnType("commonj.sdo.String");
- desc3.setTableName("CUSTOMER");
-
- ResultDescriptor desc1 = factory.createResultDescriptor();
- desc1.setColumnIndex(1);
- desc1.setColumnName("ID");
- desc1.setColumnType("commonj.sdo.Int");
- desc1.setTableName("CUSTOMER");
-
- ResultDescriptor desc2 = factory.createResultDescriptor();
- desc2.setColumnIndex(2);
- desc2.setColumnName("LASTNAME");
- desc2.setColumnType("commonj.sdo.String");
- desc2.setTableName("CUSTOMER");
-
- resultDescriptorList.add(desc3);
- resultDescriptorList.add(desc1);
- resultDescriptorList.add(desc2);
-
- try{
- select.setResultDescriptors(resultDescriptorList);
-
- select.executeQuery();
- fail("Expected exception");
- }catch(RuntimeException e){
- assertTrue("Exception as sorting wil not happen due to -ve columnIndex", true);
- }
- }
-
- /**
- * Set matching columnIndices in result descriptor on Command dynamically
- */
- public void testMatchingIndexResultDescriptor() throws Exception {
- ConfigFactory factory = ConfigFactory.INSTANCE;
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Read a customer
- Command select = das.createCommand("SELECT ID, LASTNAME, ADDRESS FROM CUSTOMER WHERE CUSTOMER.ID = 1");
-
- List resultDescriptorList = new ArrayList();
-
- ResultDescriptor desc3 = factory.createResultDescriptor();
- desc3.setColumnIndex(1);//two times index is 1
- desc3.setColumnName("ADDRESS");
- desc3.setColumnType("commonj.sdo.String");
- desc3.setTableName("CUSTOMER");
-
- ResultDescriptor desc1 = factory.createResultDescriptor();
- desc1.setColumnIndex(1);
- desc1.setColumnName("ID");
- desc1.setColumnType("commonj.sdo.Int");
- desc1.setTableName("CUSTOMER");
-
- ResultDescriptor desc2 = factory.createResultDescriptor();
- desc2.setColumnIndex(2);
- desc2.setColumnName("LASTNAME");
- desc2.setColumnType("commonj.sdo.String");
- desc2.setTableName("CUSTOMER");
-
- resultDescriptorList.add(desc3);
- resultDescriptorList.add(desc1);
- resultDescriptorList.add(desc2);
-
- try{
- select.setResultDescriptors(resultDescriptorList);
-
- select.executeQuery();
- fail("Expected exception");
- }catch(RuntimeException e){
- assertTrue(e.getMessage().indexOf("Two columns in Result Descriptor can not have same index")!= -1);
- }
- }
-
- public void testAddRemoveResultDescriptor() throws Exception {
- ConfigFactory factory = ConfigFactory.INSTANCE;
-
- ResultDescriptor desc3 = factory.createResultDescriptor();
- desc3.setColumnIndex(3);//two times index is 1
- desc3.setColumnName("ADDRESS");
- desc3.setColumnType("commonj.sdo.String");
- desc3.setTableName("CUSTOMER");
-
- ResultDescriptor desc1 = factory.createResultDescriptor();
- desc1.setColumnIndex(1);
- desc1.setColumnName("ID");
- desc1.setColumnType("commonj.sdo.Int");
- desc1.setTableName("CUSTOMER");
-
- ResultDescriptor desc2 = factory.createResultDescriptor();
- desc2.setColumnIndex(2);
- desc2.setColumnName("LASTNAME");
- desc2.setColumnType("commonj.sdo.String");
- desc2.setTableName("CUSTOMER");
-
- DAS das = DAS.FACTORY.createDAS(getConnection());
- // Read a customer
- Command select = das.createCommand("SELECT ID, LASTNAME, ADDRESS FROM CUSTOMER WHERE CUSTOMER.ID = 1");
- select.addResultDescriptor(desc3);
- select.addResultDescriptor(desc1);
- select.addResultDescriptor(desc2);
- //select.printResultDescriptors(System.out);
- assertEquals(1, ((ResultDescriptor)select.getResultDescriptors().get(0)).getColumnIndex());
- assertEquals(2, ((ResultDescriptor)select.getResultDescriptors().get(1)).getColumnIndex());
- assertEquals(3, ((ResultDescriptor)select.getResultDescriptors().get(2)).getColumnIndex());
-
- select.removeResultDescriptor(2);
- //select.printResultDescriptors(System.out);
- assertEquals(1, ((ResultDescriptor)select.getResultDescriptors().get(0)).getColumnIndex());
- assertEquals(3, ((ResultDescriptor)select.getResultDescriptors().get(1)).getColumnIndex());
-
- select.removeResultDescriptor(desc3);
- //select.printResultDescriptors(System.out);
- assertEquals(1, ((ResultDescriptor)select.getResultDescriptors().get(0)).getColumnIndex());
-
- select.addResultDescriptor(null);
- select.removeResultDescriptor(null);
- //select.printResultDescriptors(System.out);
- assertEquals(1, ((ResultDescriptor)select.getResultDescriptors().get(0)).getColumnIndex());
- }
-}