如何在测试中引发此异常?

时间:2020-01-24 15:29:53

标签: testing exception clojure

我正在尝试测试一个java.sql.SQLException处理程序,该处理程序将包装如下所示的异常。但是我不确定如何在测试中抛出该异常。

(-> e 
    (.getNextException) 
    (.getMessage) 
    (.startsWith "ERROR: duplicate key value")) 

当前模拟(.getNextException)对此返回nil:

(throw (SQLException. "ERROR: duplicate key value")) 

1 个答案:

答案 0 :(得分:0)

您要

(throw (doto (SQLException. "Top-level exception") 
             (.setNextException (SQLException. "ERROR: duplicate key value"))))