私はいくつかのjvalueデータを取り出し、それを抽出していくつかのモデルを返す関数を私のサービスに持っています。テストで別のクラススコープで発生する障害を取得するにはどうすればよいですか?
def getInstanceOf(data: JValue, aType: String): Living = aType match {
case "person" => data.extract[Person]
case "animal" => data.extract[Animal]
}
私のテストでは、この関数を不正なデータで呼び出して、抽出が失敗することを確認します。私はサービスを注入し、サービス機能を使用して、その障害がサービス中に起こると、私はエラーを取得していないよだから、私のテストクラスでは、
val res = myService.getInstanceOf(badData, "person")
res shouldBe a[MappingException]
、それは動作しませんでした:私は試してみました。私はres shouldBe a[MappingException]
にも到達していない、私は関数を呼び出すときに失敗します。
どうすればよいですか?
val res = the [MappingException] thrownBy myService.getInstanceOf(badData, "person")
を直接それをチェック: