You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by ke...@apache.org on 2007/05/09 16:04:51 UTC

svn commit: r536535 [1/4] - in /incubator/tuscany/java/cts: sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/ sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/testHelper/ sdo2.1/src/main/java/test/sdo21/ sdo2.1/src/main/ja...

Author: kelvingoodson
Date: Wed May  9 07:04:49 2007
New Revision: 536535

URL: http://svn.apache.org/viewvc?view=rev&rev=536535
Log:
TUSCANY-1241 merged Brian's updates with some of mine as a prelude to rearranging the CTS structure

Added:
    incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/
    incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/TuscanyDataObjectFactory.java   (with props)
    incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/package.html   (with props)
    incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/testHelper/package.html   (with props)
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/framework/DataObjectFactory.java   (with props)
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/general/ContainmentCyclePreventionTest.java   (with props)
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/general/ContainmentCycleSerializationTest.java   (with props)
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/tests/TestTemplate.java   (with props)
Modified:
    incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/testHelper/TuscanyTestHelper.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/UnderReviewSuite.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/framework/TestHelper.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/BaseSDOParamatizedTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/CTSParamatizedSuite.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/TestTemplate.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/CopyEqualityTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/DataFactoryTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/DataGraphTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/PropertyTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/SequenceTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/TypeHelperTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/TypeTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/XMLHelperTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/conversion/TypeConversionTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/general/ActiveUpdatingTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/general/ContainmentTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/general/DeleteTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/util/ParamatizedTestUtil.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/util/TypeCreateUtility.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/tests/api/DataObjectTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/tests/api/DynamicTypesFromSchemaTestCase.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/tests/api/SequenceAddOpenTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/tests/api/SequenceAddTypedTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/tests/conversion/ConversionBase.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/tests/conversion/DateConversionTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/tests/conversion/TypeConversionTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/tests/general/XMLHelperTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/tests/general/XSDHelperTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/tests/xsd/XSDBaseTestCase.java
    incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/tests/xsd/XSDComplexTypeTest.java
    incubator/tuscany/java/cts/sdo2.1/src/main/resources/api_test.xsd

Added: incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/TuscanyDataObjectFactory.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/TuscanyDataObjectFactory.java?view=auto&rev=536535
==============================================================================
--- incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/TuscanyDataObjectFactory.java (added)
+++ incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/TuscanyDataObjectFactory.java Wed May  9 07:04:49 2007
@@ -0,0 +1,166 @@
+/**
+ *
+ *  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 test.sdo21.vendor.tuscany.dataObjectFactory;
+
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.lang.reflect.Field;
+import test.sdo21.framework.DataObjectFactory;
+import test.sdo21.paramatizedTests.util.ParamatizedTestUtil;
+import commonj.sdo.DataObject;
+import commonj.sdo.helper.HelperContext;
+
+/**
+ * Implementation of DataObjectFactory for Tuscany.
+ */
+public class TuscanyDataObjectFactory implements DataObjectFactory {
+    
+    private HelperContext scope;
+    private Object objForInvoke;
+    private Method methCreateAPITest;
+    private Object[] argsCreateAPITest;
+    private Method methCreateSequenced;
+    private Object[] argsCreateSequenced;
+    private Method methCreateExtended;
+    private Object[] argsCreateExtended;
+    private String packageName;
+
+    public TuscanyDataObjectFactory(String factory, HelperContext inScope) {
+    	scope = inScope;
+    	
+    	if (factory == null) {
+    		packageName = null;
+    		objForInvoke = scope.getDataFactory();
+    		Class[] types = new Class[] {String.class, String.class};
+    		try {
+    		    methCreateAPITest = objForInvoke.getClass().getMethod("create", types);
+    		} catch (NoSuchMethodException e) {
+    			e.printStackTrace();
+    		}
+    		argsCreateAPITest = new Object[] {ParamatizedTestUtil.TEST_NAMESPACE, ParamatizedTestUtil.TEST_TYPE};
+    		argsCreateSequenced = new Object[] {ParamatizedTestUtil.TEST_NAMESPACE, ParamatizedTestUtil.SEQ_TYPE};
+    		argsCreateExtended = new Object[] {ParamatizedTestUtil.TEST_NAMESPACE, ParamatizedTestUtil.EXT_TYPE};
+            
+    		methCreateSequenced = methCreateAPITest;
+    		methCreateExtended = methCreateAPITest;
+    	} else {
+    		// statically created Factories do not take any arguments
+    		argsCreateAPITest = new Object[] {};
+    		argsCreateSequenced = new Object[] {};
+    		argsCreateExtended = new Object[] {};
+    		
+    		if (factory.lastIndexOf('.') <= 0)
+    			packageName = new String("");
+    		else {
+    			packageName = factory.substring(0,factory.lastIndexOf('.'));
+    		}
+    		
+            try 
+            {
+                Class cl = Class.forName(factory);
+
+                objForInvoke = null;
+                try 
+                {
+                    Field fld = cl.getField("INSTANCE");
+                    objForInvoke = fld.get(null);
+                    if( objForInvoke != null )
+                    {
+                        Class[] types = new Class[] {Class.forName("commonj.sdo.helper.HelperContext")};
+                        try {
+                            Method methRegister = objForInvoke.getClass().getMethod("register", types);
+                            methCreateAPITest = objForInvoke.getClass().getMethod("createAPITest", new Class[] {} );
+                            methCreateSequenced = objForInvoke.getClass().getMethod("createSequenced", new Class[] {} );
+                            methCreateExtended = objForInvoke.getClass().getMethod("createExtended", new Class[] {} );
+                            try 
+                            {
+                                methRegister.invoke(objForInvoke, new Object[] {scope} );
+                            } 
+                            catch (InvocationTargetException e) 
+                            {
+                                e.printStackTrace();
+                            }
+                        }
+                        catch (NoSuchMethodException e) {
+                        	e.printStackTrace();
+                        }
+                    } 
+                } 
+                catch (NoSuchFieldException e) 
+                {
+                    e.printStackTrace();
+                }
+                catch (IllegalAccessException e) 
+                {
+                    e.printStackTrace();
+                } 
+            } 
+            catch (ClassNotFoundException e) 
+            {
+                e.printStackTrace();
+            }
+    	}
+    	
+    }
+    
+    public HelperContext getHelperContext() {
+    	return scope;
+    }
+
+    public String getPackage() {
+    	return packageName;
+    }
+    
+    public DataObject createTestAPIObject() {
+    	try {
+    	    return (DataObject) methCreateAPITest.invoke(objForInvoke, argsCreateAPITest);
+    	} catch (IllegalAccessException e) {
+    		e.printStackTrace();
+    		return null;
+    	} catch (InvocationTargetException e) {
+    		e.printStackTrace();
+    		return null;
+    	}
+    }
+    
+    public DataObject createSequencedObject() {
+    	try {
+    	    return (DataObject) methCreateSequenced.invoke(objForInvoke, argsCreateSequenced);
+    	} catch (IllegalAccessException e) {
+    		e.printStackTrace();
+    		return null;
+    	} catch (InvocationTargetException e) {
+    		e.printStackTrace();
+    		return null;
+    	}
+    }
+    
+    public DataObject createExtendedObject() {
+    	try {
+    	    return (DataObject) methCreateExtended.invoke(objForInvoke, argsCreateExtended);
+    	} catch (IllegalAccessException e) {
+    		e.printStackTrace();
+	        return null;
+    	} catch (InvocationTargetException e) {
+    		e.printStackTrace();
+		    return null;
+    	}
+    }
+}

