You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tuscany.apache.org by rf...@apache.org on 2006/08/17 07:43:00 UTC

svn commit: r432155 [3/3] - in /incubator/tuscany/java/sca/databinding/databinding-framework: ./ src/main/java/org/apache/tuscany/databinding/ src/main/java/org/apache/tuscany/databinding/annotation/ src/main/java/org/apache/tuscany/databinding/extensi...

Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/impl/MediatorImplTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/impl/MediatorImplTestCase.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/impl/MediatorImplTestCase.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/impl/MediatorImplTestCase.java Wed Aug 16 22:42:57 2006
@@ -24,11 +24,17 @@
 import junit.framework.Assert;
 import junit.framework.TestCase;
 
+import org.apache.tuscany.databinding.DataBindingRegistry;
+import org.apache.tuscany.databinding.TransformationContext;
 import org.apache.tuscany.databinding.TransformerRegistry;
 import org.apache.tuscany.databinding.trax.Node2String;
 import org.apache.tuscany.databinding.trax.Node2Writer;
 import org.apache.tuscany.databinding.trax.String2SAX;
+import org.apache.tuscany.databinding.xml.DOMBinding;
 import org.apache.tuscany.databinding.xml.SAX2DOMPipe;
+import org.apache.tuscany.databinding.xml.SAXContentHandlerBinding;
+import org.apache.tuscany.databinding.xml.WriterBinding;
+import org.apache.tuscany.databinding.xml.XMLStringBinding;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 import org.w3c.dom.Node;
@@ -49,14 +55,16 @@
             + "</ipo:purchaseOrder>";
 
     private MediatorImpl mediator;
+    private DataBindingRegistry bindingRegistry;
 
-    /*
-     * (non-Javadoc)
-     * 
-     * @see junit.framework.TestCase#setUp()
-     */
     protected void setUp() throws Exception {
         super.setUp();
+        bindingRegistry = new DataBindingRegistryImpl();
+        bindingRegistry.register(new DOMBinding());
+        bindingRegistry.register(new SAXContentHandlerBinding());
+        bindingRegistry.register(new WriterBinding());
+        bindingRegistry.register(new XMLStringBinding());
+        
         TransformerRegistry registry = new TransformerRegistryImpl();
         registry.registerTransformer(new String2SAX());
         registry.registerTransformer(new SAX2DOMPipe());
@@ -67,8 +75,17 @@
         mediator.setRegistry(registry);
     }
 
+    @SuppressWarnings("unchecked")
+    private TransformationContext createTransformationContext(Class sourceType, Class targetType) {
+        TransformationContext context = new TransformationContextImpl();
+        context.setSourceDataBinding(bindingRegistry.introspectType(sourceType));
+        context.setTargetDataBinding(bindingRegistry.introspectType(targetType));
+        return context;
+    }
+
     public void testTransform1() {
-        Object node = mediator.mediate(IPO_XML, String.class, Node.class, null);
+        TransformationContext context = createTransformationContext(String.class, Node.class);
+        Object node = mediator.mediate(IPO_XML, context.getSourceDataBinding(), context.getTargetDataBinding());
         Assert.assertTrue(node instanceof Document);
         Element root = ((Document) node).getDocumentElement();
         Assert.assertEquals(root.getNamespaceURI(), "http://www.example.com/IPO");
@@ -76,8 +93,9 @@
     }
 
     public void testTransform2() {
+        TransformationContext context = createTransformationContext(String.class, Writer.class);
         Writer writer = new StringWriter();
-        mediator.mediate(IPO_XML, writer, String.class, Writer.class, null);
+        mediator.mediate(IPO_XML, writer, context.getSourceDataBinding(), context.getTargetDataBinding());
         String str = writer.toString();
         Assert.assertTrue(str != null && str.indexOf("<shipDate>1999-12-05</shipDate>") != -1);
     }

