Repository: camel
Updated Branches:
  refs/heads/master 0bd48bc51 -> 8be93278f


Raw event observers are ill-defined in CDI 1.0


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/861a0975
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/861a0975
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/861a0975

Branch: refs/heads/master
Commit: 861a09757d28eb0fd8411565439800dc29fe11c0
Parents: de29d3d
Author: Antonin Stefanutti <anto...@stefanutti.fr>
Authored: Thu Jan 21 14:52:20 2016 +0100
Committer: Claus Ibsen <davscl...@apache.org>
Committed: Fri Jan 22 15:57:17 2016 +0100

----------------------------------------------------------------------
 components/camel-cdi/pom.xml                    |   2 -
 .../cdi/test/RawEventEndpointCdi12Test.java     | 110 +++++++++++++++++++
 .../camel/cdi/test/RawEventEndpointTest.java    | 110 -------------------
 3 files changed, 110 insertions(+), 112 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/861a0975/components/camel-cdi/pom.xml
----------------------------------------------------------------------
diff --git a/components/camel-cdi/pom.xml b/components/camel-cdi/pom.xml
index 648670d..348a43d 100644
--- a/components/camel-cdi/pom.xml
+++ b/components/camel-cdi/pom.xml
@@ -182,8 +182,6 @@
             <configuration>
               <excludes>
                 <exclude>**/*Cdi12Test.java</exclude>
-                <!-- Weld does not resolve observer method based on the 
runtime type of the event object, e.g. @Observe Long for a Long object fired 
with Event<Object> -->
-                <exclude>**/RawEventEndpointTest.java</exclude>
               </excludes>
             </configuration>
           </plugin>

http://git-wip-us.apache.org/repos/asf/camel/blob/861a0975/components/camel-cdi/src/test/java/org/apache/camel/cdi/test/RawEventEndpointCdi12Test.java
----------------------------------------------------------------------
diff --git 
a/components/camel-cdi/src/test/java/org/apache/camel/cdi/test/RawEventEndpointCdi12Test.java
 
