Cen*_*xel 1 assert equality clojure
在我的程序中,我试图通过编写验证我定义的函数的功能的测试来测试我的程序。在它们通过我的函数后,我正在测试序列的相等性。
my-reverse 的定义:
(defn my-reverse [coll]
(if (empty? coll)
[]
(conj
(my-reverse (rest coll))
(first coll)
)
)
)
Run Code Online (Sandbox Code Playgroud)
我不知道为什么我的断言失败了,因为 (my-reverse [1]) 返回 [1]。这是断言:
(assert (identical? (my-reverse [1]) [1]))
Run Code Online (Sandbox Code Playgroud)
谢谢大家!
identical?仅true当参数引用同一个对象时才返回,如果您的my-reverse函数构造一个新列表,则情况并非如此。你可以只使用=:
(assert (= (my-reverse [1]) [1]))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
60 次 |
| 最近记录: |