-
Notifications
You must be signed in to change notification settings - Fork 444
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
use GenK for testdata generation in MonadFilter and related laws #1877
Conversation
# Conflicts: # modules/core/arrow-test/src/main/kotlin/arrow/test/laws/BimonadLaws.kt # modules/core/arrow-test/src/main/kotlin/arrow/test/laws/ComonadLaws.kt
I'll look over this tomorrow, it's getting a bit late :) Btw this is the pr where I expect a lot of test failures. This covers the most complex parts of arrow and exposes even lesser used apis to better tests, which will make some of them fail and thats a good thing! :) |
Ok so the |
For the rx2 instances with errors: They are likely not lawful. Just comment out the monad filter laws for them and refer to the other issue I created. |
re the rx2 instances: its not just the MonadFilterLaws, its also the TraverseLaws. should there be an extra ticket or is it ok to just link to the existing one? |
Missed that comment. And yeah there should be. The reason for those errors is becomes foldable (for ObservableK) is implemented with |
Btw how does |
comment out laws for unlawful instances add link to github issues
i have commented out the failing laws now and added links to the github issues you created
i have added exceptions to the IO gen. The IOTest runs fine |
what about the StateTTest. was it OK to change the used state or is this a bug too? |
Ah the change from list as a the monad. The change is good, having lists as the underlying monad is just suboptimal. We are testing |
Also, do you want to do a pass on the actual tests from the monad hierarchy in this pr as well? Most of them assume no passed gen, so they run on |
i'd say better in a next PR. i deliberately tried to keep it smaller this time after the first one touched so many parts 😄 |
Ok, but to avoid duplicate work, do you want to work on it or should I. It is looking at the laws, seeing where |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One nit around the comment for eitherT, the rest is good, thanks a lot for doing this 👏
modules/mtl/arrow-mtl-data/src/test/kotlin/arrow/mtl/EitherTTest.kt
Outdated
Show resolved
Hide resolved
i would likely do it in a couple of days. if you want to do it before go ahead |
this PR is part of (#1858)
all laws functions that were previously deprecated are removed now
open questions: