方便的方法将班级成员带到外部班级或特质?
问题描述:
在我TestSpec类我有一大堆的属性和它的起始的拥挤,是这样的:方便的方法将班级成员带到外部班级或特质?
implicit val formats: Formats = DefaultFormats
val client: WSClient = app.injector.instanceOf[WSClient]
val env: Environment = app.injector.instanceOf[Environment]
val config: Configuration = app.configuration
val j4s: Json4s = app.injector.instanceOf[Json4s]
val actSys: ActorSystem = app.injector.instanceOf[ActorSystem]
implicit lazy val materializer: Materializer = app.materializer
// mocking service
val myService: ChironApiService = mock[MyService]
val rawTextModel: String =
"""{"message":"a message","reason":"Done","list":[34,2,12]}"""
val badResponseModel: ModelOne = JsonMethods.parse(rawTextModel).extract[BadResModel]
val futureOfEither: Future[Either[String, Int]] = Future(Left("fr"))
.
.
.
,所以我想取出来的特质而这种特质增加TestSpec,然后我可以访问信息,有没有更优雅的Scala方式来做这样的事情?
感谢
答
你可以尝试像
trait TestConfig {
val client: WSClient = app.injector.instanceOf[WSClient]
val env: Environment = app.injector.instanceOf[Environment]
val config: Configuration = app.configuration
val j4s: Json4s = app.injector.instanceOf[Json4s]
val actSys: ActorSystem = app.injector.instanceOf[ActorSystem]
implicit lazy val materializer: Materializer = app.materializer
}
class TestSpec extends TestConfig {
// mocking service
val myService: ChironApiService = mock[MyService]
val rawTextModel: String =
"""{"message":"a message","reason":"Done","list":[34,2,12]}"""
val badResponseModel: ModelOne = JsonMethods.parse(rawTextModel).extract[BadResModel]
val futureOfEither: Future[Either[String, Int]] = Future(Left("fr"))
.
.
.
}