You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by gn...@apache.org on 2018/01/31 10:12:14 UTC
svn commit: r1822783 -
/aries/trunk/blueprint/blueprint-core/src/test/java/org/apache/aries/blueprint/container/BeanRecipeTest.java
Author: gnodet
Date: Wed Jan 31 10:12:14 2018
New Revision: 1822783
URL: http://svn.apache.org/viewvc?rev=1822783&view=rev
Log:
[ARIES-1116] Blueprint loses bounds for <? super Type> constructors
Modified:
aries/trunk/blueprint/blueprint-core/src/test/java/org/apache/aries/blueprint/container/BeanRecipeTest.java
Modified: aries/trunk/blueprint/blueprint-core/src/test/java/org/apache/aries/blueprint/container/BeanRecipeTest.java
URL: http://svn.apache.org/viewvc/aries/trunk/blueprint/blueprint-core/src/test/java/org/apache/aries/blueprint/container/BeanRecipeTest.java?rev=1822783&r1=1822782&r2=1822783&view=diff
==============================================================================
--- aries/trunk/blueprint/blueprint-core/src/test/java/org/apache/aries/blueprint/container/BeanRecipeTest.java (original)
+++ aries/trunk/blueprint/blueprint-core/src/test/java/org/apache/aries/blueprint/container/BeanRecipeTest.java Wed Jan 31 10:12:14 2018
@@ -63,6 +63,17 @@ public class BeanRecipeTest {
public static Object getBasic(int n) { return 1; }
}
+ static public interface EventMessage<T> {
+ }
+ static public interface SequentialPolicy<T> {
+ }
+ static public class DummySequentialPolicy implements SequentialPolicy<Object> {
+ }
+ static public class MessageDriven {
+ public MessageDriven(SequentialPolicy<? super EventMessage<?>> policy) {
+ }
+ }
+
static public interface Example<A> {}
static public class ExampleImpl implements Example<String> {}
static public class ExampleService {
@@ -157,6 +168,16 @@ public class BeanRecipeTest {
recipe.setArgTypes(Arrays.<String>asList((String) null));
ExecutionContext.Holder.setContext(new BlueprintRepository(container));
recipe.create();
+ }
+
+ @Test
+ public void constructorWithGenerics() throws Exception {
+ BlueprintContainerImpl container = new BlueprintContainerImpl(null, null, null, null, null, null, null, null, null, null);
+ BeanRecipe recipe = new BeanRecipe("example", container, MessageDriven.class, false, false);
+ recipe.setArguments(Arrays.<Object>asList(new DummySequentialPolicy()));
+ recipe.setArgTypes(Arrays.<String>asList((String) null));
+ ExecutionContext.Holder.setContext(new BlueprintRepository(container));
+ recipe.create();
}
@Test