I have a general question about property-based testing.. @johnynek found a problem in my PR (quite correctly found), which really points to a problem I've always had with property-based testing, namely the lack of existential (exemplary) tests
when you have a lot of forAll tests.. it always seems like there's a dozen semantically very different implementations available to satisfy these
for my own stuff I usually resorted to additional example tests (basically, because universal quantification is easily satisfied by empty sets)
I haven't seen any of those in algebra.. is that on purpose and how do you guard against these semantic variations where the laws are satisfied but the actual implementation does something totally strange?
@FrankRaiser I’m not very involved in algebra, but I do think that the sweet spot is a combination of property-based tests and standard example tests. Though admittedly I tend to just put together property-based tests because they can be so easy to create.
Also I remember a talk that Jessica Kerr gave a talk in which she said that if nothing else, the “manual” tests serve as nice documentation of how something is used.