You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by fr...@apache.org on 2007/08/17 19:34:53 UTC
svn commit: r567093 - in /incubator/tuscany/java/sdo/impl/src/test:
java/org/apache/tuscany/sdo/test/SubstitutionValuesTestCase.java
resources/SubstitutionValues.xsd resources/substitutionValues1.xml
resources/substitutionValues2.xml
Author: frankb
Date: Fri Aug 17 10:34:52 2007
New Revision: 567093
URL: http://svn.apache.org/viewvc?view=rev&rev=567093
Log:
Fix for TUSCANY-1498
Added:
incubator/tuscany/java/sdo/impl/src/test/resources/substitutionValues1.xml
incubator/tuscany/java/sdo/impl/src/test/resources/substitutionValues2.xml
Modified:
incubator/tuscany/java/sdo/impl/src/test/java/org/apache/tuscany/sdo/test/SubstitutionValuesTestCase.java
incubator/tuscany/java/sdo/impl/src/test/resources/SubstitutionValues.xsd
Modified: incubator/tuscany/java/sdo/impl/src/test/java/org/apache/tuscany/sdo/test/SubstitutionValuesTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/impl/src/test/java/org/apache/tuscany/sdo/test/SubstitutionValuesTestCase.java?view=diff&rev=567093&r1=567092&r2=567093
==============================================================================
--- incubator/tuscany/java/sdo/impl/src/test/java/org/apache/tuscany/sdo/test/SubstitutionValuesTestCase.java (original)
+++ incubator/tuscany/java/sdo/impl/src/test/java/org/apache/tuscany/sdo/test/SubstitutionValuesTestCase.java Fri Aug 17 10:34:52 2007
@@ -19,29 +19,65 @@
*/
package org.apache.tuscany.sdo.test;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.net.URL;
import junit.framework.TestCase;
-import org.apache.tuscany.sdo.util.SDOUtil;
+import org.apache.tuscany.sdo.api.SDOUtil;
import commonj.sdo.DataObject;
+import commonj.sdo.Property;
+import commonj.sdo.Sequence;
import commonj.sdo.Type;
-import commonj.sdo.helper.DataFactory;
+import commonj.sdo.helper.HelperContext;
+import commonj.sdo.helper.XMLHelper;
import commonj.sdo.helper.XSDHelper;
public final class SubstitutionValuesTestCase extends TestCase
{
public void test() throws IOException
{
+ HelperContext hc = SDOUtil.createHelperContext();
URL url = getClass().getResource("/SubstitutionValues.xsd");
- XSDHelper.INSTANCE.define(url.openStream(), url.toString());
+ XSDHelper xsdHelper = hc.getXSDHelper();
+ xsdHelper.define(url.openStream(), url.toString());
- final DataObject object = DataFactory.INSTANCE.create("http://www.apache.org/tuscany/SubstitutionValues", "TestObject");
- final Type type = object.getType();
+ XMLHelper xmlHelper = hc.getXMLHelper();
+ DataObject loadedObject =
+ xmlHelper.load(getClass().getResourceAsStream("/substitutionValues1.xml")).getRootObject();
+ Type type = loadedObject.getType();
+ Sequence groupHeadSubstitutionValues = SDOUtil.getSubstitutionValues(loadedObject, type.getProperty("groupHead"));
+ assertNotNull(groupHeadSubstitutionValues);
+ assertNull(SDOUtil.getSubstitutionValues(loadedObject, type.getProperty("nonGroupHead")));
- assertNotNull( SDOUtil.getSubstitutionValues(object, type.getProperty("groupHead")));
- assertNull( SDOUtil.getSubstitutionValues(object, type.getProperty("nonGroupHead")));
+ String nsURI = "http://www.apache.org/tuscany/SubstitutionValues";
+ DataObject createdObject = hc.getDataFactory().create(nsURI, "TestObject");
+ Property groupMemberProperty = xsdHelper.getGlobalProperty(nsURI, "groupMember", true);
+ createdObject.set(groupMemberProperty, groupHeadSubstitutionValues.getValue(0));
+ createdObject.setString("nonGroupHead", loadedObject.getString("nonGroupHead"));
+
+ assertTrue(hc.getEqualityHelper().equal(loadedObject, createdObject));
+
+ ByteArrayOutputStream loadedBaos = new ByteArrayOutputStream();
+ xmlHelper.save(loadedObject, nsURI, "testObject", loadedBaos);
+ ByteArrayOutputStream createdBaos = new ByteArrayOutputStream();
+ xmlHelper.save(createdObject, nsURI, "testObject", createdBaos);
+ assertTrue(
+ TestUtil.equalXmlFiles(
+ new ByteArrayInputStream(loadedBaos.toByteArray()),
+ new ByteArrayInputStream(createdBaos.toByteArray())));
+
+ loadedObject =
+ xmlHelper.load(getClass().getResourceAsStream("/substitutionValues2.xml")).getRootObject();
+ groupHeadSubstitutionValues = SDOUtil.getSubstitutionValues(loadedObject, type.getProperty("groupHead"));
+
+ createdObject = hc.getDataFactory().create(nsURI, "TestObject");
+ createdObject.set("groupHead", groupHeadSubstitutionValues.getValue(0));
+ createdObject.setString("nonGroupHead", loadedObject.getString("nonGroupHead"));
+
+ assertTrue(hc.getEqualityHelper().equal(loadedObject, createdObject));
}
}
Modified: incubator/tuscany/java/sdo/impl/src/test/resources/SubstitutionValues.xsd
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/impl/src/test/resources/SubstitutionValues.xsd?view=diff&rev=567093&r1=567092&r2=567093
==============================================================================
--- incubator/tuscany/java/sdo/impl/src/test/resources/SubstitutionValues.xsd (original)
+++ incubator/tuscany/java/sdo/impl/src/test/resources/SubstitutionValues.xsd Fri Aug 17 10:34:52 2007
@@ -19,6 +19,7 @@
specific language governing permissions and limitations
under the License.
-->
+ <element name="testObject" type="sv:TestObject"/>
<element name="groupHead" type="string"/>
<complexType name="TestObject">
<sequence>
Added: incubator/tuscany/java/sdo/impl/src/test/resources/substitutionValues1.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/impl/src/test/resources/substitutionValues1.xml?view=auto&rev=567093
==============================================================================
--- incubator/tuscany/java/sdo/impl/src/test/resources/substitutionValues1.xml (added)
+++ incubator/tuscany/java/sdo/impl/src/test/resources/substitutionValues1.xml Fri Aug 17 10:34:52 2007
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="ASCII"?>
+<sv:testObject xmlns:sv="http://www.apache.org/tuscany/SubstitutionValues">
+ <sv:groupMember>gm</sv:groupMember>
+ <sv:nonGroupHead>ngh</sv:nonGroupHead>
+</sv:testObject>
Added: incubator/tuscany/java/sdo/impl/src/test/resources/substitutionValues2.xml
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sdo/impl/src/test/resources/substitutionValues2.xml?view=auto&rev=567093
==============================================================================
--- incubator/tuscany/java/sdo/impl/src/test/resources/substitutionValues2.xml (added)
+++ incubator/tuscany/java/sdo/impl/src/test/resources/substitutionValues2.xml Fri Aug 17 10:34:52 2007
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="ASCII"?>
+<sv:testObject xmlns:sv="http://www.apache.org/tuscany/SubstitutionValues">
+ <sv:groupHead>gh</sv:groupHead>
+ <sv:nonGroupHead>ngh</sv:nonGroupHead>
+</sv:testObject>
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org