You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@deltaspike.apache.org by "Gerhard Petracek (JIRA)" <ji...@apache.org> on 2014/10/12 01:01:33 UTC
[jira] [Resolved] (DELTASPIKE-736) MockAwareInjectionTargetWrapper
breaks interceptors in unit tests
[ https://issues.apache.org/jira/browse/DELTASPIKE-736?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Gerhard Petracek resolved DELTASPIKE-736.
-----------------------------------------
Resolution: Fixed
Fix Version/s: 1.0.4
> MockAwareInjectionTargetWrapper breaks interceptors in unit tests
> -----------------------------------------------------------------
>
> Key: DELTASPIKE-736
> URL: https://issues.apache.org/jira/browse/DELTASPIKE-736
> Project: DeltaSpike
> Issue Type: Bug
> Components: TestControl
> Affects Versions: 1.0.3
> Environment: OpenWebBeans 1.2.6
> Reporter: Ronald Steininger
> Assignee: Gerhard Petracek
> Fix For: 1.0.4
>
> Attachments: ds-736-demo.tgz
>
>
> The automatic usage of MockAwareInjectionTargetWrapper breaks method-level interceptors under OWB:
> org.apache.webbeans.config.BeansDeployer#validate creates the interceptor stack of all beans while validating the deployment (Line 474). This code depends on owbBean.getProducer() returning an AbstractProducer (Line 462).
> TestControl replaces that AbstractProducer in some circumstances with an instance of MockAwareInjectionTargetWrapper, completely deactivating the if-branch which would active the interceptors.
> It seems that, depending where the interceptor binding is defined on the intercepted bean, interceptors work or don't work: using the annotation on the class level results in getProducer returning a AbstractProducer -> interceptors work. Defining interceptors only on methods shows the broken behaviour described here.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)