You can file a jira on this. On Saturday, December 31, 2016 at 10:16:00 AM UTC-6, miner wrote: > > > On Dec 30, 2016, at 9:42 AM, John Schmidt <john.schmid...@gmail.com> > wrote: > > (s/def ::game1 #(satisfies? Game %)) > (s/def ::game2 (partial satisfies? Game)) > > > (s/explain ::game2 (spec-test.foo/->Foo)) > val: #spec_test.foo.Foo{} fails spec: :spec-test.core/game2 predicate: > (partial satisfies? Game) <---- WAAAAAT > nil > > > It looks like the spec macros aren’t resolving the Game reference in the > game2 spec. You can use macroexpand-1 to see what was happening at the > top-level. The internal macros get a little complicated so I can’t say if > code expressions like this were intended to work. It doesn’t hurt to file > a bug. > > I think the usual way to write this would be to define your own little > predicate first and then use that var in the spec. > > (def my-game? (partial satisfies? Game)) > > (s/def ::game3 my-game?) > > If you want to work around the immediate issue, try using the fully > qualified symbol for the protocol. (I prefer ::game3 FWIW.) > > (s/def ::game4 (partial satisfies? spec-test.core/Game)) > > > > > > >
-- 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.