Fork me on GitHub
#kaocha
<
2020-09-11
>
kardan08:09:42

I’m a bit confused. Is spec instrumentation supposed to be on by default? Im not seeing that happening and adding a hook pre-test to enable it causes internal kaocha spec errors on id & type

kardan08:09:35

Have to admit that Im still trying to figure out things

plexus08:09:22

have you seen the orchestra plugin?

plexus08:09:39

I am also interested though in what you're seeing, what does your hook look like and what's the error you're getting?

kardan08:09:07

;; tests.edn
#kaocha/v1
{:tests [{:id :all
          :type :kaocha.type/clojure.test
          :test-paths ["test"]
          :source-paths ["src" "specs" "dev/src" "dev/resources" "test/resources"]
          :kaocha.hooks/pre-test [dev.check-specs-hook]
          :kaocha.hooks/post-test [dev.uncheck-specs-hook]
          }
         ]
 :plugins [:kaocha.plugin/filter
           :kaocha.plugin/capture-output
           :kaocha.plugin/profiling
           :kaocha.plugin/hooks]
 }

;; Hook
(defn check-specs-hook [suite test-plan]
  (check-specs!) ;; fn that only does (stest/instrument)
  suite)

kardan08:09:59

“should contain keys: :kaocha.testable/id, :kaocha.testable/type”

kardan08:09:20

Might very well be me doing something silly, I feel a bit confused

plexus09:09:08

no stack trace I guess? it's validating the test plan as if it's a testable, which it isn't, so that there's no id/type is fine, probably some function has too stringent an fdef defined

kardan09:09:22

No, sorry no stacktrace

plexus09:09:52

in any case the orchestra plugin should do what you want, or if you want to instrument with spec instead of orchestra then do what that one does, i.e. use post-load hook for instrumenting, and post-run for unstrumenting

👍 3