(let [{: describe :end test-end} (require :lib.test)] (fn add [x y] (let [x (or x 0) y (or y 0)] (+ x y))) (describe "add()" (fn [test] (let [should "return the right number"] (test {:given "two numbers" : should :actual (add 2 3) :expected 5}) (test {:given "no arguments" :should "return 0" :actual (add) :expected 0}) (test {:given "zero" : should :actual (add 0 4) :expected 4})) (test-end))))