You are viewing a plain text version of this content. The canonical link for it is here.
Posted to woden-dev@ws.apache.org by gt...@apache.org on 2007/01/17 18:50:45 UTC

svn commit: r497097 - in /incubator/woden/trunk/java/test/org/apache/woden: tests/AllWodenTestsDOM.java wsdl20/ElementDeclarationTest.java wsdl20/TypeDefinitionTest.java wsdl20/xml/TypesElementTest.java

Author: gturrell
Date: Wed Jan 17 09:50:40 2007
New Revision: 497097

URL: http://svn.apache.org/viewvc?view=rev&rev=497097
Log:
WODEN-53 Created unit tests for API methods of woden wsdl20 ElementDeclaration, TypeDefinition and TypesElement.

Added:
    incubator/woden/trunk/java/test/org/apache/woden/wsdl20/ElementDeclarationTest.java
    incubator/woden/trunk/java/test/org/apache/woden/wsdl20/TypeDefinitionTest.java
    incubator/woden/trunk/java/test/org/apache/woden/wsdl20/xml/TypesElementTest.java
Modified:
    incubator/woden/trunk/java/test/org/apache/woden/tests/AllWodenTestsDOM.java

Modified: incubator/woden/trunk/java/test/org/apache/woden/tests/AllWodenTestsDOM.java
URL: http://svn.apache.org/viewvc/incubator/woden/trunk/java/test/org/apache/woden/tests/AllWodenTestsDOM.java?view=diff&rev=497097&r1=497096&r2=497097
==============================================================================
--- incubator/woden/trunk/java/test/org/apache/woden/tests/AllWodenTestsDOM.java (original)
+++ incubator/woden/trunk/java/test/org/apache/woden/tests/AllWodenTestsDOM.java Wed Jan 17 09:50:40 2007
@@ -28,8 +28,10 @@
 import org.apache.woden.internal.wsdl20.validation.WSDLDocumentValidatorTest;
 import org.apache.woden.resolver.SimpleURIResolverTest;
 import org.apache.woden.wsdl20.DescriptionTest;
+import org.apache.woden.wsdl20.ElementDeclarationTest;
 import org.apache.woden.wsdl20.EndpointTest;
 import org.apache.woden.wsdl20.ServiceTest;
+import org.apache.woden.wsdl20.TypeDefinitionTest;
 import org.apache.woden.wsdl20.extensions.http.HTTPBindingExtensionsTest;
 import org.apache.woden.wsdl20.extensions.http.HTTPBindingFaultExtensionsTest;
 import org.apache.woden.wsdl20.extensions.http.HTTPBindingMessageReferenceExtensionsTest;
@@ -47,6 +49,7 @@
 import org.apache.woden.wsdl20.xml.IncludeElementTest;
 import org.apache.woden.wsdl20.xml.NameAttributeTest;
 import org.apache.woden.wsdl20.xml.ServiceElementTest;
+import org.apache.woden.wsdl20.xml.TypesElementTest;
 import org.apache.woden.xml.IntOrTokenAttrTest;
 import org.apache.woden.xml.TokenAttrTest;
 
@@ -115,6 +118,9 @@
     addTest(ServiceTest.suite());
     addTest(DescriptionTest.suite());
     addTest(DescriptiontElementTest.suite());
+    addTest(TypesElementTest.suite());
+    addTest(ElementDeclarationTest.suite());
+    addTest(TypeDefinitionTest.suite());
     //TODO in-progress 30May06 tests for BindingOpExt and BindingMsgRefExt
   }
 

