From a96291b78e2ed8eccab73c34d40e39c8461cf784 Mon Sep 17 00:00:00 2001 From: antelder Date: Mon, 23 Mar 2009 08:00:07 +0000 Subject: One more test with an sca trunk in the sandbox git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@757343 13f79535-47bb-0310-9956-ffa450edef68 --- .../sca/vtest/wsbinding/AClientService.java | 29 +++ .../tuscany/sca/vtest/wsbinding/AService.java | 29 +++ .../vtest/wsbinding/impl/AClientServiceImpl.java | 38 ++++ .../sca/vtest/wsbinding/impl/AServiceImpl.java | 33 ++++ .../service/src/main/resources/aservice.wsdl | 139 ++++++++++++++ .../resources/endpoint-uri-resolution.composite | 103 ++++++++++ .../src/main/resources/endpointreference.composite | 40 ++++ .../src/main/resources/wsdlbinding.composite | 45 +++++ .../src/main/resources/wsdlendpoint.composite | 37 ++++ .../service/src/main/resources/wsdlport.composite | 43 +++++ .../src/main/resources/wsdlservice.composite | 43 +++++ .../vtest/wsbinding/EndpointReferenceTestCase.java | 67 +++++++ .../wsbinding/EndpointUriResolutionTestCase.java | 209 +++++++++++++++++++++ .../sca/vtest/wsbinding/WsdlBindingTestCase.java | 68 +++++++ .../sca/vtest/wsbinding/WsdlEndpointTestCase.java | 66 +++++++ .../sca/vtest/wsbinding/WsdlPortTestCase.java | 66 +++++++ .../sca/vtest/wsbinding/WsdlServiceTestCase.java | 69 +++++++ 17 files changed, 1124 insertions(+) create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/AClientService.java create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/AService.java create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/impl/AClientServiceImpl.java create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/impl/AServiceImpl.java create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/aservice.wsdl create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/endpoint-uri-resolution.composite create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/endpointreference.composite create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlbinding.composite create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlendpoint.composite create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlport.composite create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlservice.composite create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/EndpointReferenceTestCase.java create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/EndpointUriResolutionTestCase.java create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlBindingTestCase.java create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlEndpointTestCase.java create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlPortTestCase.java create mode 100644 sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlServiceTestCase.java (limited to 'sandbox/ant/sca/trunk/vtest/wsbinding/service/src') diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/AClientService.java b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/AClientService.java new file mode 100644 index 0000000000..bdb5aa3821 --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/AClientService.java @@ -0,0 +1,29 @@ +/* + * 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 org.apache.tuscany.sca.vtest.wsbinding; + +import org.oasisopen.sca.annotation.Remotable; + +/** + * The interface for AClientService. + */ +@Remotable +public interface AClientService { + public String getGreetingsForward(String name); +} diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/AService.java b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/AService.java new file mode 100644 index 0000000000..2dc7afce0c --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/AService.java @@ -0,0 +1,29 @@ +/* + * 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 org.apache.tuscany.sca.vtest.wsbinding; + +import org.oasisopen.sca.annotation.Remotable; + +/** + * The interface for AService. + */ +@Remotable +public interface AService { + public String getGreetings(String name); +} diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/impl/AClientServiceImpl.java b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/impl/AClientServiceImpl.java new file mode 100644 index 0000000000..93cd716abe --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/impl/AClientServiceImpl.java @@ -0,0 +1,38 @@ +/* + * 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 org.apache.tuscany.sca.vtest.wsbinding.impl; + +import org.apache.tuscany.sca.vtest.wsbinding.AClientService; +import org.apache.tuscany.sca.vtest.wsbinding.AService; +import org.oasisopen.sca.annotation.Reference; +import org.oasisopen.sca.annotation.Service; + +/** + * This class implements AService. + */ +@Service(AClientService.class) +public class AClientServiceImpl implements AClientService { + + @Reference + protected AService aService; + + public String getGreetingsForward(String name) { + return aService.getGreetings(name); + } +} diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/impl/AServiceImpl.java b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/impl/AServiceImpl.java new file mode 100644 index 0000000000..6ab7668c8b --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/java/org/apache/tuscany/sca/vtest/wsbinding/impl/AServiceImpl.java @@ -0,0 +1,33 @@ +/* + * 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 org.apache.tuscany.sca.vtest.wsbinding.impl; + +import org.apache.tuscany.sca.vtest.wsbinding.AService; +import org.oasisopen.sca.annotation.Service; + +/** + * This class implements AService. + */ +@Service(AService.class) +public class AServiceImpl implements AService { + + public String getGreetings(String name) { + return "Hello " + name; + } +} diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/aservice.wsdl b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/aservice.wsdl new file mode 100644 index 0000000000..e7953eb2b4 --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/aservice.wsdl @@ -0,0 +1,139 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/endpoint-uri-resolution.composite b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/endpoint-uri-resolution.composite new file mode 100644 index 0000000000..0d92174442 --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/endpoint-uri-resolution.composite @@ -0,0 +1,103 @@ + + + + + + + + + + + http://localhost:8085/AService/endpointref + + + + + + + + + inAddress + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/endpointreference.composite b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/endpointreference.composite new file mode 100644 index 0000000000..3ba152b7b8 --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/endpointreference.composite @@ -0,0 +1,40 @@ + + + + + + + + + + http://localhost:8085/AService/endpointref + + + + + + + + + + + diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlbinding.composite b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlbinding.composite new file mode 100644 index 0000000000..85c604070a --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlbinding.composite @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlendpoint.composite b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlendpoint.composite new file mode 100644 index 0000000000..0c11c79efe --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlendpoint.composite @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlport.composite b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlport.composite new file mode 100644 index 0000000000..859b93bec4 --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlport.composite @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlservice.composite b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlservice.composite new file mode 100644 index 0000000000..fa96e650de --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/main/resources/wsdlservice.composite @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/EndpointReferenceTestCase.java b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/EndpointReferenceTestCase.java new file mode 100644 index 0000000000..d858daaf78 --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/EndpointReferenceTestCase.java @@ -0,0 +1,67 @@ +/* + * 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 org.apache.tuscany.sca.vtest.wsbinding; + +import junit.framework.Assert; + +import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Test; + +/** + * Tests EndpointReference element specified in service binding.ws as per Web + * Services Binding Specification v1.00 - Sec 2.1 - Lines 61 to 65. + */ +public class EndpointReferenceTestCase { + + protected static String compositeName = "endpointreference.composite"; + + @BeforeClass + public static void init() throws Exception { + try { + System.out.println("Setting up"); + ServiceFinder.init(compositeName); + } catch (Exception ex) { + ex.printStackTrace(); + } + } + + /** + * Lines 61-65 + *

+ * /binding.ws/wsa:EndpointReference – optional WS-Addressing [6] + * EndpointReference that specifies the endpoint for the service or + * reference. When this element is present along with the wsdlElement + * attribute on the parent element, the wsdlElement attribute value MUST be + * of the ‘Binding’ form as specified above, i.e. #wsdl.binding(). + */ + @Test + public void testWsdlBinding() throws Exception { + AClientService aClient = ServiceFinder.getService(AClientService.class, "AClientComponent"); + Assert.assertEquals("Hello Pandu", aClient.getGreetingsForward("Pandu")); + } + + @AfterClass + public static void destroy() throws Exception { + System.out.println("Cleaning up"); + ServiceFinder.cleanup(); + } +} diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/EndpointUriResolutionTestCase.java b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/EndpointUriResolutionTestCase.java new file mode 100644 index 0000000000..49f9db248f --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/EndpointUriResolutionTestCase.java @@ -0,0 +1,209 @@ +/* + * 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 org.apache.tuscany.sca.vtest.wsbinding; + +import junit.framework.Assert; + +import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Tests "Endpoint URI resolution" for service binding.ws as per Web Services + * Binding Specification v1.00 - Sec 2.1.1 - Lines 70 to 85. + */ +public class EndpointUriResolutionTestCase { + + protected static String compositeName = "endpoint-uri-resolution.composite"; + + @BeforeClass + public static void init() throws Exception { + try { + System.out.println("Setting up"); + ServiceFinder.init(compositeName); + } catch (Exception ex) { + ex.printStackTrace(); + } + } + + /** + * Lines 71-78 + *

+ * The rules for resolving the URI at which an SCA service is hosted, or SCA + * reference targets, when used with binding.ws (in precedence order) are: + * 1. The URIs in the endpoint(s) of the referenced WSDL or The URI + * specified by the wsa:Address element of the wsa:EndpointReference, 2. The + * explicitly stated URI in the "uri" attribute of the binding.ws element, + * which may be relative, 3. The implicit URI as defined by the Assembly + * specification + *

+ * This method tests that URI in the endpoint takes precedence. + */ + @Test + public void testUriInEndpoint() throws Exception { + AClientService aClient = ServiceFinder.getService(AClientService.class, "AClientComponent1"); + Assert.assertEquals("Hello Pandu", aClient.getGreetingsForward("Pandu")); + } + + /** + * Lines 71-78 + *

+ * The rules for resolving the URI at which an SCA service is hosted, or SCA + * reference targets, when used with binding.ws (in precedence order) are: + * 1. The URIs in the endpoint(s) of the referenced WSDL or The URI + * specified by the wsa:Address element of the wsa:EndpointReference, 2. The + * explicitly stated URI in the "uri" attribute of the binding.ws element, + * which may be relative, 3. The implicit URI as defined by the Assembly + * specification + *

+ * This method tests that URI in the EndpointReference takes precedence. + */ + @Test + public void testUriInEndpointReference() throws Exception { + AClientService aClient = ServiceFinder.getService(AClientService.class, "AClientComponent2"); + Assert.assertEquals("Hello Pandu", aClient.getGreetingsForward("Pandu")); + } + + /** + * Lines 71-78 + *

+ * The rules for resolving the URI at which an SCA service is hosted, or SCA + * reference targets, when used with binding.ws (in precedence order) are: + * 1. The URIs in the endpoint(s) of the referenced WSDL or The URI + * specified by the wsa:Address element of the wsa:EndpointReference, 2. The + * explicitly stated URI in the "uri" attribute of the binding.ws element, + * which may be relative, 3. The implicit URI as defined by the Assembly + * specification + *

+ * This method tests that explicitly stated URI in the "uri" attribute of + * binding.ws takes precedence. + */ + @Test + public void testUriInBindingWs() throws Exception { + AClientService aClient = ServiceFinder.getService(AClientService.class, "AClientComponent3"); + Assert.assertEquals("Hello Pandu", aClient.getGreetingsForward("Pandu")); + } + + /** + * Lines 71-78 + *

+ * The rules for resolving the URI at which an SCA service is hosted, or SCA + * reference targets, when used with binding.ws (in precedence order) are: + * 1. The URIs in the endpoint(s) of the referenced WSDL or The URI + * specified by the wsa:Address element of the wsa:EndpointReference, 2. The + * explicitly stated URI in the "uri" attribute of the binding.ws element, + * which may be relative, 3. The implicit URI as defined by the Assembly + * specification + *

+ * This method tests that implicit URI is used. + */ + @Ignore("TUSCANY-2523 - Port 8080 conflicts with Continuum") + @Test + public void testImplicitUri() throws Exception { + AClientService aClient = ServiceFinder.getService(AClientService.class, "AClientComponent4"); + Assert.assertEquals("Hello Pandu", aClient.getGreetingsForward("Pandu")); + } + + /** + * Lines 71-78 + *

+ * The rules for resolving the URI at which an SCA service is hosted, or SCA + * reference targets, when used with binding.ws (in precedence order) are: + * 1. The URIs in the endpoint(s) of the referenced WSDL or The URI + * specified by the wsa:Address element of the wsa:EndpointReference, 2. The + * explicitly stated URI in the "uri" attribute of the binding.ws element, + * which may be relative, 3. The implicit URI as defined by the Assembly + * specification + *

+ * This method tests that explicitly stated URI in the "uri" attribute of + * the binding.ws is used in the absence of a wsdlElement. + */ + @Test + public void testNoWsdlElement() throws Exception { + AClientService aClient = ServiceFinder.getService(AClientService.class, "AClientComponent5"); + Assert.assertEquals("Hello Pandu", aClient.getGreetingsForward("Pandu")); + } + + /** + * Lines 79-83 + *

+ * The URI in the WSDL endpoint or in the wsa:Address of an EPR may be a + * relative URI, in which case it is relative to the URI defined in (2) or + * (3). The wsa:Address element can be the empty relative URI, in which case + * it uses the URI defined in (2) or (3) directly. This allows the EPR + * writer to specify reference parameters, metadata and other EPR contents + * while allowing the URI to be chosen by the deployer. + *

+ * This method tests that the relative URI specified in WSDL endpoint is + * used along with the explicit URI specified in the "uri" attribute of + * binding.ws element. + */ + @Test + public void testRelativeUriInWsdl() throws Exception { + AClientService aClient = ServiceFinder.getService(AClientService.class, "AClientComponent6"); + Assert.assertEquals("Hello Pandu", aClient.getGreetingsForward("Pandu")); + } + + /** + * Lines 79-83 + *

+ * The URI in the WSDL endpoint or in the wsa:Address of an EPR may be a + * relative URI, in which case it is relative to the URI defined in (2) or + * (3). The wsa:Address element can be the empty relative URI, in which case + * it uses the URI defined in (2) or (3) directly. This allows the EPR + * writer to specify reference parameters, metadata and other EPR contents + * while allowing the URI to be chosen by the deployer. + *

+ * This method tests that the relative URI specified in wsa:Address is used + * along with the explicit URI specified in the "uri" attribute of + * binding.ws element. + */ + @Test + public void testRelativeUriInAddress() throws Exception { + AClientService aClient = ServiceFinder.getService(AClientService.class, "AClientComponent7"); + Assert.assertEquals("Hello Pandu", aClient.getGreetingsForward("Pandu")); + } + + /** + * Lines 79-83 + *

+ * The URI in the WSDL endpoint or in the wsa:Address of an EPR may be a + * relative URI, in which case it is relative to the URI defined in (2) or + * (3). The wsa:Address element can be the empty relative URI, in which case + * it uses the URI defined in (2) or (3) directly. This allows the EPR + * writer to specify reference parameters, metadata and other EPR contents + * while allowing the URI to be chosen by the deployer. + *

+ * This method tests that when wsa:Address is empty, the explicit URI + * specified in the "uri" attribute of binding.ws element is used. + */ + @Test + public void testEmptyAddressElement() throws Exception { + AClientService aClient = ServiceFinder.getService(AClientService.class, "AClientComponent8"); + Assert.assertEquals("Hello Pandu", aClient.getGreetingsForward("Pandu")); + } + + @AfterClass + public static void destroy() throws Exception { + System.out.println("Cleaning up"); + ServiceFinder.cleanup(); + } +} diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlBindingTestCase.java b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlBindingTestCase.java new file mode 100644 index 0000000000..292de8b654 --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlBindingTestCase.java @@ -0,0 +1,68 @@ +/* + * 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 org.apache.tuscany.sca.vtest.wsbinding; + +import junit.framework.Assert; + +import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Test; + +/** + * Tests wsdlElement specified on service binding.ws as per Web Services Binding Specification v1.00 - Sec 2.1 + * - Lines 35 to 54. + */ +public class WsdlBindingTestCase { + + protected static String compositeName = "wsdlbinding.composite"; + + @BeforeClass + public static void init() throws Exception { + try { + System.out.println("Setting up"); + ServiceFinder.init(compositeName); + } catch (Exception ex) { + ex.printStackTrace(); + } + } + + /** + * Lines 50-54 + *

+ * Binding: + * #wsdl.binding() + * In this case, the identified WSDL binding must have an equivalent PortType with the SCA + * service or reference. In this case the endpoint address URI for the SCA service or + * reference must be provided via the URI attribute on the binding. + */ + @Test + public void testWsdlBinding() throws Exception { + AClientService aClientBnd11 = ServiceFinder.getService(AClientService.class, "AClientBnd11Component"); + Assert.assertEquals("Hello Pandu", aClientBnd11.getGreetingsForward("Pandu")); + AClientService aClientBnd12 = ServiceFinder.getService(AClientService.class, "AClientBnd12Component"); + Assert.assertEquals("Hello Pandu", aClientBnd12.getGreetingsForward("Pandu")); + } + + @AfterClass + public static void destroy() throws Exception { + System.out.println("Cleaning up"); + ServiceFinder.cleanup(); + } +} diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlEndpointTestCase.java b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlEndpointTestCase.java new file mode 100644 index 0000000000..842da87bd4 --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlEndpointTestCase.java @@ -0,0 +1,66 @@ +/* + * 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 org.apache.tuscany.sca.vtest.wsbinding; + +import junit.framework.Assert; + +import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Tests wsdlElement specified on service binding.ws as per Web Services Binding + * Specification v1.00 - Sec 2.1 - Lines 35 to 54. + */ +public class WsdlEndpointTestCase { + + protected static String compositeName = "wsdlendpoint.composite"; + + @BeforeClass + public static void init() throws Exception { + try { + System.out.println("Setting up"); + ServiceFinder.init(compositeName); + } catch (Exception ex) { + ex.printStackTrace(); + } + } + + /** + * Lines 46-49 + *

+ * Endpoint (WSDL 2.0): #wsdl.endpoint(/) + * In this case, the identified endpoint in the WSDL 2.0 Service must have + * an equivalent PortType with the SCA service or reference. + */ + @Test + @Ignore("WSDL2.0 Support") + public void testWsdlEndpoint() throws Exception { + AClientService aClient = ServiceFinder.getService(AClientService.class, "AClientComponent"); + Assert.assertEquals("Hello Pandu", aClient.getGreetingsForward("Pandu")); + } + + @AfterClass + public static void destroy() throws Exception { + System.out.println("Cleaning up"); + ServiceFinder.cleanup(); + } +} diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlPortTestCase.java b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlPortTestCase.java new file mode 100644 index 0000000000..0545cef776 --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlPortTestCase.java @@ -0,0 +1,66 @@ +/* + * 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 org.apache.tuscany.sca.vtest.wsbinding; + +import junit.framework.Assert; + +import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Test; + +/** + * Tests wsdlElement specified on service binding.ws as per Web Services Binding + * Specification v1.00 - Sec 2.1 - Lines 35 to 54. + */ +public class WsdlPortTestCase { + + protected static String compositeName = "wsdlport.composite"; + + @BeforeClass + public static void init() throws Exception { + try { + System.out.println("Setting up"); + ServiceFinder.init(compositeName); + } catch (Exception ex) { + ex.printStackTrace(); + } + } + + /** + * Lines 42-45 + *

+ * Port (WSDL 1.1): #wsdl.port(/) + * In this case, the identified port in the WSDL 1.1 Service must have an + * equivalent PortType with the SCA service or reference. + */ + @Test + public void testWsdlPort() throws Exception { + AClientService aClientP11 = ServiceFinder.getService(AClientService.class, "AClientP11Component"); + Assert.assertEquals("Hello Pandu", aClientP11.getGreetingsForward("Pandu")); + AClientService aClientP12 = ServiceFinder.getService(AClientService.class, "AClientP12Component"); + Assert.assertEquals("Hello Pandu", aClientP12.getGreetingsForward("Pandu")); + } + + @AfterClass + public static void destroy() throws Exception { + System.out.println("Cleaning up"); + ServiceFinder.cleanup(); + } +} diff --git a/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlServiceTestCase.java b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlServiceTestCase.java new file mode 100644 index 0000000000..aa2b2fac7a --- /dev/null +++ b/sandbox/ant/sca/trunk/vtest/wsbinding/service/src/test/java/org/apache/tuscany/sca/vtest/wsbinding/WsdlServiceTestCase.java @@ -0,0 +1,69 @@ +/* + * 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 org.apache.tuscany.sca.vtest.wsbinding; + +import junit.framework.Assert; + +import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; +import org.junit.AfterClass; +import org.junit.BeforeClass; +import org.junit.Ignore; +import org.junit.Test; + +/** + * Tests wsdlElement specified on service binding.ws as per Web Services Binding + * Specification v1.00 - Sec 2.1 - Lines 35 to 54. + */ +public class WsdlServiceTestCase { + + protected static String compositeName = "wsdlservice.composite"; + + @BeforeClass + public static void init() throws Exception { + try { + System.out.println("Setting up"); + ServiceFinder.init(compositeName); + } catch (Exception ex) { + ex.printStackTrace(); + } + } + + /** + * Lines 38-41 + *

+ * Service: #wsdl.service() In this case, + * all the endpoints in the WSDL Service that have equivalent PortTypes with + * the SCA service or reference must be available to the SCA service or + * reference. + */ + @Test + @Ignore("TUSCANY-2298") + public void testWsdlService() throws Exception { + AClientService aClientS11 = ServiceFinder.getService(AClientService.class, "AClientS11Component"); + Assert.assertEquals("Hello Pandu", aClientS11.getGreetingsForward("Pandu")); + AClientService aClientS12 = ServiceFinder.getService(AClientService.class, "AClientS12Component"); + Assert.assertEquals("Hello Pandu", aClientS12.getGreetingsForward("Pandu")); + } + + @AfterClass + public static void destroy() throws Exception { + System.out.println("Cleaning up"); + ServiceFinder.cleanup(); + } +} -- cgit v1.2.3