Вопрос, связанный с модульным тестом
Обнаружена проблема с тестированием объектов scala, которые расширяют другой трейт/класс, имеющий соединение с БД (или любой другой «внешний» вызов).
Использование синглтона с подключением к БД в любом месте моего проекта делает модульный тест невозможным, потому что я не могу переопределить/издеваться над подключением к БД
Это приводит к изменению моего дизайна только для целей тестирования в ситуациях, когда он явно должен быть объектом.
Какие-либо предложения ?
Фрагмент кода для нетестируемого кода:
object How2TestThis extends SomeDBconnection {
val somethingUsingDB = {
getStuff.map(//some logic)
}
val moreThigs {
//more things
}
}
trait SomeDBconnection {
import DBstuff._
val db = connection(someDB)
val getStuff = db.getThings
}