Added: incubator/woden/trunk/java/test/org/apache/woden/wsdl20/ElementDeclarationTest.java
URL: http://svn.apache.org/viewvc/incubator/woden/trunk/java/test/org/apache/woden/wsdl20/ElementDeclarationTest.java?view=auto&rev=497097
==============================================================================
--- incubator/woden/trunk/java/test/org/apache/woden/wsdl20/ElementDeclarationTest.java (added)
+++ incubator/woden/trunk/java/test/org/apache/woden/wsdl20/ElementDeclarationTest.java Wed Jan 17 09:50:40 2007
@@ -0,0 +1,101 @@
+/**
+ * Copyright 2005 Apache Software Foundation 
+ *
+ * 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.woden.wsdl20;
+
+import java.net.URI;
+
+import javax.xml.namespace.QName;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+import org.apache.woden.internal.wsdl20.ElementDeclarationImpl;
+
+/**
+ * Unit tests for the implementation of ElementDeclaration interface.
+ * 
+ * @author Graham Turrell (gturrell@apache.org)
+ */
+public class ElementDeclarationTest extends TestCase {
+
+	private ElementDeclaration fElementDeclaration = null;
+	private URI fTypeSystem = null;
+	
+	public static Test suite()
+	{
+	   return new TestSuite(ElementDeclarationTest.class);
+	}
+	   
+    /*
+     * @see TestCase#setUp()
+     */
+    protected void setUp() throws Exception 
+    {
+        super.setUp();
+ 
+        fElementDeclaration = new ElementDeclarationImpl();
+		fTypeSystem = new URI("http://www.w3.org/2001/XMLSchema"); 
+    }
+
+    /*
+     * @see TestCase#tearDown()
+     */
+    protected void tearDown() throws Exception 
+    {
+        super.tearDown();
+    }
+    
+	/*
+	 * Test that getContent() correctly returns the assigned ElementDeclaration content object
+	 */
+	public void testGetContent()
+	{
+		String content = "edContentObject";
+		((ElementDeclarationImpl) fElementDeclaration).setContent(content);
+		assertEquals("The ElementDeclaration content Object differs from that set -", content, fElementDeclaration.getContent());
+	}
+	
+	/*
+	 * Test that getContentModel() correctly returns the assigned ElementDeclaration content model reference
+	 */
+	public void testGetContentModel()
+	{
+		String contentModel = ElementDeclaration.API_APACHE_WS_XS; // one of the presets available
+		((ElementDeclarationImpl) fElementDeclaration).setContentModel(contentModel);
+		assertEquals("The ElementDeclaration content model String differs from that set -", contentModel, fElementDeclaration.getContentModel());
+	}
+	
+	/*
+	 * Test that getName() correctly returns the assigned ElementDeclaration name
+	 */
+	public void testGetName()
+	{	
+		((ElementDeclarationImpl)fElementDeclaration).setName(new QName("edName"));
+		assertEquals("The ElementDeclaration name QName differs from that set-", "edName", fElementDeclaration.getName().toString());
+	}
+	
+	/*
+	 * Test that getSystem() correctly returns the assigned ElementDeclaration type system
+	 */
+	public void testGetSystem()
+	{
+		((ElementDeclarationImpl) fElementDeclaration).setSystem(fTypeSystem);
+		assertEquals("The ElementDeclaration type system URI differs from that set-", fTypeSystem, fElementDeclaration.getSystem());
+	}
+	
+
+}

