Description
EXECUTE: Create any CDI project.
EXECUTE: Create:
public class Foo { @Inject Test test; }
public class Test { }
public class Test2 { public Test foo() { return new Test(); } }
EXECUTE: Build the project.
ASSERT: No validation problems on @Inject Test test; (in Foo class)
EXECUTE: Add @Produces to Test2.foo():
public class Test2 { @Produces public Test foo() { return new Test(); } }
EXECUTE: Save Test2.java
FAILURE: @Inject Test test (in Foo class) is NOT marked as ambiguous injection
ASSERT: @Inject Test test (in Foo class) is marked as ambiguous injection
EXECUTE: Comment @Produces to Test2.foo():
public class Test2 { // @Produces public Test foo() { return new Test(); } }
EXECUTE: Save Test2.java
ASSERT: @Inject Test test (in Foo class) is NOT marked as ambiguous injection