From 88b043b538e64e6476435163e5e59be68c77751e Mon Sep 17 00:00:00 2001 From: slaws Date: Thu, 26 Feb 2009 11:30:18 +0000 Subject: TUSCANY-2868 - Add more assembly/component test cases. Thanks for the patch Jun Guo git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@748094 13f79535-47bb-0310-9956-ffa450edef68 --- .../assembly/component/property/ServiceA.java | 32 ++++ .../assembly/component/property/ServiceAImpl.java | 51 +++++++ .../assembly/component/property/ServiceB.java | 32 ++++ .../assembly/component/property/ServiceBImpl.java | 56 +++++++ .../assembly/component/property/ServiceC.java | 29 ++++ .../assembly/component/property/ServiceCImpl.java | 44 ++++++ .../component_duplicate_property.composite | 35 +++++ .../main/resources/component_property_1.composite | 48 ++++++ .../main/resources/component_property_2.composite | 52 +++++++ .../main/resources/component_property_3.composite | 38 +++++ .../reference_multiplicity_moretargets.composite | 2 +- .../reference_multiplicity_multitargets.composite | 2 +- .../reference_multiplicity_ntargets.composite | 2 +- .../reference_multiplicity_zerotarget.composite | 2 +- .../main/resources/reference_wiredbyimpl.composite | 2 +- .../resources/referenceduplicatename.composite | 65 -------- .../src/main/resources/referencename_1.composite | 50 +++++++ .../src/main/resources/referencename_2.composite | 51 +++++++ .../src/main/resources/referencename_3.composite | 52 +++++++ .../src/main/resources/referencename_4.composite | 53 +++++++ .../resources/referencenamemissmatch.composite | 49 ------ .../src/main/resources/zerocomponents.composite | 1 - .../assembly/component/ComponentBasicTestCase.java | 1 + .../component/ComponentPropertyTestCase.java | 166 +++++++++++++++++++++ .../component/ComponentReferenceTestCase.java | 39 +++-- 25 files changed, 824 insertions(+), 130 deletions(-) create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceA.java create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceAImpl.java create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceB.java create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceBImpl.java create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceC.java create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceCImpl.java create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_duplicate_property.composite create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_property_1.composite create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_property_2.composite create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_property_3.composite delete mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referenceduplicatename.composite create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_1.composite create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_2.composite create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_3.composite create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_4.composite delete mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencenamemissmatch.composite create mode 100644 branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentPropertyTestCase.java (limited to 'branches/sca-java-1.x/vtest/assembly/component') diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceA.java b/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceA.java new file mode 100644 index 0000000000..d29eb41dfb --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceA.java @@ -0,0 +1,32 @@ +/* + * 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.assembly.component.property; + +/** + * + * + */ +public interface ServiceA { + + String getServiceName() ; + + String getStrProperty() ; + + Object getObjProperty() ; +} diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceAImpl.java b/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceAImpl.java new file mode 100644 index 0000000000..dfd613d798 --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceAImpl.java @@ -0,0 +1,51 @@ +/* + * 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.assembly.component.property; + +import org.osoa.sca.annotations.Property; +import org.osoa.sca.annotations.Service; + +/** + * + * + */ +@Service(ServiceA.class) +public class ServiceAImpl implements ServiceA{ + + @Property + protected String strProperty ; + + @Property + protected Object objProperty ; + + + public String getServiceName() { + return "AService" ; + } + + public String getStrProperty() { + + return strProperty ; + } + + public Object getObjProperty() { + + return objProperty ; + } +} diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceB.java b/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceB.java new file mode 100644 index 0000000000..d57894527d --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceB.java @@ -0,0 +1,32 @@ +/* + * 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.assembly.component.property; + +import org.osoa.sca.annotations.Property; + +/** + * + * + */ +public interface ServiceB { + + Object getObjProperty() ; + String getStrProperty() ; + int getIntProperty() ; +} diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceBImpl.java b/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceBImpl.java new file mode 100644 index 0000000000..f202906d7c --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceBImpl.java @@ -0,0 +1,56 @@ +/* + * 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.assembly.component.property; + +import org.osoa.sca.annotations.Property; +import org.osoa.sca.annotations.Service; + +/** + * + * + */ +@Service(ServiceB.class) +public class ServiceBImpl implements ServiceB{ + + @Property + protected Object objProperty ; + + @Property + protected String strProperty ; + +// @Property +// protected int intProperty ; + + public Object getObjProperty() { + return objProperty ; + } + + public String getStrProperty() { + + return strProperty ; + } + + public int getIntProperty() { + + return 100 ; +// return intProperty ; + } + +} diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceC.java b/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceC.java new file mode 100644 index 0000000000..1eefede818 --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceC.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.assembly.component.property; + +/** + * + * + */ +public interface ServiceC { + + String getStrProperty() ; + Object getObjProperty() ; +} diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceCImpl.java b/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceCImpl.java new file mode 100644 index 0000000000..bfbc1848c2 --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/java/org/apache/tuscany/sca/vtest/assembly/component/property/ServiceCImpl.java @@ -0,0 +1,44 @@ +/* + * 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.assembly.component.property; + +import org.osoa.sca.annotations.Property; +import org.osoa.sca.annotations.Service; + +/** + * + * + */ +@Service(ServiceC.class) +public class ServiceCImpl implements ServiceC{ + + @Property + protected String strProperty ; + + @Property(name="objProperty") + protected String objProperty ; + + public String getStrProperty() { + return strProperty ; + } + + public Object getObjProperty() { + return objProperty ; + } +} diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_duplicate_property.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_duplicate_property.composite new file mode 100644 index 0000000000..0886c94a90 --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_duplicate_property.composite @@ -0,0 +1,35 @@ + + + + + + + + value1 + value2 + + + + + + diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_property_1.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_property_1.composite new file mode 100644 index 0000000000..5e975e5105 --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_property_1.composite @@ -0,0 +1,48 @@ + + + + + + + + I am a string + I am a object + + + + + + + I am a string + + + + + + + + + + diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_property_2.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_property_2.composite new file mode 100644 index 0000000000..42d7234a1c --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_property_2.composite @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_property_3.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_property_3.composite new file mode 100644 index 0000000000..c6b0d2f245 --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/component_property_3.composite @@ -0,0 +1,38 @@ + + + + + + + + + + I am a string + + + I am an object + + + + + diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_moretargets.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_moretargets.composite index 902f6b9850..396aa0557c 100644 --- a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_moretargets.composite +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_moretargets.composite @@ -20,7 +20,7 @@ --> diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_multitargets.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_multitargets.composite index b0aaf271cf..7cf1d0b2e8 100644 --- a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_multitargets.composite +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_multitargets.composite @@ -20,7 +20,7 @@ --> diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_ntargets.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_ntargets.composite index baef55fccc..eb4c820ca0 100644 --- a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_ntargets.composite +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_ntargets.composite @@ -20,7 +20,7 @@ --> diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_zerotarget.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_zerotarget.composite index d3e8396242..0895f2b7ce 100644 --- a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_zerotarget.composite +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_multiplicity_zerotarget.composite @@ -20,7 +20,7 @@ --> diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_wiredbyimpl.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_wiredbyimpl.composite index 665c17a639..e5e492f34b 100644 --- a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_wiredbyimpl.composite +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/reference_wiredbyimpl.composite @@ -20,7 +20,7 @@ --> diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referenceduplicatename.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referenceduplicatename.composite deleted file mode 100644 index 05227124e1..0000000000 --- a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referenceduplicatename.composite +++ /dev/null @@ -1,65 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_1.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_1.composite new file mode 100644 index 0000000000..e7445c4a2a --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_1.composite @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_2.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_2.composite new file mode 100644 index 0000000000..bf39310764 --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_2.composite @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_3.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_3.composite new file mode 100644 index 0000000000..e2ef1947e8 --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_3.composite @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_4.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_4.composite new file mode 100644 index 0000000000..5ef8367193 --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencename_4.composite @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencenamemissmatch.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencenamemissmatch.composite deleted file mode 100644 index de3eefab95..0000000000 --- a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/referencenamemissmatch.composite +++ /dev/null @@ -1,49 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/zerocomponents.composite b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/zerocomponents.composite index 6f02d7e941..9465cedaf9 100644 --- a/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/zerocomponents.composite +++ b/branches/sca-java-1.x/vtest/assembly/component/src/main/resources/zerocomponents.composite @@ -21,6 +21,5 @@ xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://assembly-tests" name="Assemby-zero-components-Composite"> - diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentBasicTestCase.java b/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentBasicTestCase.java index 1d8d31c433..f3ce219f92 100644 --- a/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentBasicTestCase.java +++ b/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentBasicTestCase.java @@ -356,5 +356,6 @@ public class ComponentBasicTestCase { + } diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentPropertyTestCase.java b/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentPropertyTestCase.java new file mode 100644 index 0000000000..6cf8b49e4f --- /dev/null +++ b/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentPropertyTestCase.java @@ -0,0 +1,166 @@ +/* + * 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.assembly.component; + +import junit.framework.Assert; + +import org.apache.tuscany.sca.vtest.assembly.component.property.ServiceA; +import org.apache.tuscany.sca.vtest.assembly.component.property.ServiceB; +import org.apache.tuscany.sca.vtest.assembly.component.property.ServiceC; +import org.apache.tuscany.sca.vtest.utilities.ServiceFinder; +import org.junit.Ignore; +import org.junit.Test; + +/** + * This test case covers the main functionalities of component property. + * + */ +public class ComponentPropertyTestCase { + + private void initDomain(String compositePath) { + System.out.println("Setting up"); + ServiceFinder.init(compositePath); + } + + private void cleanupDomain() { + System.out.println("Cleaning up"); + ServiceFinder.cleanup(); + } + + /** + * + *

+ * OSOA + * The property has no @value attribute now. + *

+ * ASM50027 + *

+ * OASIS: + * If the @value attribute of a component property element is declared, the type of the + * property MUST be an XML Schema simple type and the @value attribute MUST + * contain a single value of that type + */ + @Test + @Ignore("It will be implemented in SCA 2.x codebase") + public void testValueAttibuteValid_1() { + + initDomain("component_property_1.composite"); + ServiceA service = ServiceFinder.getService(ServiceA.class , "AComponent/ServiceA") ; + Assert.assertEquals("I am a string" ,service.getStrProperty()) ; + Assert.assertEquals("I am a object" ,service.getObjProperty()) ; + cleanupDomain(); + + } + + /** + *

+ * OSOA + * The property has no @value attribute now. + *

+ * ASM50027 + *

+ * OASIS: + * If the @value attribute of a component property element is declared, the type of the + * property MUST be an XML Schema simple type and the @value attribute MUST + * contain a single value of that type + */ + @Test + @Ignore("It will be implemented in SCA 2.x codebase") + public void testValueAttibuteValid_2() { + + initDomain("component_property_1.composite"); + ServiceB service = ServiceFinder.getService(ServiceB.class , "BComponent/ServiceB") ; +// Assert.assertEquals("I am a object" ,service.getObjProperty()) ; + //It will fail to get the value from composite file, so it will be an empty string + System.out.println("::::" + service.getStrProperty()); +// System.out.println("::::" + service.getIntProperty()); +// Assert.assertEquals("I am a string" ,service.getStrProperty()) ; + + Assert.assertEquals("" ,service.getObjProperty()) ; + cleanupDomain(); + + } + + /** + *

+ * OSOA + * Not mentioned in OSOA + *

+ * ASM50030 + *

+ * OASIS: + * A element MUST NOT contain two subelements with the + * same value of the @name attribute + */ + @Test + @Ignore("TUSCANY-2863") + public void testDuplicateProperty() { + + initDomain("component_duplicate_property.composite"); + ServiceA service = ServiceFinder.getService(ServiceA.class , "AComponent/ServiceA") ; +// System.out.println(service.getStrProperty()) ; + Assert.assertEquals("value1", service.getStrProperty()) ; + cleanupDomain(); + + } + + /** + *

+ * OSOA + * No corresponding statements in OSOA. + *

+ * ASM50031 + *

+ * OASIS: + * The name attribute of a component property MUST match the name of a property + * element in the component type of the component implementation. + */ + @Test + public void testPropertyNameMatched() { + + initDomain("component_property_3.composite"); + ServiceC service = ServiceFinder.getService(ServiceC.class , "CComponent/ServiceC") ; + Assert.assertEquals("I am a string" , service.getStrProperty()) ; + cleanupDomain(); + + } + + /** + *

+ * OSOA + * No corresponding statements in OSOA. + *

+ * ASM50031 + *

+ * OASIS: + * The name attribute of a component property MUST match the name of a property + * element in the component type of the component implementation. + */ + @Test + public void testPropertyNameNotMatched() { + + initDomain("component_property_3.composite"); + ServiceC service = ServiceFinder.getService(ServiceC.class , "CComponent/ServiceC") ; + Assert.assertNull(service.getObjProperty()) ; + cleanupDomain(); + + } + + +} diff --git a/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentReferenceTestCase.java b/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentReferenceTestCase.java index b3d77561ce..d62d10965a 100644 --- a/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentReferenceTestCase.java +++ b/branches/sca-java-1.x/vtest/assembly/component/src/test/java/org/apache/tuscany/sca/vtest/assembly/component/ComponentReferenceTestCase.java @@ -61,17 +61,14 @@ public class ComponentReferenceTestCase { * reference elements of that */ @Test - public void testComponentReferenceName() { + public void testReferenceNameUnique() { - initDomain("referencename.composite"); + initDomain("referencename_1.composite"); MyClientA service = ServiceFinder.getService(MyClientA.class, "ClientComponent1/MyClientA"); -// System.out.println(service.callOtherServices()); Assert.assertEquals("MyService:::MyService" , service.callOtherServices()) ; cleanupDomain(); - - } /** @@ -89,10 +86,10 @@ public class ComponentReferenceTestCase { * reference elements of that */ @Test - public void testDuplicateComponentReferenceName() { + public void testReferenceNameDuplicated() { //for this case, the reference of "b" in MyClientImpl is null. try { - initDomain("referenceduplicatename.composite"); + initDomain("referencename_2.composite"); } catch (ServiceRuntimeException ex){ Assert.assertEquals("Duplicate component reference name: Component = ClientComponent2 Reference = b", ex.getMessage()); return; @@ -114,13 +111,34 @@ public class ComponentReferenceTestCase { * the name of the reference. Has to match a name of a reference defined by the implementation. * */ + @Test + public void testComponentReferenceNameMatched() { + initDomain("referencename_3.composite"); + MyClientA service = ServiceFinder.getService(MyClientA.class, "ClientComponent1/MyClientA"); + Assert.assertEquals("MyService:::MyService" , service.callOtherServices()) ; + cleanupDomain(); + } + + /** + * Line 192-193: + *

+ * OSOA: + * the name of the reference. Has to match a name of a reference + * defined by the implementation. + *

+ * ASM50008 + *

+ * OASIS: + * the name of the reference. Has to match a name of a reference defined by the implementation. + * + */ @Test public void testComponentReferenceNameValid() { try { - initDomain("referencenamemissmatch.composite"); + initDomain("referencename_4.composite"); } catch (ServiceRuntimeException ex){ - Assert.assertEquals("Reference not found for component reference: Component = ClientComponent1 Reference = bServiceX", ex.getMessage()); + Assert.assertEquals("Reference not found for component reference: Component = ClientComponent1 Reference = bb", ex.getMessage()); return; } @@ -139,7 +157,7 @@ public class ComponentReferenceTestCase { * wired statically within a composite, but left unwired */ @Test - @Ignore("Not implemented now.") + @Ignore("Not implemented in SCA 1.x codebase.") public void testWiredByImpl() { initDomain("reference_wiredbyimpl.composite"); MyClientA service = ServiceFinder.getService(MyClientA.class, "ClientComponent/MyClientA"); @@ -147,6 +165,7 @@ public class ComponentReferenceTestCase { cleanupDomain(); } + /** * Line 208: *

-- cgit v1.2.3