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

DecoratorDefinitionTest.testDecoratedTypes() asserts that a superinterface of the decorator bean class is not a decorated type.

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 1.0.2.CR3, 1.1.0.Alpha1
    • 1.0.1.Final
    • Tests
    • None

      See
      public void testDecoratedTypes()

      { List<Decorator<?>> decorators = getCurrentManager().resolveDecorators(FooBar.TYPES); assert decorators.size() == 1; assert decorators.get(0).getDecoratedTypes().size() == 3; assert decorators.get(0).getDecoratedTypes().contains(Foo.class); assert decorators.get(0).getDecoratedTypes().contains(Bar.class); assert decorators.get(0).getDecoratedTypes().contains(Baz.class); assert !decorators.get(0).getDecoratedTypes().contains(Serializable.class); assert !decorators.get(0).getDecoratedTypes().contains(FooDecorator.class); assert !decorators.get(0).getDecoratedTypes().contains(AbstractFooDecorator.class); assert !decorators.get(0).getDecoratedTypes().contains(Boo.class); }

      But Boo is a superinterface of FooDecorator (not a superclass). And according of JSR-299 8.1 it's a decorated type:

      8.1. Decorator beans
      A decorator is a managed bean. The set of decorated types of a decorator includes all bean types of the managed bean which are Java interfaces, except for java.io.Serializable.

            marius.bogoevici Marius Bogoevici (Inactive)
            alexeykazakov Alexey Kazakov
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: