DI 등록을 확인하기 위해 사용자 정의 ndepend 규칙을 작성하는 방법

StackOverflow https://stackoverflow.com/questions/19825832

  •  05-07-2022
  •  | 
  •  

문제

우리는 종속성 주입을 위해 autofac을 컨테이너로 사용하고 있습니다. 우리는 DI가 올바르게 설정되고 오용되지 않도록 NDEPOL을 사용하여 다양한 사항을 확인하고 싶습니다 (매우 큰 솔루션이 있습니다).

단위 테스트에서는 다음과 같이 접근 할 수 있습니다.

private static IEnumerable<TestCaseData> TestCases
{
    get
    {
        return from registration in Container.Value
            .ComponentRegistry.Registrations
                from service in registration.Services
                where service is TypedService
                orderby service.Description
                select new TestCaseData(registration, service)
                    .SetName(service.Description);
    }
}

그 다음에:

[Test]
[TestCaseSource("TestCases")]
public void CanBeResolved(
    IComponentRegistration componentRegistration, 
    TypedService typedService)
{
    using (var scope = Container.Value.BeginLifetimeScope())
        scope.Resolve(typedService.ServiceType);
}

모든 적절한 유형이 AutoFac 컨테이너에 등록되도록 NDEPOL 내에서 사용자 정의 규칙을 작성하려면 어떻게해야합니까?

고마워요, 리차드

도움이 되었습니까?

해결책

의견에서, 나는 내 자신의 통합 테스트를 작성할 것이지만 앞으로 Nddepend 에서이 지원을 받기를 희망합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top