kaocha

Official support channel: https://clojureverse.org/c/projects/kaocha
plexus 2020-03-19T15:43:56.125200Z

@oliy exceptions are handled by the is macro, so they will always bubble up to there.

2020-03-19T15:53:25.126900Z

hi @plexus thanks, so do i need to hook into what is does more directly, rather than relying on the reporter?

plexus 2020-03-19T15:58:36.127600Z

I don't see how you would do that. is just sets up a try/catch, so when you're in the catch branch you're no longer in the try

plexus 2020-03-19T15:59:11.127900Z

(defmacro try-expr
  "Used by the 'is' macro to catch unexpected exceptions.
  You don't call this."
  {:added "1.1"}
  [msg form]
  `(try ~(assert-expr msg form)
        (catch Throwable t#
          (do-report {:type :error, :message ~msg,
                      :expected '~form, :actual t#}))))

2020-03-19T18:20:17.130200Z

Interesting. I have a fixture around the test that is setting up the browser connection, so I'd expect the bindings to still be available when do-report is called. When I inspected the stack trace from inside my :error reporter it didn't contain any of my fixtures

2020-03-19T18:20:24.130500Z

I'll have another look