前提・実現したいこと
play test 実行時にテスト用 DB に接続先を変更するため、application.conf ではなく test.conf を読み込むようにしたいです。
発生している問題・エラーメッセージ
application.conf の値が上書きされないので、 test.conf が読み込まれていないように見えます。
"jdbc:h2:mem:[play]" was not equal to "jdbc:h2:mem:[test]"
ScalaTestFailureLocation: repository.RepositoryOnDBSpec at (RepositoryOnDBSpec.scala:13)
Expected :"jdbc:h2:mem:[test]"
Actual :"jdbc:h2:mem:[play]"
該当のソースコード
application.conf
db { default.driver = "org.h2.Driver" default.url = "jdbc:h2:mem:play" }
test.conf
sbt
1include "application.conf" 2 3db { 4 default.driver = "org.h2.Driver" 5 default.url = "jdbc:h2:mem:test" 6}
build.sbt
sbt
1fork in Test := true 2javaOptions in Test += "-Dconfig.resource=conf/test.conf"
RepositoryOnDBSpec.scala
scala
1class RepositoryOnDBSpec extends PlaySpec with GuiceOneAppPerSuite with BeforeAndAfter { 2 3 "db.default.url" should { 4 "test" in { 5 val uri = ConfigFactory.load().getConfig("db").getString("default.url") 6 uri mustBe "jdbc:h2:mem:test" 7 } 8 } 9 10}
補足情報(FW/ツールのバージョンなど)
OS : macOS Catalina 10.15.5
FW : Play Framework 2.8
Java : openjdk 14.0.1
Scala : 2.13.2
sbt : 1.3.10
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。