I have a multi-module sbt project with integration tests for each module. Module a depends on module b for compile, test, and integration test scope. So I have it setup like this in a Build.scala:
lazy val authorizationdeciderservice = Project(
id = "a",
base = file("modules/a"),
configurations = Seq(IntegrationTest),
dependencies = Seq(b % "compile;it->test;it")
)
Now the compile and it->test dependency work fine, but the it dependecy does not, in that I am unable to access resources on the it path in b from integration tests in a.
What might the issue be?
Using
"it->it"wasn't working for me in sbt 1.8.0. I was able to make it work with"test->it". This has the downside of making"b"'s integration test code available in"a"'s regular tests, but it at least avoids the code duplication I would have done. Eventually I'll move to the recommended separate sub-project for integration tests, per sbt 1.9.0's release notes.