Uploaded image for project: 'CDI TCK'
  1. CDI TCK
  2. CDITCK-432

some TCK tests assume InjectionPoints in decorators and interceptors are working

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 1.2.2.Final, 2.0.1.Final
    • 1.2.1.Final
    • Tests
    • None

      I struggle with a few TCK tests which assume that in Decorators and Interceptors you can have an @Inject ct which has a valid InjectionPoint.
      But I cannot find in the spec how this is supposed to work.

      5.5.7 defines in which situations the CDI container must create an InjectionPoint:


      An instance of InjectionPoint may represent:
      • an injected field or a parameter of a bean constructor, initializer method, producer method, disposer method or observer method, or
      • an instance obtained dynamically using Instance.get().


      But if you e.g. look at

      @Inject
      public OrderedEventDeliveryDecorator(@Delegate Event<T> delegate, InjectionPoint ip, BeanManager manager,
      OrderedEventDeliveryExtension extension)

      then this does not fit any requirement imo. Because the Decorator is a dependent bean on the decorated contextual instance.
      Thus it's 'internal' and does not have any InjectionPoint. This would be different if you would @Inject the Decorator into some other bean...

      The TCK test in question is ComplexEventDecoratorTest#testOrderedEvents

              tremes1@redhat.com Tomas Remes
              struberg Mark Struberg (Inactive)
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated:
                Resolved: