Отключить определенные аспекты во время тестов на муравьев - PullRequest
0 голосов
/ 26 мая 2020

У меня есть аспект.

@Aspect
public class MyAspect {

    private MethodInterceptor myInterceptor;

    public MyAspect() {
      no-op
    }

    public void setInterceptorFactory(@NonNull final InterceptorFactory interceptorFactory) {
        //code
    }

    @Around("execution(* *(..)) && @annotation(enableMetrics))
    public Object logAndProceed(final ProceedingJoinPoint pjp)  {
        return myInterceptor.invoke(new SimpleMethodInvocation(pjp));
    }
}

И я использую его вот так

@EnableMetrics
public GetResponse getContract(args..) {
   //code
}

Я занимаюсь ткачеством времени загрузки этого аспекта.

Теперь при выполнении модульных тестов для getContract , код аспекта также запускается и выдает NPE при возврате из logAndProceed.

Все, что я хочу, это отключить переплетение аспектов только для тестирования метода getContract. Есть ли для этого хорошее решение?

Уже видел эту ссылку , сейчас невозможно использовать if () pointcut.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...