Я делаю некоторые тесты, и во многих случаях у меня есть конфигурация FTP / HTTP.
Я работаю со Scala и следующими библиотеками в моем sbt:
"org.scalatest" %% "scalatest" % "3.0.1" % Test,
"org.scalamock" %% "scalamock" % "4.1.0" % Test,
Я делаю для следующего кода в качестве примера макет конфигурации внутри моего теста:
val someConfig = SomeConfig(
endpoint = "",
user = "",
password = "",
companyName="",
proxy = ProxyConfig("", 2323)
)
Но я чувствую, что нехорошо делать это для каждой конфигурации, с которой я буду иметь дело ...
Я хотел бы создать следующее:
val someConfig = mock[SomeConfig]
но когда мой код пытается достичь свойства proxy, являющегося классом case, происходит сбой с исключением нулевого указателя.
Я хотел бы знать, как смоделировать классы case, которые содержат другие классы case, и сделать мой код немного более понятным, есть ли способ сделать это с MockFactory?