Added: incubator/woden/trunk/java/test/org/apache/woden/wsdl20/TypeDefinitionTest.java
URL: http://svn.apache.org/viewvc/incubator/woden/trunk/java/test/org/apache/woden/wsdl20/TypeDefinitionTest.java?view=auto&rev=497097
==============================================================================
--- incubator/woden/trunk/java/test/org/apache/woden/wsdl20/TypeDefinitionTest.java (added)
+++ incubator/woden/trunk/java/test/org/apache/woden/wsdl20/TypeDefinitionTest.java Wed Jan 17 09:50:40 2007
@@ -0,0 +1,101 @@
+/**
+ * Copyright 2005 Apache Software Foundation 
+ *
+ * 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.woden.wsdl20;
+
+import java.net.URI;
+
+import javax.xml.namespace.QName;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+import org.apache.woden.internal.wsdl20.TypeDefinitionImpl;
+
+/**
+ * Unit tests for the implementation of TypeDefinition interface.
+ * 
+ * @author Graham Turrell (gturrell@apache.org)
+ */
+public class TypeDefinitionTest extends TestCase {
+
+	private TypeDefinition fTypeDefinition = null;
+	private URI fTypeSystem = null;
+	
+	public static Test suite()
+	{
+	   return new TestSuite(TypeDefinitionTest.class);
+	}
+	   
+    /*
+     * @see TestCase#setUp()
+     */
+    protected void setUp() throws Exception 
+    {
+        super.setUp();
+ 
+        fTypeDefinition = new TypeDefinitionImpl();
+		fTypeSystem = new URI("http://www.w3.org/2001/XMLSchema"); 
+    }
+
+    /*
+     * @see TestCase#tearDown()
+     */
+    protected void tearDown() throws Exception 
+    {
+        super.tearDown();
+    }
+    
+	/*
+	 * Test that getContent() correctly returns the assigned TypeDefinition content object
+	 */
+	public void testGetContent()
+	{
+		String content = "tdContentObject";
+		((TypeDefinitionImpl) fTypeDefinition).setContent(content);
+		assertEquals("The TypeDefinition content Object differs from that set -", content, fTypeDefinition.getContent());
+	}
+	
+	/*
+	 * Test that getContentModel() correctly returns the assigned TypeDefinition content model reference
+	 */
+	public void testGetContentModel()
+	{
+		String contentModel = TypeDefinition.API_W3C_DOM; // one of the presets available
+		((TypeDefinitionImpl) fTypeDefinition).setContentModel(contentModel);
+		assertEquals("The TypeDefinition content model String differs from that set -", contentModel, fTypeDefinition.getContentModel());
+	}
+	
+	/*
+	 * Test that getName() correctly returns the assigned TypeDefinition name
+	 */
+	public void testGetName()
+	{	
+		((TypeDefinitionImpl)fTypeDefinition).setName(new QName("tdName"));
+		assertEquals("The TypeDefinition name QName differs from that set-", "tdName", fTypeDefinition.getName().toString());
+	}
+	
+	/*
+	 * Test that getSystem() correctly returns the assigned TypeDefinition type system
+	 */
+	public void testGetSystem()
+	{
+		((TypeDefinitionImpl) fTypeDefinition).setSystem(fTypeSystem);
+		assertEquals("The TypeDefinition type system URI differs from that set-", fTypeSystem, fTypeDefinition.getSystem());
+	}
+	
+
+}

