[weld-commits] Weld SVN: r4846 - in cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback: exceptions and 1 other directory.

weld-commits at lists.jboss.org weld-commits at lists.jboss.org
Mon Nov 9 04:16:39 EST 2009


Author: jharting
Date: 2009-11-09 04:16:38 -0500 (Mon, 09 Nov 2009)
New Revision: 4846

Added:
   cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/
   cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/Goat.java
   cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/GoatInterceptor.java
   cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/LifecycleCallbackInterceptorExceptionTest.java
   cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/Sheep.java
Log:
Tests for lifecycle callback interceptor methods.

Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/Goat.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/Goat.java	                        (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/Goat.java	2009-11-09 09:16:38 UTC (rev 4846)
@@ -0,0 +1,14 @@
+package org.jboss.jsr299.tck.interceptors.tests.lifecycleCallback.exceptions;
+
+import javax.annotation.PostConstruct;
+import javax.interceptor.Interceptors;
+
+ at Interceptors(GoatInterceptor.class)
+class Goat
+{
+   @PostConstruct
+   public void postConstruct()
+   {
+      throw new IllegalStateException();
+   }
+}

Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/GoatInterceptor.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/GoatInterceptor.java	                        (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/GoatInterceptor.java	2009-11-09 09:16:38 UTC (rev 4846)
@@ -0,0 +1,30 @@
+package org.jboss.jsr299.tck.interceptors.tests.lifecycleCallback.exceptions;
+
+import javax.annotation.PostConstruct;
+import javax.interceptor.InvocationContext;
+
+class GoatInterceptor
+{
+   private static boolean exceptionCaught = false;
+
+   @PostConstruct
+   public void postConstruct(InvocationContext ctx)
+   {
+      try
+      {
+         ctx.proceed();
+      }
+      catch (IllegalStateException ise)
+      {
+         exceptionCaught = true;
+      }
+      catch (Exception e)
+      {
+      }
+   }
+
+   public static boolean isExceptionCaught()
+   {
+      return exceptionCaught;
+   }
+}

Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/LifecycleCallbackInterceptorExceptionTest.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/LifecycleCallbackInterceptorExceptionTest.java	                        (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/LifecycleCallbackInterceptorExceptionTest.java	2009-11-09 09:16:38 UTC (rev 4846)
@@ -0,0 +1,48 @@
+/*
+ * JBoss, Home of Professional Open Source
+ * Copyright 2008, Red Hat Middleware LLC, and individual contributors
+ * by the @authors tag. See the copyright.txt in the distribution for a
+ * full listing of individual contributors.
+ *
+ * Licensed 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.jboss.jsr299.tck.interceptors.tests.lifecycleCallback.exceptions;
+
+import org.jboss.jsr299.tck.AbstractJSR299Test;
+import org.jboss.test.audit.annotations.SpecAssertion;
+import org.jboss.test.audit.annotations.SpecAssertions;
+import org.jboss.test.audit.annotations.SpecVersion;
+import org.jboss.testharness.impl.packaging.Artifact;
+import org.testng.annotations.Test;
+
+
+ at Artifact
+ at SpecVersion(spec = "int", version = "3.1.PFD")
+public class LifecycleCallbackInterceptorExceptionTest extends AbstractJSR299Test
+{
+   @Test(expectedExceptions = RuntimeException.class)
+   @SpecAssertion(section = "5.2", id = "a")
+   public void testPostConstructCanThrowRuntimeException()
+   {
+      getInstanceByType(Sheep.class);
+   }
+
+   @Test
+   @SpecAssertions( { 
+      @SpecAssertion(section = "5.2", id = "c"), 
+      @SpecAssertion(section = "5.2", id = "d")
+   })
+   public void testLifecycleCallbackInterceptorCanCatchException()
+   {
+      getInstanceByType(Goat.class);
+      assert GoatInterceptor.isExceptionCaught();
+   }
+}

Added: cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/Sheep.java
===================================================================
--- cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/Sheep.java	                        (rev 0)
+++ cdi-tck/trunk/impl/src/main/java/org/jboss/jsr299/tck/interceptors/tests/lifecycleCallback/exceptions/Sheep.java	2009-11-09 09:16:38 UTC (rev 4846)
@@ -0,0 +1,12 @@
+package org.jboss.jsr299.tck.interceptors.tests.lifecycleCallback.exceptions;
+
+import javax.annotation.PostConstruct;
+
+class Sheep
+{
+   @PostConstruct
+   public void postConstruct()
+   {
+      throw new RuntimeException();
+   }
+}



More information about the weld-commits mailing list