[webbeans-commits] Webbeans SVN: r2370 - in ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation: event and 1 other directory.
webbeans-commits at lists.jboss.org
webbeans-commits at lists.jboss.org
Thu Apr 9 15:17:17 EDT 2009
Author: dallen6
Date: 2009-04-09 15:17:17 -0400 (Thu, 09 Apr 2009)
New Revision: 2370
Added:
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/SimpleEventTest.java
ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/Updated.java
Log:
Unit tests added from WBRI-225.
Added: ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/SimpleEventTest.java
===================================================================
--- ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/SimpleEventTest.java (rev 0)
+++ ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/SimpleEventTest.java 2009-04-09 19:17:17 UTC (rev 2370)
@@ -0,0 +1,129 @@
+package org.jboss.webbeans.test.unit.implementation.event;
+
+import javax.event.Event;
+import javax.event.Fires;
+import javax.event.Observes;
+import javax.inject.AnnotationLiteral;
+
+import org.jboss.testharness.impl.packaging.Artifact;
+import org.jboss.webbeans.ManagerImpl;
+import org.jboss.webbeans.test.AbstractWebBeansTest;
+import org.testng.annotations.AfterMethod;
+import org.testng.annotations.BeforeMethod;
+import org.testng.annotations.Test;
+
+ at Artifact
+public class SimpleEventTest extends AbstractWebBeansTest
+{
+ private static boolean called_flag_for_BindingType;
+ private static boolean called_flag_for_NonBindingType;
+
+ private static void initCalledFlag() {
+ called_flag_for_BindingType = false;
+ called_flag_for_NonBindingType = false;
+ }
+
+ @Override
+ @BeforeMethod
+ public void before() throws Exception
+ {
+ initCalledFlag();
+ super.before();
+ }
+
+ @Override
+ @AfterMethod
+ public void after() throws Exception
+ {
+ initCalledFlag();
+ super.after();
+ }
+
+ @Test
+ public void testEventUsingManager()
+ {
+ ManagerImpl manager = getCurrentManager();
+
+ manager.fireEvent("Fired using Manager Interface with AnnotationLiteral.",
+ new AnnotationLiteral<Updated>(){});
+
+ assert called_flag_for_NonBindingType == true;
+ assert called_flag_for_BindingType == true;
+
+ initCalledFlag();
+
+ manager.fireEvent("Fired using Manager Interface.");
+
+ assert called_flag_for_NonBindingType == true;
+ assert called_flag_for_BindingType == false; // not called
+ }
+
+ @Test
+ public void testEventUsingEvent()
+ {
+ ManagerImpl manager = getCurrentManager();
+
+ App app = manager.getInstanceByType(App.class);
+
+ app.fireEventByBindingDeclaredAtInjectionPoint();
+
+ assert called_flag_for_NonBindingType == true;
+ assert called_flag_for_BindingType == true;
+
+ initCalledFlag();
+
+ app.fireEventByAnnotationLiteral();
+
+ assert called_flag_for_NonBindingType == true;
+ assert called_flag_for_BindingType == true;
+
+ initCalledFlag();
+
+ app.fireEventNonBindingType();
+
+ assert called_flag_for_NonBindingType == true;
+ assert called_flag_for_BindingType == false; // not called
+ }
+
+ public static class App
+ {
+ @Fires
+ Event<String> event1;
+
+ @Fires
+ @Updated
+ Event<String> event2;
+
+ @Fires
+ Event<String> event3;
+
+ public void fireEventByAnnotationLiteral()
+ {
+ event1.fire("Fired using Event Interface with AnnotationLiteral.",
+ new AnnotationLiteral<Updated>(){});
+ }
+
+ public void fireEventByBindingDeclaredAtInjectionPoint()
+ {
+ event2.fire("Fired using Event Interface with Binding Declared.");
+ }
+
+ public void fireEventNonBindingType()
+ {
+ event3.fire("Fired using Event Interface with Non-BindingType.");
+ }
+ }
+
+ public static class Receiver
+ {
+ public void receive1(@Observes @Updated String s)
+ {
+ called_flag_for_BindingType = true;
+ }
+
+ public void receive2(@Observes String s)
+ {
+ called_flag_for_NonBindingType = true;
+ }
+ }
+}
\ No newline at end of file
Property changes on: ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/SimpleEventTest.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added: ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/Updated.java
===================================================================
--- ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/Updated.java (rev 0)
+++ ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/Updated.java 2009-04-09 19:17:17 UTC (rev 2370)
@@ -0,0 +1,22 @@
+package org.jboss.webbeans.test.unit.implementation.event;
+
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import javax.inject.BindingType;
+
+ at BindingType
+ at Retention(RUNTIME)
+ at Target( { TYPE, METHOD, FIELD, PARAMETER })
+ at Documented
+ at interface Updated
+{
+
+}
Property changes on: ri/trunk/tests/src/test/java/org/jboss/webbeans/test/unit/implementation/event/Updated.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
More information about the weld-commits
mailing list