У меня есть библиотека, которую я хочу выставить как в модульных тестах в Scala, так и в самом коде.
В sbt я добавил свою библиотечную зависимость с конфигурацией "test"
, и она стала доступна для тестов, но я не могу использовать ее в коде. Если я оставлю конфигурацию be или добавлю "compile"
, она не будет доступна для импорта в модульных тестах.
libraryDependencies ++= Seq(
"org.scalacheck" %% "scalacheck" % "1.14.0",
"org.scalatest" %% "scalatest" % "3.0.6" % "test",
"org.scalactic" %% "scalactic" % "3.0.6" % "test")
Основная проблема в том, что я предоставляю абстрактный класс, который хочу использовать повсюду в другом коде: abstract class UnitSpec extends FlatSpec with Matchers with ScalaCHeckDrivenPropertyChecks
, а также использую его в тестах библиотеки. Если я добавлю "test"
в ScalaCheck, он не сможет найти его в основном коде библиотеки. Если я оставлю это как есть, оно не может с org.scalatestplus.scalacheck.ScalaCheckDrivenPropertyChecks
. Раньше это было нормально и нормально работало с 3.0.5 и GeneratorDrivenProperyChecks
, но это устарело.
Есть ли способ достичь того, чего я хочу? Я пытался "test->compile"
, но это также не делает то, на что я надеялся ...