hedgehogqa / haskell-hedgehog-classes

Hedgehog will eat your typeclass bugs
BSD 3-Clause "New" or "Revised" License
56 stars 17 forks source link

expose more law-defining utilities #32

Open sellout opened 4 years ago

sellout commented 4 years ago

There are a lot of useful functions in this library for defining laws, but they're not exposed at all. I'm thinking mostly of things in Hedgehog.Classes.Common.Laws like congruency, lawWhere, etc.

It seems like there should be at least two exposed modules -- one for checking laws (containing most of what's already exposed) and one for defining laws (containing the stuff I mentioned above, plus the stuff like the equality tests that are already exposed).

chessai commented 4 years ago

I've thought about this before and I'm in favour. Mind preparing a PR?