Циклическая зависимость в тестовых случаях - PullRequest
0 голосов
/ 10 сентября 2018

У меня есть три приложения в настройке зонтичного проекта

  1. Datalayer
  2. ApiLayer
  3. OtherLayer Некоторый другой слой (но обязательный)

Теперь у меня есть зависимости, определенные следующим образом в файле микса. Приложение ApiLayer имеет

{:OtherLayer, in_umbrella: true},
{:Datalayer, in_umbrella: true}

Приложение Datalayer не зависит от зонтичных приложений. Приложение OtherLayer имеет

{:Datalayer, in_umbrella: true}

Но тестовые примеры, которые вызываются из приложения ApiLayer , должны вызывать контекстопределенный в Datalayer и контексте Datalayer , в свою очередь, должен получить доступ к некоторым функциям OtherLayer , но не может.потому что, если я добавлю его зависимость в Datalayer .Это будет случай циклической зависимости.Мне нужно пройти мои тесты.Есть ли способ загрузить часть кода без создания циклической зависимости?Любая помощь будет оценена.Спасибо

1 Ответ

0 голосов
/ 23 сентября 2018

Если OtherLayer всегда включено в приложение, которое уже имеет Datalayer в качестве зависимости, то вы можете удалить зависимость Datalayer из OtherLayer, так как приложение в любом случае будет включено в ваш выпуск. Если вам нужно построить OtherLayer как отдельное приложение, то создайте приложение OtherLayerWrapper, которое имеет Datalayer и OtherLayer в качестве зависимостей.

...