Thanks! I understand why my version is incorrect. However, I get the same error with the corrected spec.
On Thursday, January 17, 2019 at 3:26:24 PM UTC+1, Alex Miller wrote: > > 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.