frost
frost copied to clipboard
Allow 'xpass' to be an exemption result.
Currently, we force all the xfails we add for exemption handling to be "strict" by hard coding the value. This means an exemption will only result in a "pass" or "failed" outcome, as an "xpassed" outcome is converted to "failed" in strict mode.
For a number of scenarios, an "xpassed" for an exemption only means that someone fixed the issue before the exemption expired. In GitHub "xpassed" is handled differently than "failed". (The open issue would be closed with a "thanks" message.)
There are several ways this could be implemented -- how impactful each is depends on current manual use of the "xfail" marker:
- If no one is manually using "xfail" marker in frost tests (the current case), then we could "simply" remove the hardcoding, and let the value be set via the
.inifile (c.f. docs). The default value ofxfail_strictcould be set to "True" to continue current behavior. - If folks are manually using
xfail, the same approach could be used, but with a "flag day" to explicitly flip the strict state for manual cases. - A new config parameter
xfail_strict_for_exemptionscould be added.
@g-k I'm sure there was a reason to set the value to strict, but I'm unaware of it. Do you remember if the reasoning still matters?
I don't remember why Frost runs in strict mode by default. Feel free to change it.
@ajvb checking to ensure this won't mess up your processing.
@hwine I believe that removing the strict mode should have no impact on our current usage of Frost, so yeah feel free to change.