Your boolean-supplier should be: (s/def ::boolean-supplier (s/fspec :args (s/cat) :ret boolean?))
On Thursday, January 17, 2019 at 6:38:44 AM UTC-6, Josip Gracin wrote: > > Hi! > > The following test throws an exception when run using "lein test" and I > can't figure out why. > > (ns issue > (:require [clojure.test :as t] > [clojure.spec.alpha :as s] > [clojure.spec.test.alpha :as st])) > > (s/fdef ::boolean-supplier > :args (s/cat) > :ret boolean?) > > (defn make-fn [boolean-supplier] > (fn [] > (boolean-supplier))) > > (s/fdef make-fn > :args (s/cat :supplier ::boolean-supplier)) > > (t/deftest issue > (t/testing "issue demo" > (st/instrument) > (make-fn (fn [] true)))) > > Here's the output of "lein test": > > $ lein test > > lein test issue > > lein test :only issue/issue > > > ERROR in (issue) (Compiler.java:7647) > Uncaught exception, not in assertion. > > expected: nil > > actual: clojure.lang.Compiler$CompilerException: Syntax error compiling > at (clojure/test/check/clojure_test.cljc:95:1). > #:clojure.error{:phase :compile-syntax-check, :line 95, :column 1, :source > "clojure/test/check/clojure_test.cljc"} > at clojure.lang.Compiler.load (Compiler.java:7647) > > clojure.lang.RT.loadResourceScript (RT.java:381) > clojure.lang.RT.loadResourceScript (RT.java:372) > > clojure.lang.RT.load (RT.java:463) > clojure.lang.RT.load (RT.java:428) > ... > Caused by: java.lang.ClassCastException: clojure.lang.AFunction$1 cannot > be cast to clojure.lang.MultiFn > at clojure.core$get_method.invokeStatic (core.clj:1817) > clojure.core$get_method.invoke (core.clj:1817) > > clojure.test.check.clojure_test$eval1131.invokeStatic > (clojure_test.cljc:95) > clojure.test.check.clojure_test$eval1131.invoke (clojure_test.cljc:95) > clojure.lang.Compiler.eval (Compiler.java:7176) > > clojure.lang.Compiler.load (Compiler.java:7635) > ... > > Using Java 10.0.2 and the following dependencies: > > $ lein deps :tree > [clojure-complete "0.2.5" :exclusions [[org.clojure/clojure]]] > [nrepl "0.5.3" :exclusions [[org.clojure/clojure]]] > [nrepl/bencode "1.0.0"] > [org.clojure/clojure "1.10.0"] > [org.clojure/core.specs.alpha "0.2.44"] > [org.clojure/spec.alpha "0.2.176"] > [org.clojure/test.check "0.9.0"] > > Any ideas? > > -- You received this message because you are subscribed to the Google Groups "Clojure" group. To post to this group, send email to clojure@googlegroups.com Note that posts from new members are moderated - please be patient with your first post. To unsubscribe from this group, send email to clojure+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/clojure?hl=en --- You received this message because you are subscribed to the Google Groups "Clojure" group. To unsubscribe from this group and stop receiving emails from it, send an email to clojure+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.