Propchange: incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/TuscanyDataObjectFactory.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/TuscanyDataObjectFactory.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Added: incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/package.html
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/package.html?view=auto&rev=536535
==============================================================================
--- incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/package.html (added)
+++ incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/package.html Wed May  9 07:04:49 2007
@@ -0,0 +1,5 @@
+<html>
+<body>
+Contains implementation of DataObject Factory from Tuscany.
+</body>
+</html>

Propchange: incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/package.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/package.html
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/dataObjectFactory/package.html
------------------------------------------------------------------------------
    svn:mime-type = text/html

Modified: incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/testHelper/TuscanyTestHelper.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/testHelper/TuscanyTestHelper.java?view=diff&rev=536535&r1=536534&r2=536535
==============================================================================
--- incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/testHelper/TuscanyTestHelper.java (original)
+++ incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/testHelper/TuscanyTestHelper.java Wed May  9 07:04:49 2007
@@ -21,77 +21,51 @@
  */
 package test.sdo21.vendor.tuscany.testHelper;
 
-import java.lang.reflect.Method;
+import static org.junit.Assert.fail;
+
 import java.util.ArrayList;
 import java.util.Collection;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.IOException;
 import java.util.logging.Level;
 import java.util.logging.Logger;
-
+import java.io.InputStream;
+import java.io.ObjectOutputStream;
+import java.io.ObjectInputStream;
+import java.io.OutputStream;
+import java.io.InputStream;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.lang.reflect.Field;
+import java.util.List;
 import org.apache.tuscany.sdo.util.SDOUtil;
-
 import test.sdo21.framework.TestHelper;
-
+import test.sdo21.paramatizedTests.util.ParamatizedTestUtil;
+import test.sdo21.vendor.tuscany.dataObjectFactory.TuscanyDataObjectFactory;
+import test.sdo21.framework.DataObjectFactory;
 import commonj.sdo.DataGraph;
 import commonj.sdo.DataObject;
 import commonj.sdo.Type;
-import commonj.sdo.helper.CopyHelper;
-import commonj.sdo.helper.DataFactory;
-import commonj.sdo.helper.DataHelper;
-import commonj.sdo.helper.EqualityHelper;
+
+import commonj.sdo.helper.XMLDocument;
 import commonj.sdo.helper.HelperContext;
 import commonj.sdo.helper.TypeHelper;
-import commonj.sdo.helper.XMLHelper;
-import commonj.sdo.helper.XSDHelper;
-import commonj.sdo.impl.HelperProvider;
+import javax.xml.stream.XMLStreamWriter;
 
 /**
  * Implementation of TestHelper for Tuscany.
  */
 public class TuscanyTestHelper implements TestHelper {
-    TypeHelper typeHelper = HelperProvider.getTypeHelper();
-    XSDHelper xsdHelper = HelperProvider.getXSDHelper();
-    DataFactory dataFactory = HelperProvider.getDataFactory();
-    XMLHelper xmlHelper = HelperProvider.getXMLHelper();
-    EqualityHelper equalityHelper = HelperProvider.getEqualityHelper();
-    CopyHelper copyHelper = HelperProvider.getCopyHelper();
-    DataHelper dataHelper = HelperProvider.getDataHelper();
-
+    
+    private static List staticArtifacts = null;            
     private static final Logger logger = Logger.getLogger(TuscanyTestHelper.class.getName());
 
     public void init() {
-
-    }
-
-    public DataHelper getDataHelper() {
-        return dataHelper;
-    }
-
-    public CopyHelper getCopyHelper() {
-        return copyHelper;
     }
-
-    public XSDHelper getXSDHelper() {
-        return xsdHelper;
-    }
-
-    public EqualityHelper getEqualityHelper() {
-        return equalityHelper;
-    }
-
-    public XMLHelper getXMLHelper() {
-        return xmlHelper;
-    }
-
-    public TypeHelper getTypeHelper() {
-        return typeHelper;
-    }
-
-    public DataFactory getDataFactory() {
-        return dataFactory;
-    }
-
-    public DataObject createTypeDef(String uri, String name, boolean open) {
-        DataObject typeDef = getDataFactory().create("commonj.sdo", "Type");
+    
+    public DataObject createTypeDef(String uri, String name, boolean open, HelperContext helperContext) {
+        DataObject typeDef = helperContext.getDataFactory().create("commonj.sdo", "Type");
         typeDef.set("uri", uri);
         typeDef.set("name", name);
         typeDef.set("open", Boolean.valueOf(open));
@@ -115,7 +89,8 @@
                                         String propertyName,
                                         String typeName,
                                         boolean isMany,
-                                        boolean isContainment) {
+                                        boolean isContainment,
+                                        HelperContext helperContext) {
         int pos = typeName.indexOf('#');
         String uri = "";
         String name;
@@ -125,7 +100,7 @@
         } else {
             name = typeName;
         }
-        Type propertyType = getTypeHelper().getType(uri, name);
+        Type propertyType = helperContext.getTypeHelper().getType(uri, name);
         return createPropertyDef(typeDef, propertyName, propertyType, isMany, isContainment);
     }
 
@@ -143,10 +118,67 @@
      * 
      * @return
      */
-    public Collection getParamatizedDataObject() {
-        return new ArrayList();
-    }
-
+    // TODO: add static
+    public Collection getParamatizedDataObject() 
+    {
+        try
+        {
+            ArrayList listOfTestObjects = new ArrayList();
+            if( staticArtifacts == null )
+                staticArtifacts = loadStaticArtifacts();
+            
+            if( staticArtifacts != null )
+            {    
+                for( int i=0; i<staticArtifacts.size(); i++ )
+                {       
+                    HelperContext scope = test.sdo21.CTSSuite.getTestHelper().createHelperContext();
+                    DataObject staticPackage = (DataObject)staticArtifacts.get(i);
+                    listOfTestObjects.add(new Object[] {new TuscanyDataObjectFactory(staticPackage.getString("factory"), scope), new String(staticPackage.getString("name"))});                         
+                }    
+                return listOfTestObjects;
+            }
+            else
+            {
+                return new ArrayList();
+            }
+        }        
+        catch(Exception e)
+        {
+            e.printStackTrace();
+            return new ArrayList();
+        }            
+    }
+   
+    private List loadStaticArtifacts()
+    {
+        try 
+        {
+            InputStream inputStream;
+            HelperContext helperContext = test.sdo21.CTSSuite.getTestHelper().createHelperContext();
+        
+            // Read the XSD and define the Types
+            inputStream = new FileInputStream("staticArtifacts.xsd");
+            helperContext.getXSDHelper().define(inputStream, null );
+            inputStream.close();
+            // Load the Instance
+            inputStream = new FileInputStream("staticArtifacts.xml");
+            XMLDocument doc = helperContext.getXMLHelper().load(inputStream);
+            inputStream.close();
+            DataObject packages = doc.getRootObject();
+            return ( (List)packages.get(packages.getType().getProperty("staticPackage")) );
+        } 
+        catch (FileNotFoundException e) 
+        {
+            // Its ok, if this file isn't found
+            //e.printStackTrace();
+        } 
+        catch (IOException e) 
+        {
+            e.printStackTrace();
+        }         
+        return null;    
+    }            
+    
     /**
      * Create an empty data graph.
      * 
@@ -183,4 +215,52 @@
         }
     }
 
+    /**
+     * Create a new DataObjectFactory
+     * @return the new DataObjectFactory instance.
+     */
+    public DataObjectFactory createDataObjectFactory(String factory,
+            HelperContext helperContext) {
+        return new TuscanyDataObjectFactory(factory, helperContext);
+    }
+    
+    /**
+     * Create a new ObjectOutputStream
+     * 
+     * @return the new ObjectOutputStream instance.
+     */
+    public ObjectOutputStream createObjectOutputStream(OutputStream os, HelperContext helperContext) {
+        try {
+            return SDOUtil.createObjectOutputStream(os, helperContext);
+        } catch (java.io.IOException e) {
+                fail("IOException during createObjectOutputStream.");
+            return null;
+        }
+    }
+    
+    /**
+     * Create a new ObjectInputStream
+     * 
+     * @return the new ObjectInputStream instance.
+     */
+    public ObjectInputStream createObjectInputStream(InputStream is, HelperContext helperContext) {
+        try {
+            return SDOUtil.createObjectInputStream(is, helperContext);
+        } catch (java.io.IOException e) {
+            fail("IOException during createObjectOutputStream.");
+           return null;
+        }
+    }
+    
+    /**
+     * Serialize a DataObject using an XMLStreamHelper
+     */
+    public void serializeViaXMLStreamHelper(TypeHelper typeHelper, DataObject dataObject, XMLStreamWriter serializer) {
+        try {
+            SDOUtil.createXMLStreamHelper(typeHelper).saveObject(dataObject, serializer);
+        } catch (javax.xml.stream.XMLStreamException e) {
+            fail("XMLStreamException during saveObject.");
+        }
+    }
+    
 }

