summaryrefslogtreecommitdiffstats
path: root/das-java/tags/1.0-incubating-beta2-rc1/rdb/src/test/java/org/apache/tuscany/das/rdb/test/NamedParameterTests.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/NamedParameterTests.java')
-rw-r--r--das-java/tags/1.0-incubating-beta2-rc1/rdb/src/test/java/org/apache/tuscany/das/rdb/test/NamedParameterTests.java248
1 files changed, 0 insertions, 248 deletions
diff --git a/das-java/tags/1.0-incubating-beta2-rc1/rdb/src/test/java/org/apache/tuscany/das/rdb/test/NamedParameterTests.java b/das-java/tags/1.0-incubating-beta2-rc1/rdb/src/test/java/org/apache/tuscany/das/rdb/test/NamedParameterTests.java
deleted file mode 100644
index 6de2447ead..0000000000
--- a/das-java/tags/1.0-incubating-beta2-rc1/rdb/src/test/java/org/apache/tuscany/das/rdb/test/NamedParameterTests.java
+++ /dev/null
@@ -1,248 +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.Iterator;
-import java.util.List;
-
-import org.apache.tuscany.das.rdb.Command;
-import org.apache.tuscany.das.rdb.ConfigHelper;
-import org.apache.tuscany.das.rdb.DAS;
-import org.apache.tuscany.das.rdb.config.Config;
-import org.apache.tuscany.das.rdb.config.ConfigFactory;
-import org.apache.tuscany.das.rdb.config.Create;
-import org.apache.tuscany.das.rdb.config.Delete;
-import org.apache.tuscany.das.rdb.config.Parameter;
-import org.apache.tuscany.das.rdb.config.Parameters;
-import org.apache.tuscany.das.rdb.config.Table;
-import org.apache.tuscany.das.rdb.config.Update;
-import org.apache.tuscany.das.rdb.test.data.BookData;
-import org.apache.tuscany.das.rdb.test.data.CustomerData;
-import org.apache.tuscany.das.rdb.test.framework.DasTest;
-
-import commonj.sdo.DataObject;
-
-public class NamedParameterTests extends DasTest {
- protected void setUp() throws Exception {
- super.setUp();
- new CustomerData(getAutoConnection()).refresh();
- }
-
- protected void tearDown() throws Exception {
- super.tearDown();
- }
-
- /**
- * Test passing <Parameters><Parameter></Paramerers> to create/update/delete
- * through config, with duplicate indexes
- * @throws Exception
- */
- public void testCUDNamedParameters() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("namedParameter.xml"), getConnection());
- // Read customer 1
- Command select = das.createCommand("Select * from CUSTOMER where ID = 1");
- DataObject root = select.executeQuery();
- assertFalse(root.get("CUSTOMER[1]/LASTNAME").equals("Pavick"));
-
- // Modify customer
- DataObject customer = (DataObject) root.get("CUSTOMER[1]");
- customer.set("LASTNAME", "Pavick");
- customer.set("ADDRESS", "Pavick's Address");
- // Build apply changes command
- try{
- das.applyChanges(root);
- fail("Expected exception");
- }catch(RuntimeException e){
- assertTrue(e.getMessage().startsWith("Parameters with improper indexes!"));
- }
-
- //create
- root = select.executeQuery();
- DataObject newCustomer = root.createDataObject("CUSTOMER");
- newCustomer.setInt("ID", 6);
- newCustomer.setString("LASTNAME", "Louise");
- newCustomer.setString("ADDRESS", "U.K.");
- try{
- das.applyChanges(root);
- fail("Expected exception");
- }catch(RuntimeException e){
- assertTrue(e.getMessage().startsWith("Parameters with duplicate indexes!"));
- }
-
- //delete
- root = select.executeQuery();
- DataObject toBeDeleted = root.getDataObject("CUSTOMER[1]");
- toBeDeleted.setString("LASTNAME", "Pavick");
- toBeDeleted.delete();
- das.applyChanges(root);
- root = select.executeQuery();
- assertEquals(null, root.getDataObject("CUSTOMER[1]"));
-
- }
-
- /**
- * Test passing <Parameter>List to Command through config
- * @throws Exception
- */
- public void testCommandNamedParameters() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConfig("namedParameter.xml"), getConnection());
- //select
- Command select = das.getCommand("getCustomer");
- select.setParameter("ID", new Integer(1));
- DataObject root = select.executeQuery();
- List customers = root.getList("CUSTOMER");
- assertEquals(1, customers.size());
- DataObject customer = (DataObject)customers.get(0);
- assertEquals("Williams", customer.get("LASTNAME"));
-
- //insert - command in config has <Parameter>
- Command insert = das.getCommand("createCustomer");
- //see order is not maintained, but config depicts it through index attrb
- //if index is missing , auto increment logic will be followed
- insert.setParameter("LASTNAME", "Louise");
- insert.setParameter("ADDRESS", "TPO");
- insert.setParameter("ID", new Integer(6));
- insert.execute();
- select.setParameter("ID", new Integer(6));
- root = select.executeQuery();
- customers = root.getList("CUSTOMER");
- assertEquals(1, customers.size());
- customer = (DataObject)customers.get(0);
- assertEquals("Louise", customer.get("LASTNAME"));
-
- //insert - command in config has no <Parameter>
- Command insertNoParam = das.getCommand("createCustomerNoParam");
- //if param/index is missing in cfg, auto increment logic will be followed
- insertNoParam.setParameter("ID", new Integer(7));
- insertNoParam.setParameter("LASTNAME", "Louise7");
- insertNoParam.setParameter("ADDRESS", "TPO7");
- insertNoParam.execute();
- select.setParameter("ID", new Integer(7));
- root = select.executeQuery();
- customers = root.getList("CUSTOMER");
- assertEquals(1, customers.size());
- customer = (DataObject)customers.get(0);
- assertEquals("Louise7", customer.get("LASTNAME"));
-
- //update
- Command update = das.getCommand("updateCustomer");
- update.setParameter("LASTNAME", "NoLouise");
- update.setParameter("ID", new Integer(6));
- update.execute();
- select.setParameter("ID", new Integer(6));
- root = select.executeQuery();
- customers = root.getList("CUSTOMER");
- assertEquals(1, customers.size());
- customer = (DataObject)customers.get(0);
- assertEquals("NoLouise", customer.get("LASTNAME"));
-
- //update - no param in config
- Command updateNoParam = das.getCommand("updateCustomerNoParam");
- updateNoParam.setParameter("LASTNAME", "YesLouise");
- updateNoParam.setParameter("ID", new Integer(6));
- updateNoParam.execute();
- select.setParameter("ID", new Integer(6));
- root = select.executeQuery();
- customers = root.getList("CUSTOMER");
- assertEquals(1, customers.size());
- customer = (DataObject)customers.get(0);
- assertEquals("YesLouise", customer.get("LASTNAME"));
-
- //delete
- Command delete = das.getCommand("deleteCustomer");
- delete.setParameter("ID", new Integer(6));
- delete.execute();
- select.setParameter("ID", new Integer(6));
- root = select.executeQuery();
- customers = root.getList("CUSTOMER");
- assertEquals(0, customers.size());
-
- //delete - cfg command with no param
- Command deleteNoParam = das.getCommand("deleteCustomerNoParam");
- deleteNoParam.setParameter("ID", new Integer(7));
- deleteNoParam.execute();
- select.setParameter("ID", new Integer(7));
- root = select.executeQuery();
- customers = root.getList("CUSTOMER");
- assertEquals(0, customers.size());
- }
-
- /**
- * Test passing <Parameter>List to Command through program
- * @throws Exception
- */
- public void testProgrammaticCommandNamedParameters() throws Exception {
- ConfigHelper helper = new ConfigHelper();
- //Command insertAdhoc = das.createCommand("insert into CUSTOMER values (?, ?, ?)");
- org.apache.tuscany.das.rdb.config.Command insertAdhoc = ConfigFactory.INSTANCE.createCommand();
- insertAdhoc.setKind("insert");
- insertAdhoc.setSQL("insert into CUSTOMER values (?, ?, ?)");
- insertAdhoc.setName("insertCustomer");
- Parameter parameter1 = ConfigFactory.INSTANCE.createParameter();
- parameter1.setName("ID");
- Parameter parameter2 = ConfigFactory.INSTANCE.createParameter();
- parameter2.setName("LASTNAME");
- Parameter parameter3 = ConfigFactory.INSTANCE.createParameter();
- parameter3.setName("ADDRESS");
- insertAdhoc.getParameter().add(parameter1);
- insertAdhoc.getParameter().add(parameter2);
- insertAdhoc.getParameter().add(parameter3);
- Config cfg = helper.getConfig();
- cfg.getCommand().add(insertAdhoc);
- DAS das = DAS.FACTORY.createDAS(cfg, getConnection());
-
- //setup is over, now set values in params and execute
- Command insert = das.getCommand("insertCustomer");
- insert.setParameter("ID", new Integer(6));
- insert.setParameter("LASTNAME", "Anthony");
- insert.setParameter("ADDRESS", "IND");
- insert.execute();
-
- Command select = das.createCommand("select * from CUSTOMER where ID = ?");
- select.setParameter("ID", new Integer(6));
- DataObject root = select.executeQuery();
- List customers = root.getList("CUSTOMER");
- assertEquals(1, customers.size());
- DataObject customer = (DataObject)customers.get(0);
- assertEquals("Anthony", customer.get("LASTNAME"));
- }
-
- /**
- * Test set/getParameter(name) on Command
- * @throws Exception
- */
- public void testNamedParameters() throws Exception {
- DAS das = DAS.FACTORY.createDAS(getConnection());
- Command insertAdhoc = das.createCommand("insert into CUSTOMER values (?, ?, ?)");
- insertAdhoc.setParameter("ID", new Integer(6));
- insertAdhoc.setParameter("LASTNAME", "MyLastName");
- insertAdhoc.setParameter("ADDRESS", "MyLastAddress");
- assertEquals("MyLastAddress", insertAdhoc.getParameter("ADDRESS"));
- insertAdhoc.execute();
-
- Command select = das.createCommand("select * from CUSTOMER where ID = ?");
- select.setParameter("ID", new Integer(6));
- DataObject root = select.executeQuery();
- List customers = root.getList("CUSTOMER");
- assertEquals(1, customers.size());
- DataObject customer = (DataObject)customers.get(0);
- assertEquals("MyLastName", customer.get("LASTNAME"));
-
- }
-}