You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwebbeans.apache.org by co...@apache.org on 2013/02/15 16:21:43 UTC

svn commit: r1446630 - in /openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors: beans/DependentScopedBean.java common/DependentInterceptor.java dependent/DependentInterceptorTest.java

Author: covener
Date: Fri Feb 15 15:21:42 2013
New Revision: 1446630

URL: http://svn.apache.org/r1446630
Log:
[OWB-771] add unit test for making sure the InovcationTarget#getTarget is still around
during interceptors catching an Exception. Already worked on trunk after refactor
from InvocationContextImpl.


Modified:
    openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/beans/DependentScopedBean.java
    openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/common/DependentInterceptor.java
    openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/dependent/DependentInterceptorTest.java

Modified: openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/beans/DependentScopedBean.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/beans/DependentScopedBean.java?rev=1446630&r1=1446629&r2=1446630&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/beans/DependentScopedBean.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/beans/DependentScopedBean.java Fri Feb 15 15:21:42 2013
@@ -43,7 +43,13 @@ public class DependentScopedBean
     {
         SAY_HELLO = true;
     }
-    
+
+    @DependentInterceptorBindingType
+    public void throwException()
+    {
+        throw new RuntimeException("goodbye");
+    }
+ 
     @PostConstruct
     public void postConstruct()
     {

Modified: openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/common/DependentInterceptor.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/common/DependentInterceptor.java?rev=1446630&r1=1446629&r2=1446630&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/common/DependentInterceptor.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/common/DependentInterceptor.java Fri Feb 15 15:21:42 2013
@@ -30,6 +30,8 @@ public class DependentInterceptor
     public static boolean DEP_OK = false;
     
     public static int refCount = 0;
+
+    public static Class<?> exceptionTarget = null;
     
     public DependentInterceptor()
     {
@@ -40,7 +42,12 @@ public class DependentInterceptor
     public Object aroundInvoke(InvocationContext ctx) throws Exception
     {
         DEP_OK = true;
-        
-        return ctx.proceed();
+        try {  
+            return ctx.proceed();
+        }
+        catch (Exception e) { 
+            exceptionTarget = ctx.getTarget().getClass();
+            throw e;
+        }
     }
 }

Modified: openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/dependent/DependentInterceptorTest.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/dependent/DependentInterceptorTest.java?rev=1446630&r1=1446629&r2=1446630&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/dependent/DependentInterceptorTest.java (original)
+++ openwebbeans/trunk/webbeans-impl/src/test/java/org/apache/webbeans/newtests/interceptors/dependent/DependentInterceptorTest.java Fri Feb 15 15:21:42 2013
@@ -77,6 +77,14 @@ public class DependentInterceptorTest ex
         Assert.assertTrue(DependentInterceptor.refCount == 1);
         
         Assert.assertTrue(DependentScopedBean.SAY_HELLO);
+
+        try { 
+            dbean.throwException();
+        }
+        catch (Exception e) { 
+            Assert.assertTrue(DependentInterceptor.exceptionTarget.equals(DependentScopedBean.class));
+        }
+            
                 
         bean.destroy(dbean, ctx);