Added: incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/testHelper/package.html
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/testHelper/package.html?view=auto&rev=536535
==============================================================================
--- incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/testHelper/package.html (added)
+++ incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/testHelper/package.html Wed May  9 07:04:49 2007
@@ -0,0 +1,5 @@
+<html>
+<body>
+Contains implementation of test helpers from Tuscany.
+</body>
+</html>

Propchange: incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/testHelper/package.html
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/testHelper/package.html
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Propchange: incubator/tuscany/java/cts/sdo2.1-tuscany/src/main/java/test/sdo21/vendor/tuscany/testHelper/package.html
------------------------------------------------------------------------------
    svn:mime-type = text/html

Modified: incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/UnderReviewSuite.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/UnderReviewSuite.java?view=diff&rev=536535&r1=536534&r2=536535
==============================================================================
--- incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/UnderReviewSuite.java (original)
+++ incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/UnderReviewSuite.java Wed May  9 07:04:49 2007
@@ -42,7 +42,8 @@
 @Suite.SuiteClasses( {test.sdo21.paramatizedTests.CTSParamatizedSuite.class,
                       test.sdo21.paramatizedTests.conversion.TypeConversionTest.class,
                       test.sdo21.tests.conversion.StringConversionTest.class,
-                      test.sdo21.tests.api.XMLWithoutSchemaTest.class
+                      test.sdo21.tests.api.XMLWithoutSchemaTest.class,
+                      test.sdo21.tests.general.XMLHelperTest.class
                       })
 public class UnderReviewSuite {
 

Added: incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/framework/DataObjectFactory.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/framework/DataObjectFactory.java?view=auto&rev=536535
==============================================================================
--- incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/framework/DataObjectFactory.java (added)
+++ incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/framework/DataObjectFactory.java Wed May  9 07:04:49 2007
@@ -0,0 +1,62 @@
+/*
+ *  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.
+ *  
+ *  $Rev$  $Date$
+ */
+package test.sdo21.framework;
+
+import commonj.sdo.DataObject;
+import commonj.sdo.helper.HelperContext;
+
+/**
+ * Vendors can provide an implementation of this interface to provide 
+ * DataObjects in the appropriate manner for the test scenario.
+ */
+public interface DataObjectFactory {
+
+	/**
+	 * Returns the scoped used for this DataObjectFactory
+	 * @return
+	 */
+	public HelperContext getHelperContext();
+	
+	/**
+	 * Returns the name of the static package used for this DataObjectFactory.
+	 * Returns null in the case of dynamic.
+	 * @return
+	 */
+	public String getPackage();
+	
+	/** 
+	 * Creates and returns a DataObject of Type 'APITest'
+	 * @return
+	 */
+	public DataObject createTestAPIObject();
+	
+	/**
+	 * Creates and returns a DataObject of Type 'Sequenced'
+	 * @return
+	 */
+	public DataObject createSequencedObject();
+	
+	/**
+	 * Creates and returns a DataObject of Type 'Extended'
+	 * @return
+	 */
+	public DataObject createExtendedObject();
+}

Propchange: incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/framework/DataObjectFactory.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/framework/DataObjectFactory.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date

Modified: incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/framework/TestHelper.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/framework/TestHelper.java?view=diff&rev=536535&r1=536534&r2=536535
==============================================================================
--- incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/framework/TestHelper.java (original)
+++ incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/framework/TestHelper.java Wed May  9 07:04:49 2007
@@ -25,14 +25,13 @@
 import commonj.sdo.DataGraph;
 import commonj.sdo.DataObject;
 import commonj.sdo.Type;
-import commonj.sdo.helper.CopyHelper;
-import commonj.sdo.helper.DataFactory;
-import commonj.sdo.helper.DataHelper;
-import commonj.sdo.helper.EqualityHelper;
 import commonj.sdo.helper.HelperContext;
 import commonj.sdo.helper.TypeHelper;
-import commonj.sdo.helper.XMLHelper;
-import commonj.sdo.helper.XSDHelper;
+import java.io.ObjectOutputStream;
+import java.io.ObjectInputStream;
+import java.io.OutputStream;
+import java.io.InputStream;
+//import javax.xml.stream.XMLStreamWriter;
 
 /**
  * Vendors can provide an implementation of this interface to bootstrap their
@@ -48,47 +47,10 @@
     public void init();
 
     /**
-     * @return XMLHelper
-     */
-    public XMLHelper getXMLHelper();
-
-    /**
-     * @return XSDHelper
-     */
-    public XSDHelper getXSDHelper();
-
-    /**
-     * @return TypeHelper
-     */
-    public TypeHelper getTypeHelper();
-
-    /**
-     * @return DataFactory
-     */
-    public DataFactory getDataFactory();
-
-    /**
-     * @return DataHelper
-     */
-    public DataHelper getDataHelper();
-
-    /**
-     * @return EqualityHelper
-     */
-    public EqualityHelper getEqualityHelper();
-
-    /**
-     * @return CopyHelper
-     */
-    public CopyHelper getCopyHelper();
-
-    /**
      * Returns collection containing DataObject, String pairs to be used as
      * arguments to paramatized test cases. DataObjects should adhere to
      * api_test.xsd and should be populated. The String should be a description
-     * of the mechanism used to create and populate the DataObject. See
-     * {@link test.sdo21.vendorSpecific.tuscany.testHelper.TuscanyTestHelper}
-     * for examples.
+     * of the mechanism used to create and populate the DataObject. 
      * 
      * @return
      */
@@ -99,9 +61,10 @@
      * 
      * @param uri
      * @param name
+     * @param helperContext
      * @return
      */
-    public DataObject createTypeDef(String uri, String name, boolean open);
+    public DataObject createTypeDef(String uri, String name, boolean open, HelperContext helperContext);
 
     /**
      * Convenience method for creating a property definition
@@ -128,13 +91,15 @@
      *            "commonj.sdo#DataObject"
      * @param isMany
      * @param isContainment
+     * @param helperContext
      * @return
      */
     public DataObject createPropertyDef(DataObject typeDef,
                                         String name,
                                         String type,
                                         boolean isMany,
-                                        boolean isContainment);
+                                        boolean isContainment,
+                                        HelperContext helperContext);
 
     /**
      * Convenience method for creating a unique name that can be used for a
@@ -159,14 +124,44 @@
     public HelperContext createHelperContext();
 
     /**
-     * Register and initialize the SDO types supported by the specified
-     * generated factory class. This function must be called before instances of
-     * the generated types can be created/used. The registered types will be
-     * visible in all TypeHelper's created in the same classLoader scope as the
-     * call to this function.
+     * Create a new DataObjectFactory
+     * 
+     * @return the new DataObjectFactory instance.
+     */
+    public DataObjectFactory createDataObjectFactory(String factory,
+    		                                      HelperContext helperContext);
+       
+    /**
+     * @return Static SDO that adhere's to simple.xsd
+    
+    public DataObject getSimpleSDO();
+    */
+    /**
+     * @return Static Quote SDO from simple.xsd defintion.
+     
+    public DataObject getSimpleQuoteSDO();
+    */
+    
+    /**
+     * Create a new ObjectOutputStream
      * 
-     * @param factoryClass the generated factory class.
+     * @return the new ObjectOutputStream instance.
      */
