Conversation
|
| # all of this min_size=len(uuids) etc is going to lead to terrible shrinking. | ||
| # But the alternative of while draw(st.booleans()) will generate too-small | ||
| # collections. Use `more` from hypothesis internals? |
There was a problem hiding this comment.
Let's decompose this: generate a worker_and_run() or something, and then have reports() draw a list of those. We can pass in a list of (db_key, nodeid) pairs for each report to sample from; and have the multi-worker reports strategy add whatever offset we need after the fact if overlap=False (noting that we probably want a smaller upper bound on timestamps).
There was a problem hiding this comment.
ok if I come back to this one? I definitely want a strong strategy here, but also want to write the overlapping case first before making it smarter
|
My bad for the hasty review, seriously, but this implementation is wrong once you have a restart - sorting by elapsed time will interleave all the runs, and then crash with assertion errors. Having played around a bit in a branch (https://github.com/Zac-HD/hypofuzz/compare/zac/linearize), I think the solution is to change
|
Part of #3 (comment)