-
Notifications
You must be signed in to change notification settings - Fork 43
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
[DRAFT] Feature/retestid without gm #563
Conversation
Kudos, SonarCloud Quality Gate passed! 0 Bugs |
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.
Having a deterministic RetestIdProvider
is not a contract to my knowledge, so we cannot rely on this. For example, we still ship RandomSuffixRetestIdProvider
and the user is free to provide a custom implementation. Then this doesn't work.
If we want RetestIdProvider
s to be deterministic in general, we have to document and require this contract (like e.g. equals
requires an equivalence relation), otherwise there will be undefined behavior.
Also, what happens if slight state changes lead to different counts? We no longer lookup the element in the old state and do a 1-on-1 assignment, instead we select it solely on the basis of the retest ID I guess?
It would rather mark this as a draft. We have to discuss the determinism and we need proper tests, at least for the aforementioned situations. If we do such a "drastic" change without tests, and no existing tests are failing, we are doing something wrong.
Off-topic: How to convert an existing PR into a draft? 🤷♂️ |
This is not possible as far as I am aware: isaacs/github#1547 |
Closed until someone has time to address the open issues as part of #570. |
Since
retestId
is now created deterministically, we can reference it before we even have a Golden Master. This is gonna be helpful in a variety of situations, but especially when generating Surili tests.