-    public void registerStaticTypes(Class factoryClass);
+    public ObjectOutputStream createObjectOutputStream(OutputStream os, 
+                                                    HelperContext helperContext);
 
+    /**
+     * Create a new ObjectInutStream
+     * 
+     * @return the new ObjectInputStream instance.
+     */
+    public ObjectInputStream createObjectInputStream(InputStream is, 
+                                                  HelperContext helperContext);
+    
+    /**
+     * Serialize a DataObject using an XMLStreamHelper
+     */
+//    public void serializeViaXMLStreamHelper(TypeHelper typeHelper, 
+//                             DataObject dataObject, 
+//                             XMLStreamWriter serializer);
 }

Modified: incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/BaseSDOParamatizedTest.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/BaseSDOParamatizedTest.java?view=diff&rev=536535&r1=536534&r2=536535
==============================================================================
--- incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/BaseSDOParamatizedTest.java (original)
+++ incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/BaseSDOParamatizedTest.java Wed May  9 07:04:49 2007
@@ -23,16 +23,15 @@
 import static org.junit.Assert.fail;
 
 import java.io.IOException;
-import java.util.Arrays;
 import java.util.Collection;
 import java.util.ArrayList;
-import java.util.Iterator;
 
 import org.junit.runners.Parameterized.Parameters;
-
-import test.sdo21.CTSSuite;                        
+import test.sdo21.framework.TestHelper;
+import test.sdo21.framework.DataObjectFactory;
 import test.sdo21.paramatizedTests.util.ParamatizedTestUtil;
 import test.sdo21.paramatizedTests.util.TypeCreateUtility;
+import commonj.sdo.helper.HelperContext;
 
 import commonj.sdo.DataObject;
 
@@ -43,16 +42,15 @@
  * should be used to populate these instance variables. This allows for test
  * cases to be executed using a variety of Type registration and DataObject
  * population combinations which is essentual for good SDO test coverage.
