You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by sv...@apache.org on 2007/02/23 19:52:48 UTC
svn commit: r511048 [2/2] - in
/incubator/tuscany/branches/sca-java-integration/sca/kernel/core: ./
src/main/java/org/apache/tuscany/core/databinding/javabeans/
src/main/java/org/apache/tuscany/core/implementation/processor/
src/main/java/org/apache/tu...
Modified: incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/PropertyLoaderTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/PropertyLoaderTestCase.java?view=diff&rev=511048&r1=511047&r2=511048
==============================================================================
--- incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/PropertyLoaderTestCase.java (original)
+++ incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/PropertyLoaderTestCase.java Fri Feb 23 10:52:46 2007
@@ -19,22 +19,26 @@
package org.apache.tuscany.core.loader;
import java.io.StringReader;
+import java.io.StringWriter;
+
+import javax.xml.namespace.QName;
import javax.xml.stream.XMLInputFactory;
-import javax.xml.stream.XMLStreamReader;
import javax.xml.stream.XMLStreamException;
-import javax.xml.namespace.QName;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.parsers.DocumentBuilder;
+import javax.xml.stream.XMLStreamReader;
+import javax.xml.transform.TransformerFactory;
+import javax.xml.transform.dom.DOMSource;
+import javax.xml.transform.stream.StreamResult;
import junit.framework.TestCase;
+import org.apache.tuscany.core.databinding.javabeans.JavaBean2DOMNodeTransformer;
import org.apache.tuscany.spi.loader.LoaderRegistry;
import org.apache.tuscany.spi.model.Property;
-import org.apache.tuscany.spi.util.stax.StaxUtil;
import org.easymock.EasyMock;
-import org.w3c.dom.Document;
import org.w3c.dom.Element;
+import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
+import org.w3c.dom.Text;
/**
* @version $Rev: 502055 $ $Date: 2007-02-01 05:37:32 +0530 (Thu, 01 Feb 2007) $
@@ -43,23 +47,85 @@
private PropertyLoader propertyLoader;
private XMLInputFactory xmlFactory;
- public void testPropertyLoading() throws Exception {
+
+ public void testPropertyLoading_SimpleType() throws Exception {
String xml = "<tus:property xmlns:foo='http://foo.com' "
- + "xmlns:tus='http://www.osoa.org/xmlns/sca/1.0'"
- + " name='TestProperty' many='true' type='foo:TestType'>"
+ + "xmlns:tus='http://www.osoa.org/xmlns/sca/1.0' "
+ + "xmlns:xs='http://www.w3.org/2001/XMLSchema' "
+ + " name='TestProperty' type='xs:string'>"
+ + "TestPropertyValue"
+ + "</tus:property>";
+
+ XMLStreamReader reader = getReader(xml);
+ Property<?> aProperty = propertyLoader.load(null, null, reader, null);
+
+ assertEquals("TestProperty", aProperty.getName());
+ assertEquals(new QName("http://www.w3.org/2001/XMLSchema", "string", "xs"), aProperty.getXmlType());
+ assertEquals(false, aProperty.isMustSupply());
+ assertEquals(false, aProperty.isMany());
+
+ Element root = aProperty.getDefaultValues().get(0).getDocumentElement();
+
+ NodeList childNodes = root.getChildNodes();
+ assertEquals(1, childNodes.getLength());
+
+ Text t = (Text) childNodes.item(0);
+ assertEquals("TestPropertyValue", t.getTextContent());
+ }
+
+
+ public void testPropertyLoading_Type() throws Exception {
+ String xml = "<tus:property xmlns:foo='http://foo.com' "
+ + "xmlns:tus='http://www.osoa.org/xmlns/sca/1.0' "
+ + "xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' "
+ + " name='complexFoo' type='foo:MyComplexType'>"
+ + "<MyComplexPropertyValue1 xsi:type='foo:MyComplexType' attr='bar'>"
+ + "<foo:a>AValue</foo:a>"
+ + "<foo:b>InterestingURI</foo:b>"
+ + "</MyComplexPropertyValue1>"
+ + "</tus:property>";
+
+ XMLStreamReader reader = getReader(xml);
+ Property<?> aProperty = propertyLoader.load(null, null, reader, null);
+ assertEquals("complexFoo", aProperty.getName());
+ assertEquals(new QName("http://foo.com", "MyComplexType", "foo"), aProperty.getXmlType());
+ assertEquals(false, aProperty.isMustSupply());
+ assertEquals(false, aProperty.isMany());
+
+ Element root = aProperty.getDefaultValues().get(0).getDocumentElement();
+
+ NodeList childNodes = root.getChildNodes();
+ assertEquals(2, childNodes.getLength());
+
+ Element e = (Element) childNodes.item(0);
+ assertEquals("http://foo.com", e.getNamespaceURI());
+ assertEquals("a", e.getLocalName());
+ assertEquals("AValue", e.getTextContent());
+ e = (Element) childNodes.item(1);
+ assertEquals("http://foo.com", e.getNamespaceURI());
+ assertEquals("b", e.getLocalName());
+ assertEquals("InterestingURI", e.getTextContent());
+ }
+
+ public void testPropertyLoading_Element() throws Exception {
+ String xml = "<tus:property xmlns:foo='http://foo.com' "
+ + "xmlns:tus='http://www.osoa.org/xmlns/sca/1.0'"
+ + " name='TestProperty' element='foo:TestElement'>\n"
+ + "<foo:TestElement>"
+ "<foo:a>aValue</foo:a>"
+ "<foo:b>InterestingURI</foo:b>"
+ + "</foo:TestElement>"
+ "</tus:property>";
-
XMLStreamReader reader = getReader(xml);
Property<?> aProperty = propertyLoader.load(null, null, reader, null);
+ Element root = aProperty.getDefaultValues().get(0).getDocumentElement();
+
assertEquals("TestProperty", aProperty.getName());
- assertEquals(new QName("http://foo.com", "TestType", "foo"), aProperty.getXmlType());
- assertEquals(false, aProperty.isNoDefault());
- assertEquals(true, aProperty.isMany());
+ assertEquals(new QName("http://foo.com", "TestElement", "foo"), aProperty.getXmlElement());
+ assertEquals(false, aProperty.isMustSupply());
+ assertEquals(false, aProperty.isMany());
- Element root = aProperty.getDefaultValue().getDocumentElement();
NodeList childNodes = root.getChildNodes();
assertEquals(2, childNodes.getLength());
@@ -76,7 +142,7 @@
public void testPropertyLoadingNoDefault() throws Exception {
String xml = "<tus:property xmlns:foo='http://foo.com' "
+ "xmlns:tus='http://www.osoa.org/xmlns/sca/1.0'"
- + " name='TestProperty' many='true' type='foo:TestType' noDefault='true'>"
+ + " name='TestProperty' type='foo:TestType' mustSupply='true'>"
+ "<foo:a>aValue</foo:a>"
+ "<foo:b>InterestingURI</foo:b>"
+ "</tus:property>";
@@ -100,5 +166,15 @@
super.setUp();
xmlFactory = XMLInputFactory.newInstance();
propertyLoader = new PropertyLoader(EasyMock.createMock(LoaderRegistry.class));
+ }
+
+ private void printNode(Node node) throws Exception {
+ javax.xml.transform.Transformer transformer =
+ TransformerFactory.newInstance().newTransformer();
+ JavaBean2DOMNodeTransformer java2DomTransformer = new JavaBean2DOMNodeTransformer();
+ StringWriter sw = new StringWriter();
+ transformer.transform(new DOMSource(node), new StreamResult(sw));
+
+ System.out.println(sw.toString());
}
}
Modified: incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/PropertyParsingTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/PropertyParsingTestCase.java?view=diff&rev=511048&r1=511047&r2=511048
==============================================================================
--- incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/PropertyParsingTestCase.java (original)
+++ incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/PropertyParsingTestCase.java Fri Feb 23 10:52:46 2007
@@ -47,7 +47,7 @@
+ "</property>";
XMLStreamReader reader = getReader(xml);
- StaxUtil.loadPropertyValue(reader, root);
+ StaxUtil.loadPropertyValue(reader, root, root.getOwnerDocument());
NodeList childNodes = root.getChildNodes();
assertEquals(2, childNodes.getLength());
Modified: incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/StringParserPropertyFactoryTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/StringParserPropertyFactoryTestCase.java?view=diff&rev=511048&r1=511047&r2=511048
==============================================================================
--- incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/StringParserPropertyFactoryTestCase.java (original)
+++ incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/loader/StringParserPropertyFactoryTestCase.java Fri Feb 23 10:52:46 2007
@@ -18,15 +18,17 @@
*/
package org.apache.tuscany.core.loader;
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
+import java.util.ArrayList;
+import java.util.List;
+
+import junit.framework.TestCase;
import org.apache.tuscany.spi.ObjectFactory;
import org.apache.tuscany.spi.model.Property;
import org.apache.tuscany.spi.model.PropertyValue;
-
-import junit.framework.TestCase;
import org.easymock.EasyMock;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
/**
* @version $Rev$ $Date$
@@ -39,7 +41,10 @@
EasyMock.expect(document.getDocumentElement()).andReturn(element);
EasyMock.expect(element.getTextContent()).andReturn(value);
EasyMock.replay(document, element);
- return new PropertyValue<T>(null, document);
+
+ List<Document> valueList = new ArrayList<Document>();
+ valueList.add(document);
+ return new PropertyValue<T>(null, valueList);
}
public void testInteger() throws Exception {
Modified: incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/property/PropertyHelperTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/property/PropertyHelperTestCase.java?view=diff&rev=511048&r1=511047&r2=511048
==============================================================================
--- incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/property/PropertyHelperTestCase.java (original)
+++ incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/property/PropertyHelperTestCase.java Fri Feb 23 10:52:46 2007
@@ -36,7 +36,7 @@
*/
public class PropertyHelperTestCase extends TestCase {
private static final String IPO_XML =
- "<?xml version=\"1.0\"?>" + "<ipo:purchaseOrder"
+ "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" + "<ipo:purchaseOrder"
+ " xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\""
+ " xmlns:ipo=\"http://www.example.com/IPO\""
+ " xsi:schemaLocation=\"http://www.example.com/IPO ipo.xsd\""
Modified: incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/property/SimplePropertyObjectFactoryTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/property/SimplePropertyObjectFactoryTestCase.java?view=diff&rev=511048&r1=511047&r2=511048
==============================================================================
--- incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/property/SimplePropertyObjectFactoryTestCase.java (original)
+++ incubator/tuscany/branches/sca-java-integration/sca/kernel/core/src/test/java/org/apache/tuscany/core/property/SimplePropertyObjectFactoryTestCase.java Fri Feb 23 10:52:46 2007
@@ -18,6 +18,9 @@
*/
package org.apache.tuscany.core.property;
+import java.util.ArrayList;
+import java.util.List;
+
import org.w3c.dom.Document;
import org.w3c.dom.Element;
@@ -39,7 +42,10 @@
EasyMock.expect(document.getDocumentElement()).andReturn(element);
EasyMock.expect(element.getTextContent()).andReturn(value);
EasyMock.replay(document, element);
- return new PropertyValue<T>(null, document);
+
+ List<Document> valueList = new ArrayList<Document>();
+ valueList.add(document);
+ return new PropertyValue<T>(null, valueList);
}
public void testInteger() throws Exception {
---------------------------------------------------------------------
To unsubscribe, e-mail: tuscany-commits-unsubscribe@ws.apache.org
For additional commands, e-mail: tuscany-commits-help@ws.apache.org