在Clojure中执行以下操作的正确方法是什么?
(ns todo.test.models.task
(:use [clojure.test]))
(deftest main-test
(is (thrown? Exception (throw Exception "stuff")))
(is (not (thrown? Exception (+ 2 3))))
)
第一个测试用例运行正常,但整个代码段均返回“无法解析符号:抛出?”。
最佳答案
is
是在其主体中查找符号thrown?
并进行测试的宏。thrown?
实际上不是可以调用的函数。如果is
的默认行为无法通过测试发现异常,则无法通过测试,因此您可以从上述示例中删除(not (thrown?
并获得所需的结果。
关于unit-testing - 无法解析符号:抛出?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11232203/