- * @deprecated @see {@link ParamaterizedTestBase}
  */
 public class BaseSDOParamatizedTest {
 
-    public DataObject testDO;
+    public DataObjectFactory factory;
 
     public String description;
 
-    public BaseSDOParamatizedTest(DataObject testDO, String description) {
-        this.testDO = testDO;
+    public BaseSDOParamatizedTest(DataObjectFactory factory, String description) {
+        this.factory = factory;
         this.description = description;
     }
 
@@ -62,12 +60,15 @@
      */
     @Parameters
     public static Collection data() {
-
         // TODO: use properties file and TestHelper to populate this Collection
-        // with desired DataObjects
+
         ArrayList list = new ArrayList();
-        list.add(new Object[] {createDynamicDO(), new String("Dynamic")});
-        list.add(new Object[] {createMixedDO(), new String("Mixed")});
+        list.add(new Object[] {createDynamicFactory(), new String("Dynamic")});
+        
+        list.add(new Object[] {createMixedFactory(), new String("Mixed")});
+        
+//        helperContext = test.sdo21.CTSSuite.getTestHelper().createHelperContext();
+//        list.add(new Object[] {createXMLDO(helperContext), new String("XML"), helperContext});
 
         // add vendor specific paramaters
         try {
@@ -85,41 +86,44 @@
     /**
      * Creates and populates a dynamic DataObject
      */
-    private static DataObject createDynamicDO() {
-        TypeCreateUtility.createDynamically();
-        DataObject testDO =
-            CTSSuite.getTestHelper().getDataFactory().create(ParamatizedTestUtil.TEST_NAMESPACE, "APITest");
+    private static DataObjectFactory createDynamicFactory() {
+        TestHelper testHelper = test.sdo21.CTSSuite.getTestHelper();
+        HelperContext scope = testHelper.createHelperContext();
+        TypeCreateUtility.createDynamically(scope);
+        return testHelper.createDataObjectFactory(null, scope);
+    }
+
+    /**
+     * Creates and populates a DataObject using the XMLHelper
+     */
+    private static DataObjectFactory createXMLFactory() {
+        TestHelper testHelper = test.sdo21.CTSSuite.getTestHelper();
+        HelperContext scope = testHelper.createHelperContext();
+// TODO - fix this
+        /*
         try {
-            ParamatizedTestUtil.populateFields(testDO);
+           testDO =
+               helperContext.getXMLHelper().load(BaseSDOParamatizedTest.class
+                    .getResourceAsStream(ParamatizedTestUtil.DATA_XML)).getRootObject();
         } catch (Exception e) {
-            fail("Exception caught " + e.toString());
             e.printStackTrace();
         }
-        return testDO;
+        return testDO;*/
+        return testHelper.createDataObjectFactory(null, scope);
     }
 
     /**
      * Creates and populates a DataObject that has Type define by an XSD but is
      * dynamically populated.
      */
-    private static DataObject createMixedDO() {
-
+    private static DataObjectFactory createMixedFactory() {
+        TestHelper testHelper = test.sdo21.CTSSuite.getTestHelper();
+        HelperContext scope = testHelper.createHelperContext();
         try {
-            TypeCreateUtility.createDynamicWithStaticResources();
-            DataObject testDO =
-                CTSSuite.getTestHelper().getDataFactory().create(ParamatizedTestUtil.TEST_NAMESPACE,
-                                                                 ParamatizedTestUtil.TEST_TYPE);
-
-            try {
-                ParamatizedTestUtil.populateFields(testDO);
-            } catch (Exception e) {
-                fail("Exception caught " + e.toString());
-                e.printStackTrace();
-            }
-            return testDO;
+            TypeCreateUtility.createDynamicWithStaticResources(scope);
         } catch (IOException e) {
-            e.printStackTrace();
+        	e.printStackTrace();
         }
-        return null;
+        return testHelper.createDataObjectFactory(null, scope);
     }
 }

Modified: incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/CTSParamatizedSuite.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/CTSParamatizedSuite.java?view=diff&rev=536535&r1=536534&r2=536535
==============================================================================
--- incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/CTSParamatizedSuite.java (original)
+++ incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/CTSParamatizedSuite.java Wed May  9 07:04:49 2007
@@ -34,6 +34,7 @@
 import test.sdo21.paramatizedTests.conversion.TypeConversionTest;
 import test.sdo21.paramatizedTests.general.ActiveUpdatingTest;
 import test.sdo21.paramatizedTests.general.ContainmentTest;
+import test.sdo21.paramatizedTests.general.ContainmentCycleSerializationTest;
 import test.sdo21.paramatizedTests.general.DeleteTest;
 
 /**
@@ -50,15 +51,17 @@
  * <LI>{@link test.sdo21.paramatizedTests.conversion.TypeConversionTest}</LI>
  * <LI>{@link test.sdo21.paramatizedTests.general.ActiveUpdatingTest}</LI>
  * <LI>{@link test.sdo21.paramatizedTests.general.ContainmentTest}</LI>
+ * <LI>{@link test.sdo21.paramatizedTests.general.ContainmentCycleSerializationTest}</LI>
  * <LI>{@link test.sdo21.paramatizedTests.general.DeleteTest}</LI>
  * </ul>
  * New test cases, or test cases that do not have consencus by the community
  * should be placed in the {@link test.sdo21.UnderReviewSuite} suite.
  */
 @RunWith(Suite.class)
-@Suite.SuiteClasses( {ContainmentTest.class, CopyEqualityTest.class, DataFactoryTest.class,
+@Suite.SuiteClasses( {ActiveUpdatingTest.class, ContainmentTest.class, CopyEqualityTest.class, DataFactoryTest.class,
                       DataGraphTest.class, DeleteTest.class, PropertyTest.class, SequenceTest.class,
-                      TypeConversionTest.class, TypeHelperTest.class, TypeTest.class, XMLHelperTest.class})
+                      TypeConversionTest.class, TypeHelperTest.class, TypeTest.class, XMLHelperTest.class,
+                      ContainmentCycleSerializationTest.class})
 public class CTSParamatizedSuite {
 
 }

Modified: incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/TestTemplate.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/TestTemplate.java?view=diff&rev=536535&r1=536534&r2=536535
==============================================================================
--- incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/TestTemplate.java (original)
+++ incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/TestTemplate.java Wed May  9 07:04:49 2007
@@ -36,11 +36,13 @@
 import org.junit.runners.Parameterized;
 
 import test.sdo21.CTSSuite;
+import test.sdo21.framework.DataObjectFactory;
 import test.sdo21.framework.TestHelper;
 import test.sdo21.paramatizedTests.BaseSDOParamatizedTest;
 import test.sdo21.paramatizedTests.util.ParamatizedTestUtil;
 
 import commonj.sdo.DataObject;
+import commonj.sdo.helper.HelperContext;
 
 /**
  * Example test class to be used as a template for paramatized SDO test cases.
@@ -84,8 +86,8 @@
 @RunWith(Parameterized.class)
 public class TestTemplate extends BaseSDOParamatizedTest {
 
-    public TestTemplate(DataObject testDO, String description) {
-        super(testDO, description);
+    public TestTemplate(DataObjectFactory factory, String description) {
+        super(factory, description);
     }
 
     /**
@@ -139,6 +141,7 @@
      *         {@link org.junit.Test} method. The <code>@Before</code> methods of superclasses will be run before those of the
      *         current class. There is also an <code>@After</code> annotation
      */
+    @Before
     public void testCaseInit() {
         // initMethod
     }
@@ -152,6 +155,7 @@
      *              methods in the class. The <code>@BeforeClass</code> methods of superclasses will be run before those the
      *              current class.
      */
+    @BeforeClass
     public static void init() {
         // init
     }

Modified: incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/CopyEqualityTest.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/CopyEqualityTest.java?view=diff&rev=536535&r1=536534&r2=536535
==============================================================================
--- incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/CopyEqualityTest.java (original)
+++ incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/CopyEqualityTest.java Wed May  9 07:04:49 2007
@@ -22,16 +22,20 @@
 
 import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.assertNotNull;
 
+import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
 
-import test.sdo21.CTSSuite;
+import test.sdo21.framework.DataObjectFactory;
 import test.sdo21.paramatizedTests.BaseSDOParamatizedTest;
+import test.sdo21.paramatizedTests.util.ParamatizedTestUtil;
 
 import commonj.sdo.DataObject;
 import commonj.sdo.helper.EqualityHelper;
+import commonj.sdo.helper.HelperContext;
 
 /**
  * TestCase tests shallow and deep copy functions of CopyHelper utilizing the
@@ -40,19 +44,34 @@
  */
 @RunWith(Parameterized.class)
 public class CopyEqualityTest extends BaseSDOParamatizedTest {
-    public CopyEqualityTest(DataObject testDO, String description) {
-        super(testDO, description);
+	private DataObject testDO;
+	private HelperContext helperContext;
+	
+    public CopyEqualityTest(DataObjectFactory factory, String description) {
+        super(factory, description);
     }
 
+    @Before
+    public void setUp () {
+    	testDO = factory.createTestAPIObject();
+    	helperContext = factory.getHelperContext();
+    	try {
+    	    ParamatizedTestUtil.populateFields(testDO, factory);
+    	} catch (Exception e) {
+    		
+    	}
+    }
+    
     /**
      * Performs a shallow copy and verifies that shallow equality is true
      * between the source and output for the copy.
      */
     @Test
     public void testShallowCopyShallowEquality() {
-        DataObject shallowCopy = CTSSuite.getTestHelper().getCopyHelper().copyShallow(testDO);
+        assertNotNull("data object not created correctly", testDO);
+        DataObject shallowCopy = helperContext.getCopyHelper().copyShallow(testDO);
 
-        EqualityHelper equalityH = CTSSuite.getTestHelper().getEqualityHelper();
+        EqualityHelper equalityH = helperContext.getEqualityHelper();
 
         assertTrue("Shallow copy did not result in shallow equality", equalityH.equalShallow(testDO, shallowCopy));
     }
@@ -64,9 +83,10 @@
      */
     @Test
     public void testShallowCopyDeepEquality() {
-        DataObject shallowCopy = CTSSuite.getTestHelper().getCopyHelper().copyShallow(testDO);
+        assertNotNull("data object not created correctly", testDO);
+        DataObject shallowCopy = helperContext.getCopyHelper().copyShallow(testDO);
 
-        EqualityHelper equalityH = CTSSuite.getTestHelper().getEqualityHelper();
+        EqualityHelper equalityH = helperContext.getEqualityHelper();
 
         // TODO: Determine why Deep equality results when Type is sequenced.
 
@@ -80,9 +100,10 @@
      */
     @Test
     public void testDeepCopyShallowEquality() {
-        DataObject deepCopy = CTSSuite.getTestHelper().getCopyHelper().copy(testDO);
+        assertNotNull("data object not created correctly", testDO);
+        DataObject deepCopy = helperContext.getCopyHelper().copy(testDO);
 
-        EqualityHelper equalityH = CTSSuite.getTestHelper().getEqualityHelper();
+        EqualityHelper equalityH = helperContext.getEqualityHelper();
 
         assertTrue("Deep copy did not result in shallow equality.", equalityH.equalShallow(testDO, deepCopy));
     }
@@ -93,9 +114,10 @@
      */
     @Test
     public void testDeepCopyDeepEquality() {
-        DataObject deepCopy = CTSSuite.getTestHelper().getCopyHelper().copy(testDO);
+        assertNotNull("data object not created correctly", testDO);
+        DataObject deepCopy = helperContext.getCopyHelper().copy(testDO);
 
-        EqualityHelper equalityH = CTSSuite.getTestHelper().getEqualityHelper();
+        EqualityHelper equalityH = helperContext.getEqualityHelper();
 
         assertTrue("Deep copy did not result in deep equality.", equalityH.equal(testDO, deepCopy));
     }

Modified: incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/DataFactoryTest.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/DataFactoryTest.java?view=diff&rev=536535&r1=536534&r2=536535
==============================================================================
--- incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/DataFactoryTest.java (original)
+++ incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/DataFactoryTest.java Wed May  9 07:04:49 2007
@@ -24,26 +24,37 @@
 import static org.junit.Assert.assertTrue;
 import static org.junit.Assert.fail;
 
+import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
 
-import test.sdo21.CTSSuite;
+import test.sdo21.framework.DataObjectFactory;
 import test.sdo21.paramatizedTests.BaseSDOParamatizedTest;
 import test.sdo21.paramatizedTests.util.ParamatizedTestUtil;
 
 import commonj.sdo.DataObject;
 import commonj.sdo.Type;
+import commonj.sdo.helper.HelperContext;
 
 /**
  * Junit 4.1 test case. Tests DataFactory APIs.
  */
 @RunWith(Parameterized.class)
 public class DataFactoryTest extends BaseSDOParamatizedTest {
-    public DataFactoryTest(DataObject testDO, String description) {
-        super(testDO, description);
+	private DataObject testDO;
+	private HelperContext helperContext;
+	
+    public DataFactoryTest(DataObjectFactory factory, String description) {
+        super(factory, description);
     }
 
+    @Before
+    public void setUp () {
+    	testDO = factory.createTestAPIObject();
+    	helperContext = factory.getHelperContext();
+    }
+    
     /**
      * Verify the proper operation of DataFactory.create(Type).
      */
@@ -51,7 +62,7 @@
     public void testDataFactoryCreateByType() {
         Type type = testDO.getType();
 
-        DataObject typeDO = CTSSuite.getTestHelper().getDataFactory().create(type);
+        DataObject typeDO = helperContext.getDataFactory().create(type);
 
         assertNotNull("DataFactory.create(Type) did not return a DataObject as expected", typeDO);
 
@@ -66,7 +77,7 @@
     public void testDataFactoryCreateByURI() {
         Type type = testDO.getType();
 
-        DataObject uriDO = CTSSuite.getTestHelper().getDataFactory().create(type.getURI(), type.getName());
+        DataObject uriDO = helperContext.getDataFactory().create(type.getURI(), type.getName());
 
         assertNotNull("DataFactory.create(URI, Name) did not return a DataObject as expected.", uriDO);
 
@@ -82,7 +93,7 @@
         Type type = testDO.getType();
 
         if (type.getInstanceClass() != null) {
-            DataObject classDO = CTSSuite.getTestHelper().getDataFactory().create(type.getInstanceClass());
+            DataObject classDO = helperContext.getDataFactory().create(type.getInstanceClass());
 
             assertNotNull("DataFactory.create(Class) did not return a DataObject as expected.", classDO);
 
@@ -98,10 +109,10 @@
     @Test
     public void testDataFactoryCreateDataTypeException() {
         try {
-            Type dataType = CTSSuite.getTestHelper().getTypeHelper().getType("commonj.sdo", "Int");
+            Type dataType = helperContext.getTypeHelper().getType("commonj.sdo", "Int");
             assertTrue("Could not test DataFactory.create(dataType) because dataType.isDataType = false", dataType
                 .isDataType());
-            CTSSuite.getTestHelper().getDataFactory().create(dataType);
+            helperContext.getDataFactory().create(dataType);
             fail("DataFactory.create(dataType) did not throw an Exception.");
         } catch (IllegalArgumentException e) {
             // Do nothing
@@ -118,11 +129,11 @@
     public void testDataFactoryCreateAbstractException() {
         try {
             Type abstractType =
-                CTSSuite.getTestHelper().getTypeHelper().getType(ParamatizedTestUtil.TEST_NAMESPACE, "Abstract");
+                helperContext.getTypeHelper().getType(ParamatizedTestUtil.TEST_NAMESPACE, "Abstract");
 
             assertTrue("Could not test DataFactory.create(abstractType) because abstractType.isAbstract = false",
                        abstractType.isAbstract());
-            CTSSuite.getTestHelper().getDataFactory().create(abstractType);
+            helperContext.getDataFactory().create(abstractType);
             fail("DataFactory.create(abstractType) did not throw an Exception.");
 
         } catch (IllegalArgumentException e) {

Modified: incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/DataGraphTest.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/DataGraphTest.java?view=diff&rev=536535&r1=536534&r2=536535
==============================================================================
--- incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/DataGraphTest.java (original)
+++ incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/DataGraphTest.java Wed May  9 07:04:49 2007
@@ -23,10 +23,13 @@
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
 
+import org.junit.Before;
+import org.junit.Ignore;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
 
+import test.sdo21.framework.DataObjectFactory;
 import test.sdo21.paramatizedTests.BaseSDOParamatizedTest;
 
 import commonj.sdo.ChangeSummary;
@@ -39,10 +42,17 @@
  */
 @RunWith(Parameterized.class)
 public class DataGraphTest extends BaseSDOParamatizedTest {
-    public DataGraphTest(DataObject testDO, String description) {
-        super(testDO, description);
+	private DataObject testDO;
+	
+    public DataGraphTest(DataObjectFactory factory, String description) {
+        super(factory, description);
     }
 
+    @Before
+    public void setUp () {
+    	testDO = factory.createTestAPIObject();
+    }
+    
     /**
      * Verify the proper function of DataGraph.createRootObject(Type).
      */
@@ -66,6 +76,10 @@
      * Verify the proper function of DataGraph.createRootObject(URI,Name).
      */
     @Test
+    // FIXME I don't thinkk we should be removing tests becuase they will in the future be deprecated
+    // This suite tests against the 2.1 spec as it stands -- so we may need to have some
+    // tests running against the default helper context if the API doesn't support selection of scope
+    @Ignore("(Uri,name) methods of DataGraph should be deprecated due to absence of HelperContext.")
     public void testCreateRootObjectByURI() {
         Type testType = testDO.getType();
 
@@ -90,7 +104,7 @@
         Type testType = testDO.getType();
 
         DataGraph dataGraph = test.sdo21.CTSSuite.getTestHelper().createDataGraph();
-        DataObject rootDO = dataGraph.createRootObject(testType);
+        dataGraph.createRootObject(testType);
 
         runChangeSummaryTests(dataGraph);
     }
@@ -100,11 +114,12 @@
      * DataGraph RootObject was created by URI
      */
     @Test
+    @Ignore("(Uri,name) methods of DataGraph should be deprecated due to absence of HelperContext.")
     public void testDataGraphGetChangeSummaryURI() {
         Type testType = testDO.getType();
 
         DataGraph dataGraph = test.sdo21.CTSSuite.getTestHelper().createDataGraph();
-        DataObject rootDO = dataGraph.createRootObject(testType.getURI(), testType.getName());
+        dataGraph.createRootObject(testType.getURI(), testType.getName());
 
         runChangeSummaryTests(dataGraph);
     }
@@ -114,11 +129,12 @@
      * DataGraph RootObject was created by Type
      */
     @Test
+    @Ignore("(Uri,name) methods of DataGraph should be deprecated due to absence of HelperContext.")
     public void testDataGraphGetType() {
         Type testType = testDO.getType();
 
         DataGraph dataGraph = test.sdo21.CTSSuite.getTestHelper().createDataGraph();
-        DataObject rootDO = dataGraph.createRootObject(testType);
+        dataGraph.createRootObject(testType);
 
         assertEquals("DataGraph.getType() did not return the expected Type.",
                      dataGraph.getType(testType.getURI(), testType.getName()),
@@ -130,11 +146,12 @@
      * DataGraph RootObject was created by URI
      */
     @Test
+    @Ignore("(Uri,name) methods of DataGraph should be deprecated due to absence of HelperContext.")
     public void testDataGraphGetURI() {
         Type testType = testDO.getType();
 
         DataGraph dataGraph = test.sdo21.CTSSuite.getTestHelper().createDataGraph();
-        DataObject rootDO = dataGraph.createRootObject(testType.getURI(), testType.getName());
+        dataGraph.createRootObject(testType.getURI(), testType.getName());
 
         assertEquals("DataGraph.getType() did not return the expected Type.",
                      dataGraph.getType(testType.getURI(), testType.getName()),

Modified: incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/PropertyTest.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/PropertyTest.java?view=diff&rev=536535&r1=536534&r2=536535
==============================================================================
--- incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/PropertyTest.java (original)
+++ incubator/tuscany/java/cts/sdo2.1/src/main/java/test/sdo21/paramatizedTests/api/PropertyTest.java Wed May  9 07:04:49 2007
@@ -28,14 +28,15 @@
 
 import java.util.List;
 
+import org.junit.Before;
 import org.junit.Test;
 import org.junit.Ignore;
 import org.junit.runner.RunWith;
 import org.junit.runners.Parameterized;
 
-import test.sdo21.CTSSuite;
 import test.sdo21.paramatizedTests.BaseSDOParamatizedTest;
 import test.sdo21.paramatizedTests.util.ParamatizedTestUtil;
+import test.sdo21.framework.DataObjectFactory;
 import test.sdo21.framework.TestHelper;
 
 import commonj.sdo.DataObject;
@@ -46,17 +47,23 @@
  */
 @RunWith(Parameterized.class)
 public class PropertyTest extends BaseSDOParamatizedTest {
-
-    public PropertyTest(DataObject testDO, String description) {
-        super(testDO, description);
+	private DataObject testDO;
+	
+    public PropertyTest(DataObjectFactory factory, String description) {
+        super(factory, description);
     }
 
+    @Before
+    public void setUp () {
+    	testDO = factory.createTestAPIObject();
+    }
+    
     /**
      * Verify Property.getDefault() for a newly created DataObject.
      */
     @Test
     public void testGetDefaultNewDO() {
-        verifyGetDefault(CTSSuite.getTestHelper().getDataFactory().create(testDO.getType()));
+        verifyGetDefault(factory.createTestAPIObject());
     }
 
     /**
@@ -67,8 +74,7 @@
         // Set the values for each Property using populateFields, then unset
         // them using unsetFields.
         try {
-
-            ParamatizedTestUtil.populateFields(testDO);
+            ParamatizedTestUtil.populateFields(testDO, factory);
         } catch (Exception e) {
             fail("could not populate DataObject fields");
         }
@@ -81,8 +87,8 @@
      */
     @Test
     public void testPropertyGetName() {
-        Property property = testDO.getProperty("children");
-        assertEquals("Property.getName() returned an unexpected value.", property.getName(), "children");
+        Property property = testDO.getInstanceProperty("containMany");
+        assertEquals("Property.getName() returned an unexpected value.", property.getName(), "containMany");
     }
 
     /**
@@ -90,7 +96,7 @@
      */
     @Test
     public void testPropertyGetType() {
-        Property property = testDO.getProperty("children");
+        Property property = testDO.getInstanceProperty("containMany");
 
         assertEquals("Property.getType() returned an unexpected value.", property.getType(), testDO.getType());
     }
@@ -100,7 +106,7 @@
      */
     @Test
     public void testPropertyIsManyTrue() {
-        Property property = testDO.getProperty("children");
+        Property property = testDO.getInstanceProperty("containMany");
         assertTrue("Property.isMany() returned an unexpected value.", property.isMany());
     }
 
@@ -109,7 +115,7 @@
      */
     @Test
     public void testPropertyIsManyFalse() {
-        Property property = testDO.getProperty("booleanVal");
+        Property property = testDO.getInstanceProperty("booleanVal");
         assertFalse("Property.isMany() returned an unexpected value.", property.isMany());
     }
 
@@ -118,7 +124,7 @@
      */
     @Test
     public void testPropertyIsContainmentTrue() {
-        Property property = testDO.getProperty("children");
+        Property property = testDO.getInstanceProperty("containMany");
         assertTrue("Property.isContainment() returned an unexpected value.", property.isContainment());
     }
 
@@ -127,8 +133,8 @@
      */
     @Test
     public void testPropertyIsContainmentFalse() {
-        Property property = testDO.getProperty("booleanVal");
-        assertFalse("Property.isContainment() returned an unexpected value.", property.isContainment());
+        Property property = testDO.getInstanceProperty("booleanVal");
+        assertFalse("Property.isContainment() returned true when expecting false.", property.isContainment());
     }
 
     /**
@@ -136,8 +142,8 @@
      */
     @Test
     public void testPropertyIsReadOnlyTrue() {
-        fail(TestHelper.INCOMPLETE_TEST_CASE_FAILURE);
-
+    	Property property = testDO.getInstanceProperty("readOnlyVal");
+        assertTrue("Property.isReadOnly() returned false when expecting true.", property.isReadOnly());
     }
 
     /**
@@ -145,8 +151,8 @@
      */
     @Test
     public void testPropertyIsReadOnlyFalse() {
-        Property property = testDO.getProperty("booleanVal");
-        assertFalse("Property.isReadOnly() returned an unexpected value.", property.isReadOnly());
+        Property property = testDO.getInstanceProperty("booleanVal");
+        assertFalse("Property.isReadOnly() returned true when expecting false.", property.isReadOnly());
     }
 
     /**
@@ -154,7 +160,7 @@
      */
     @Test
     public void testPropertyGetContainingType() {
-        Property property = testDO.getProperty("booleanVal");
+        Property property = testDO.getInstanceProperty("booleanVal");
         assertEquals("Property.getContainingType() returned an unexpected value.", property.getContainingType(), testDO
             .getType());
     }
@@ -164,7 +170,7 @@
      */
     @Test
     public void testPropertyGetAliasNamesEmpty() {
-        Property property = testDO.getProperty("booleanVal");
+        Property property = testDO.getInstanceProperty("booleanVal");
         assertEquals("Property.getAliasNames() returned a List of unexpected size.", 0, property.getAliasNames().size());
     }
 
@@ -174,7 +180,7 @@
     @Ignore("Awaiting implementation of SDOUtil.addAliasName")
     @Test
     public void testPropertyGetAliasNames() {
-        List aliasNames = testDO.getProperty("decimalVal2").getAliasNames();
+        List aliasNames = testDO.getInstanceProperty("decimalVal2").getAliasNames();
         assertEquals("Property.getAliasNames() returned a List of unexpected size.", 1, aliasNames.size());
 
         String alias = (String)aliasNames.get(0);
@@ -186,7 +192,7 @@
      */
     @Test
     public void testPropertyGetOppositeNull() {
-        Property property = testDO.getProperty("booleanVal");
+        Property property = testDO.getInstanceProperty("booleanVal");
         assertNull("Property.getOpposite() did not return null as expected.", property.getOpposite());
     }
 
@@ -213,14 +219,15 @@
 
         for (int i = 0; i < properties.size(); i++) {
             property = (Property)properties.get(i);
-
-            if (property.isMany()) {
-                assertNull("Property.getDefault() did not return null for many-valued Property " + property.getName()
-                    + "'.", property.getDefault());
-            } else {
-                assertEquals("Property.getDefault() did not return the correct default value for Property '" + property
-                    .getName()
-                    + "'.", testedDO.get(property), property.getDefault());
+            if (!(property.isReadOnly())) {
+                if (property.isMany()) {
+                    assertNull("Property.getDefault() did not return null for many-valued Property " + property.getName()
+                        + "'.", property.getDefault());
+                } else {
+                    assertEquals("Property.getDefault() did not return the correct default value for Property '" + property
+                        .getName()
+                        + "'.", testedDO.get(property), property.getDefault());
+                }
             }
         }
     }
@@ -234,8 +241,14 @@
 
     private void unsetFields(DataObject unsetDO) {
         List properties = unsetDO.getInstanceProperties();
+        Property currProp;
 
         for (int i = 0; i < properties.size(); i++)
-            unsetDO.unset(i);
+        {
+        	currProp = (Property) properties.get(i);
+        	if (!(currProp.isReadOnly())) {
+               unsetDO.unset(i);
+        	}
+        }
     }
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org