From aca1633212fe261c04861cd48ab53b5081089fd2 Mon Sep 17 00:00:00 2001 From: lresende Date: Wed, 13 Jan 2010 01:41:50 +0000 Subject: Cleaning up sandbox git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@898604 13f79535-47bb-0310-9956-ffa450edef68 --- .../java/organization/OrganizationTestCase.java | 141 +++++++++++++++++++++ 1 file changed, 141 insertions(+) create mode 100644 sandbox/lresende/backup/organization-das/src/test/java/organization/OrganizationTestCase.java (limited to 'sandbox/lresende/backup/organization-das/src/test/java') diff --git a/sandbox/lresende/backup/organization-das/src/test/java/organization/OrganizationTestCase.java b/sandbox/lresende/backup/organization-das/src/test/java/organization/OrganizationTestCase.java new file mode 100644 index 0000000000..33810f4325 --- /dev/null +++ b/sandbox/lresende/backup/organization-das/src/test/java/organization/OrganizationTestCase.java @@ -0,0 +1,141 @@ +/* + * 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 organization; + +import java.io.InputStream; +import java.util.Random; + +import org.apache.tuscany.das.rdb.Command; +import org.apache.tuscany.das.rdb.DAS; +import org.apache.tuscany.sca.host.embedded.SCADomain; +import org.junit.Test; +import org.soa.types.SchemaInfoType; +import org.soa.types.TypesFactory; +import organization.services.OrganizationService; + +import util.ConnectionHelper; + +import commonj.sdo.DataObject; + +public class OrganizationTestCase { + + private static final String id = "1"; + + /** + * This represents BUG_ONE from TUSCANY-2525 + */ + @Test + public void testRetrieveOrganizationDAS() { + DataObject root = null; + InputStream in = getClass().getClassLoader().getResourceAsStream("organizationConfiguration.xml"); + + // Need to put in valid values for your DB + SchemaInfoType schemaInfo = TypesFactory.INSTANCE.createSchemaInfoType(); + schemaInfo.setPASSWORD(""); + schemaInfo.setSCHEMA(""); + schemaInfo.setUSERNAME(""); + + java.sql.Connection conn = ConnectionHelper.getConnection(schemaInfo); + + DAS das = DAS.FACTORY.createDAS(in, conn); + Command read = das.getCommand("getAccountByID"); + read.setParameter(1, Integer.valueOf(id)); + + root = read.executeQuery(); + + // This is just testing to see if the call to das.applyChanges works + // This doesn't work + + Random generator = new Random(); + String accountName = "ACCOUNT_" + Integer.toString(generator.nextInt()); + + DataObject account = root.getDataObject("ACCOUNT[1]"); + account.set("ACCOUNT_NAME", accountName); + System.out.println("findOrganization data graph -> " + root.getDataGraph()); + System.out.println("findOrganization data graph root -> " + root.getDataGraph().getRootObject()); + + das.applyChanges(root); + + root = read.executeQuery(); + + DataObject updatedAccount = root.getDataObject("ACCOUNT[1]"); + org.junit.Assert.assertEquals(accountName, updatedAccount.get("ACCOUNT_NAME")); + + } + + @Test + public void testRetrieveOrganizationAndSaveDAS() { + DataObject root = null; + InputStream in = getClass().getClassLoader().getResourceAsStream("organizationConfiguration.xml"); + + // Need to put in valid values for your DB + SchemaInfoType schemaInfo = TypesFactory.INSTANCE.createSchemaInfoType(); + schemaInfo.setPASSWORD(""); + schemaInfo.setSCHEMA(""); + schemaInfo.setUSERNAME(""); + + java.sql.Connection conn = ConnectionHelper.getConnection(schemaInfo); + + DAS das = DAS.FACTORY.createDAS(in, conn); + Command read = das.getCommand("getAccountByID"); + read.setParameter(1, Integer.valueOf(id)); + + root = read.executeQuery(); + + das.applyChanges(root); + } + + /** + * This represents BUG_TWO from TUSCANY-2525 + */ + @Test + public void testRetrieveOrganizationSCA() { + + System.out.println("\n1. Organization-Service-Composite OrganizationClientRunner "); + + SCADomain scaDomain = SCADomain.newInstance("organization.composite"); + + OrganizationService organizationService = + scaDomain.getService(OrganizationService.class, "OrganizationServiceComponent"); + + // Need to put in valid values for your DB + SchemaInfoType schemaInfo = TypesFactory.INSTANCE.createSchemaInfoType(); + schemaInfo.setPASSWORD(""); + schemaInfo.setSCHEMA(""); + schemaInfo.setUSERNAME(""); + + // This doesn't work. Just retreive account, make a change, then apply changes + DataObject root = organizationService.findOrganizationBugOne(id, schemaInfo); + DataObject account = root.getDataObject("ACCOUNT[1]"); + + org.junit.Assert.assertEquals("TestNode2", account.get("ACCOUNT_NAME")); + + + // This doesn't work either. The root datagraph is null + // If you call das.applyChanges for a dataObject that has null as the dataGraph, + // it hurls. + DataObject rootOne = organizationService.findOrganizationBugTwo(id, schemaInfo); + ////account = root.getDataObject("ACCOUNT[1]"); + ////account.set("ACCOUNT_NAME", "something"); + System.out.println("rootOne dataGraph -> " + rootOne.getDataGraph()); + organizationService.updateOrganization(rootOne, schemaInfo); + + scaDomain.close(); + } +} -- cgit v1.2.3