Added: incubator/woden/trunk/java/test/org/apache/woden/wsdl20/xml/TypesElementTest.java
URL: http://svn.apache.org/viewvc/incubator/woden/trunk/java/test/org/apache/woden/wsdl20/xml/TypesElementTest.java?view=auto&rev=497097
==============================================================================
--- incubator/woden/trunk/java/test/org/apache/woden/wsdl20/xml/TypesElementTest.java (added)
+++ incubator/woden/trunk/java/test/org/apache/woden/wsdl20/xml/TypesElementTest.java Wed Jan 17 09:50:40 2007
@@ -0,0 +1,161 @@
+/**
+ * Copyright 2005 Apache Software Foundation 
+ *
+ * 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.woden.wsdl20.xml;
+
+import java.util.Arrays;
+import java.util.List;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+
+import org.apache.woden.internal.schema.ImportedSchemaImpl;
+import org.apache.woden.internal.schema.InlinedSchemaImpl;
+import org.apache.woden.internal.wsdl20.TypesImpl;
+import org.apache.woden.schema.ImportedSchema;
+import org.apache.woden.schema.InlinedSchema;
+import org.apache.woden.schema.Schema;
+
+/**
+ * Unit tests for the TypesElement class.
+ * 
+ * @author Graham Turrell (gturrell@apache.org)
+ */
+
+public class TypesElementTest extends TestCase {
+
+	private TypesElement fTypesElement = null;
+	private Schema fInlinedSchema1 = null;
+	private Schema fInlinedSchema2 = null;
+	private Schema fImportedSchema1 = null;
+	private Schema fImportedSchema2 = null;
+	
+	public static Test suite()
+	{
+	   return new TestSuite(TypesElementTest.class);
+	}
+	   
+    /*
+     * @see TestCase#setUp()
+     */
+    protected void setUp() throws Exception 
+    {
+        super.setUp();
+    	fTypesElement = new TypesImpl();
+    	fInlinedSchema1 = new InlinedSchemaImpl();
+    	fInlinedSchema2 = new InlinedSchemaImpl();
+    	fImportedSchema1 = new ImportedSchemaImpl();
+    	fImportedSchema2 = new ImportedSchemaImpl();
+    }
+
+    /*
+     * @see TestCase#tearDown()
+     */
+    protected void tearDown() throws Exception 
+    {
+        super.tearDown();
+    }
+	
+    /*
+     * Test adding both Inlined and Imported schema objects
+     */
+	public void testAddGetSchemas()
+	{
+		Schema[] schemas = fTypesElement.getSchemas();
+		assertEquals(0, schemas.length);
+    	fTypesElement.addSchema(fImportedSchema1);
+		fTypesElement.addSchema(fImportedSchema2);
+		fTypesElement.addSchema(fInlinedSchema1);
+		fTypesElement.addSchema(fInlinedSchema2);
+		schemas = fTypesElement.getSchemas();
+		assertNotNull(schemas);
+		assertEquals(4, schemas.length);
+	}
+
+	public void testRemoveSchema()
+	{
+		Schema[] schemas = null;
+		Schema randomSchema = new ImportedSchemaImpl();
+		
+		// remove from empty list
+		fTypesElement.removeSchema(randomSchema);
+    	schemas = fTypesElement.getSchemas();
+		assertEquals(0, schemas.length);
+		
+		
+		fTypesElement.addSchema(fImportedSchema1);
+		fTypesElement.addSchema(fImportedSchema2);
+		fTypesElement.addSchema(fInlinedSchema1);
+		fTypesElement.addSchema(fInlinedSchema2);
+		fTypesElement.removeSchema(fInlinedSchema2);
+		schemas = fTypesElement.getSchemas();
+		assertEquals(3, schemas.length);
+    	fTypesElement.removeSchema(fImportedSchema1);
+    	schemas = fTypesElement.getSchemas();
+		assertEquals(2, schemas.length);
+		
+		// attempt to remove an un-added schema
+		fTypesElement.removeSchema(randomSchema);
+    	schemas = fTypesElement.getSchemas();
+		assertEquals(2, schemas.length); // number should be unchanged
+		
+		fTypesElement.removeSchema(fImportedSchema2);
+		fTypesElement.removeSchema(fInlinedSchema1);
+    	schemas = fTypesElement.getSchemas();
+		assertEquals(0, schemas.length);	
+	}
+
+	public void testGetImportedSchemas()
+	{
+    	fTypesElement.addSchema(fImportedSchema1);
+		fTypesElement.addSchema(fImportedSchema2);
+		fTypesElement.addSchema(fInlinedSchema1);
+		fTypesElement.addSchema(fInlinedSchema2);
+		
+		ImportedSchema[] schemas = fTypesElement.getImportedSchemas();
+		assertEquals(2, schemas.length);
+		
+		// verify object equivalence
+		List schemaL = Arrays.asList(schemas);
+		assertTrue(schemaL.contains(fImportedSchema1));
+		assertTrue(schemaL.contains(fImportedSchema2));
+		
+	}
+	
+	public void testGetInlinedSchemas()
+	{
+    	fTypesElement.addSchema(fImportedSchema1);
+		fTypesElement.addSchema(fImportedSchema2);
+		fTypesElement.addSchema(fInlinedSchema1);
+		fTypesElement.addSchema(fInlinedSchema2);
+		
+		InlinedSchema[] schemas = fTypesElement.getInlinedSchemas();
+		assertEquals(2, schemas.length);
+		
+		// verify object equivalence
+		List schemaL = Arrays.asList(schemas);
+		assertTrue(schemaL.contains(fInlinedSchema1));
+		assertTrue(schemaL.contains(fInlinedSchema2));				
+	}
+	
+	public void testSetGetTypeSystem()
+	{
+		String typeSystem = "http://www.w3.org/2001/XMLSchema";
+		fTypesElement.setTypeSystem(typeSystem);
+		assertEquals(typeSystem, fTypesElement.getTypeSystem());		
+	}
+	
+}



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