2017-04-18 40 views
1

嘗試使用表驅動屬性檢查基於下面的例子來測試無效的參數組合發現here下使用ScalaTest 3.0.1 測試無效的參數組合(頁面的底部,與should替換must),我的類延伸WordSpec with TableDrivenPropertyChecks with MustMatchersScalaTest 3在哪裏進行評估和生產?

forAll (invalidCombos) { (n: Int, d: Int) => 
    evaluating { 
    new Fraction(n, d) 
    } must produce [IllegalArgumentException] 
} 

然而,IntelliJ IDEA的cannot resolve symbol evaluatingcannot resolve symbol produce。現在檢查1.8中的MustMachers文檔,我發現evaluatingproduce,但沒有找到3.0.03.0.1的文檔。 Migrating to 3.0頁面沒有提到它。他們去了哪裏,我如何在ScalaTest 3中使用它們?

回答

2

evaluating關鍵字ScalaTest 3已經消除,你需要使用an [Exception] should be thrownBy { ... },而不是evaluating,如:

an [IllegalArgumentException] should be thrownBy { 
    new Fraction(n, d) 
}