CdiUnit を使用していくつかのロジックをテストしようとしています。
インターフェースがあります:
public interface Repository<T extends BaseEntity> {
T getByReferenceId(UUID referenceUUID);
}
実現:
@Named("appealRepository")
public class RepositoryImpl<T extends BaseEntity> extends AbstractDao<T> implements Repository<T> {
@Override
public T getByReferenceId(UUID referenceUUID) {
return super.getByReferenceId(referenceUUID);
}
}
テストクラス:
@RunWith(CdiRunner.class)
public class ReadSourceDataTest {
@Inject
@Mock
@Named("appealRepository")
private AppealRepositoryApi appealRepository;
////
}
Bean の構成は次のとおりです (メイン ブロックやテスト ブロックなど)。
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="
http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/beans_1_1.xsd"
bean-discovery-mode="all">
テストを実行すると、次の例外が発生します。
DeploymentException: WELD-001408: Unsatisfied dependencies for type Repository with qualifiers @Named
DeploymentException: WELD-001408: Unsatisfied dependencies for type ConversationContext with qualifiers @Http
注入ポイント [BackedAnnotatedField] @Inject @Http プライベート org.jglue.cdiunit.ContextController.conversationContext