testing

Testing tools, testing philosophy & methodology...
vemv 2020-07-22T10:58:12.092400Z

clojure.test fixtures, similarly to other mechanisms that hook functions to other functions (e.g. Emacs defadvice or Rails before_action) can be perceived as overly magical. Personally I don't (or at least not much), but also can see why someone would feel that way when maintaining a given test. Is this something you have tackled in the past? Maybe you agreed in some middle ground? Or maybe banned use-fixtures altogether?

tanzoniteblack 2020-07-22T15:40:57.094800Z

@vemv, test fixtures are fantastically powerful. But in general, we've gone away from them at Yummly, despite having used them pretty heavily in the past. The main reason we stopped using them was because test-fixtures make running things defined as deftest difficult to run as raw functions, which people were doing pretty heavily before cider had good test running support. Nowadays, we could probably go back, but I like the "non-magical" control of being able to see at a glance everything that test is doing, without having to rely knowing that something's modifying it, but only when run with a proper test runner of some variety

tanzoniteblack 2020-07-22T15:41:44.095100Z

but no hardcore opposal to them

vemv 2020-07-22T15:50:42.095200Z

Yeah I'm in a similar position (ambivalent), likewise I find the matter of running tests individually important, but CIDER is good at it The problem is where to draw the line :)