Modified: incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/trax/Node2StringTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/trax/Node2StringTestCase.java?rev=432155&r1=432154&r2=432155&view=diff
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/trax/Node2StringTestCase.java (original)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/trax/Node2StringTestCase.java Wed Aug 16 22:42:57 2006
@@ -18,19 +18,15 @@
  */
 package org.apache.tuscany.databinding.trax;
 
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
+import junit.framework.TestCase;
 
+import org.apache.tuscany.databinding.xml.DOMHelper;
 import org.w3c.dom.Document;
 import org.w3c.dom.Element;
 
-import junit.framework.TestCase;
-
 public class Node2StringTestCase extends TestCase {
     public void testTransformation() throws Exception {
-        DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
-        DocumentBuilder builder = factory.newDocumentBuilder();
-        Document document = builder.newDocument();
+        Document document = DOMHelper.newDocument();
         Element element = document.createElementNS("http://ns1", "test");
         document.appendChild(element);
 

Added: incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/util/PropertyMediatorTestCase.java
URL: http://svn.apache.org/viewvc/incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/util/PropertyMediatorTestCase.java?rev=432155&view=auto
==============================================================================
--- incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/util/PropertyMediatorTestCase.java (added)
+++ incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/util/PropertyMediatorTestCase.java Wed Aug 16 22:42:57 2006
@@ -0,0 +1,77 @@
+/**
+ *
+ * Copyright 2006 The Apache Software Foundation or its licensors as applicable
+ *
+ *  Licensed 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.databinding.util;
+
+import java.io.StringReader;
+
+import javax.xml.namespace.QName;
+import javax.xml.stream.FactoryConfigurationError;
+import javax.xml.stream.XMLInputFactory;
+import javax.xml.stream.XMLStreamConstants;
+import javax.xml.stream.XMLStreamException;
+import javax.xml.stream.XMLStreamReader;
+
+import junit.framework.Assert;
+import junit.framework.TestCase;
+
+import org.apache.tuscany.databinding.xml.XMLStreamReader2Node;
+import org.w3c.dom.Node;
+
+/**
+ * 
+ */
+public class PropertyMediatorTestCase extends TestCase {
+    private static final String xml = "<?xml version=\"1.0\" encoding=\"ASCII\"?>" +
+
+    "<composite  xmlns=\"http://www.osoa.org/xmlns/sca/1.0\" xmlns:foo=\"http://foo.com\" name=\"AccountServices\">"
+            + "<property name=\"complexFoo\" type=\"foo:MyComplexType\"><foo:a>AValue</foo:a><foo:b>InterestingURI</foo:b>"
+            + "</property></composite>";
+
+    private QName name = new QName("http://www.osoa.org/xmlns/sca/1.0", "property");
+
+    /**
+     * @see junit.framework.TestCase#setUp()
+     */
+    protected void setUp() throws Exception {
+        super.setUp();
+    }
+
+    public void testProperty() throws FactoryConfigurationError, XMLStreamException {
+        XMLInputFactory factory = XMLInputFactory.newInstance();
+        XMLStreamReader reader = factory.createXMLStreamReader(new StringReader(xml));
+        
+        boolean fragmentOnly = false;
+        
+        while (fragmentOnly) {
+            int event = reader.getEventType();
+            if (event == XMLStreamConstants.START_ELEMENT) {
+                if (reader.getName().equals(name))
+                    break;
+            }
+            if (reader.hasNext())
+                reader.next();
+            else
+                return;
+        }
+
+        XMLStreamReader2Node t1 = new XMLStreamReader2Node();
+        Node node = t1.transform(reader, null);
+        Assert.assertNotNull(node);
+    }
+
+}

Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/util/PropertyMediatorTestCase.java
------------------------------------------------------------------------------
    svn:eol-style = native

Propchange: incubator/tuscany/java/sca/databinding/databinding-framework/src/test/java/org/apache/tuscany/databinding/util/PropertyMediatorTestCase.java
------------------------------------------------------------------------------
    svn:keywords = Rev Date



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