Prerequisite with dynamic arguments
Opened this issue · 2 comments
viebel commented
I'd like to be able to define prerequisite with a dynamic argument and access this argument in the mocking value. For instance, I'd like to be able to write something like this:
(defn bar [x])
(defn foo [x]
(bar x))
(fact
(foo 2) => 2
(provided (bar anything) => anything))
The problem in this code is that the anything
after the arrow doesn't have the value of the anything before the arrow.
Does my request make sense?
viebel commented
Could anyone help on this one?
philomates commented
metaconstants might do something similar.
like
(defn bar [x])
(defn foo [x]
(bar x))
(fact
(foo 2) => ..some-arg..
(provided (bar ..some-arg..) => ..some-arg..))
Are you somehow trying to express strong constraints between what flows in and out of subcalls? I generally try to avoid such tests because it doesn't test results but rather implementation, so when you refactor your implementation you have to update all your tests.