b/components/camel-cdi/src/test/java/org/apache/camel/cdi/test/RawEventEndpointCdi12Test.java
new file mode 100644
index 0000000..abff618
--- /dev/null
+++ 
b/components/camel-cdi/src/test/java/org/apache/camel/cdi/test/RawEventEndpointCdi12Test.java
@@ -0,0 +1,110 @@
+/**
+ * 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.camel.cdi.test;
+
+import java.util.concurrent.TimeUnit;
+import javax.enterprise.context.ApplicationScoped;
+import javax.enterprise.event.Event;
+import javax.enterprise.event.Observes;
+import javax.inject.Inject;
+
+import org.apache.camel.ProducerTemplate;
+import org.apache.camel.builder.RouteBuilder;
+import org.apache.camel.cdi.CdiCamelExtension;
+import org.apache.camel.cdi.CdiEventEndpoint;
+import org.apache.camel.cdi.Uri;
+import org.apache.camel.component.mock.MockEndpoint;
+import org.jboss.arquillian.container.test.api.Deployment;
+import org.jboss.arquillian.junit.Arquillian;
+import org.jboss.shrinkwrap.api.Archive;
+import org.jboss.shrinkwrap.api.ShrinkWrap;
+import org.jboss.shrinkwrap.api.asset.EmptyAsset;
+import org.jboss.shrinkwrap.api.spec.JavaArchive;
+import org.junit.Before;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import static org.apache.camel.component.mock.MockEndpoint.assertIsSatisfied;
+
+@RunWith(Arquillian.class)
+public class RawEventEndpointCdi12Test {
+
+    @Inject
+    private MockEndpoint consumed;
+
+    @Inject
+    private MockEndpoint produced;
+
+    @Deployment
+    public static Archive<?> deployment() {
+        return ShrinkWrap.create(JavaArchive.class)
+            // Camel CDI
+            .addPackage(CdiCamelExtension.class.getPackage())
+            // Test classes
+            .addClasses(RawEventRoute.class, RawEventObserver.class)
+            // Bean archive deployment descriptor
+            .addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml");
+    }
+
+    @Before
+    public void resetMock() {
+        consumed.reset();
+    }
+
+    @Test
+    public void sendEventToConsumer(Event<Object> event) throws 
InterruptedException {
+        consumed.expectedMessageCount(1);
+        consumed.expectedBodiesReceived("test");
+
+        event.select(String.class).fire("test");
+
+        assertIsSatisfied(2L, TimeUnit.SECONDS, consumed);
+    }
+
+    @Test
+    public void sendMessageToProducer(@Uri("direct:produce") ProducerTemplate 
producer) throws InterruptedException {
+        long random =  Math.round(Math.random() * Long.MAX_VALUE);
+        produced.expectedMessageCount(1);
+        produced.expectedBodiesReceived(random);
+        consumed.expectedMessageCount(1);
+        consumed.expectedBodiesReceived(random);
+
+        producer.sendBody(random);
+
+        assertIsSatisfied(2L, TimeUnit.SECONDS, consumed, produced);
+    }
+}
+
+class RawEventRoute extends RouteBuilder {
+
+    @Inject
+    private CdiEventEndpoint rawEventEndpoint;
+
+    @Override
+    public void configure() {
+        from(rawEventEndpoint).to("mock:consumed");
+        from("direct:produce").to(rawEventEndpoint);
+    }
+}
+
+@ApplicationScoped
+class RawEventObserver {
+
+    void collectEvents(@Observes long event, @Uri("mock:produced") 
ProducerTemplate producer) {
+        producer.sendBody(event);
+    }
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/camel/blob/861a0975/components/camel-cdi/src/test/java/org/apache/camel/cdi/test/RawEventEndpointTest.java
----------------------------------------------------------------------
diff --git 
a/components/camel-cdi/src/test/java/org/apache/camel/cdi/test/RawEventEndpointTest.java
 
b/components/camel-cdi/src/test/java/org/apache/camel/cdi/test/RawEventEndpointTest.java
deleted file mode 100644
index 65aa4d0..0000000
--- 
a/components/camel-cdi/src/test/java/org/apache/camel/cdi/test/RawEventEndpointTest.java
+++ /dev/null
@@ -1,110 +0,0 @@
-/**
- * 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.camel.cdi.test;
-
-import java.util.concurrent.TimeUnit;
-import javax.enterprise.context.ApplicationScoped;
-import javax.enterprise.event.Event;
-import javax.enterprise.event.Observes;
-import javax.inject.Inject;
-
-import org.apache.camel.ProducerTemplate;
-import org.apache.camel.builder.RouteBuilder;
-import org.apache.camel.cdi.CdiCamelExtension;
-import org.apache.camel.cdi.CdiEventEndpoint;
-import org.apache.camel.cdi.Uri;
-import org.apache.camel.component.mock.MockEndpoint;
-import org.jboss.arquillian.container.test.api.Deployment;
-import org.jboss.arquillian.junit.Arquillian;
-import org.jboss.shrinkwrap.api.Archive;
-import org.jboss.shrinkwrap.api.ShrinkWrap;
-import org.jboss.shrinkwrap.api.asset.EmptyAsset;
-import org.jboss.shrinkwrap.api.spec.JavaArchive;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
-import static org.apache.camel.component.mock.MockEndpoint.assertIsSatisfied;
-
-@RunWith(Arquillian.class)
-public class RawEventEndpointTest {
-
-    @Inject
-    private MockEndpoint consumed;
-
-    @Inject
-    private MockEndpoint produced;
-
-    @Deployment
-    public static Archive<?> deployment() {
-        return ShrinkWrap.create(JavaArchive.class)
-            // Camel CDI
-            .addPackage(CdiCamelExtension.class.getPackage())
-            // Test classes
-            .addClasses(RawEventRoute.class, RawEventObserver.class)
-            // Bean archive deployment descriptor
-            .addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml");
-    }
-
-    @Before
-    public void resetMock() {
-        consumed.reset();
-    }
-
-    @Test
-    public void sendEventToConsumer(Event<Object> event) throws 
InterruptedException {
-        consumed.expectedMessageCount(1);
-        consumed.expectedBodiesReceived("test");
-
-        event.select(String.class).fire("test");
-
-        assertIsSatisfied(2L, TimeUnit.SECONDS, consumed);
-    }
-
-    @Test
-    public void sendMessageToProducer(@Uri("direct:produce") ProducerTemplate 
producer) throws InterruptedException {
-        long random =  Math.round(Math.random() * Long.MAX_VALUE);
-        produced.expectedMessageCount(1);
-        produced.expectedBodiesReceived(random);
-        consumed.expectedMessageCount(1);
-        consumed.expectedBodiesReceived(random);
-
-        producer.sendBody(random);
-
-        assertIsSatisfied(2L, TimeUnit.SECONDS, consumed, produced);
-    }
-}
-
-class RawEventRoute extends RouteBuilder {
-
-    @Inject
-    private CdiEventEndpoint rawEventEndpoint;
-
-    @Override
-    public void configure() {
-        from(rawEventEndpoint).to("mock:consumed");
-        from("direct:produce").to(rawEventEndpoint);
-    }
-}
-
-@ApplicationScoped
-class RawEventObserver {
-
-    void collectEvents(@Observes long event, @Uri("mock:produced") 
ProducerTemplate producer) {
-        producer.sendBody(event);
-    }
-}
\ No newline at end of file

Reply via email to