-
Notifications
You must be signed in to change notification settings - Fork 145
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
Store check result modified during interpretation #3540
base: main
Are you sure you want to change the base?
Conversation
When presenting results to the user it should be clear at the first sight which check did not fail as expected or which checks are informational only.
This doesn't feel right to me. Not sure I can pin-point why, but for one I presume this will break when multiple checks of same name are present. Also there are before/after phases and users don't specify expected outcome per phase. Hard to wrap a head around this, but if I understand it correctly, when changing the check.result like this, it could mean that when 1 out of 4 things fails, we convert all four to fail. As it's now, results would stay and only the actual test result would be affected with added note as for why. I'm guessing the pain-point is the disconnect between Test Result and Check Result, where in Test Result, we are simply flipping it (and creating original_outcome), while in Check Result it's currently not quite possible treat it the same way. iirc, there are more questions...
Maybe I'm missing something, but couldn't most of this be solved by doing Check.SubResult or PhaseResult? (alongside moving away from using name as a identifier) |
AVC check does "setup" before the test, and checks collected events after the test. But it does not emit a "before" result - although I would like it to return a "skip" result if SELinux is not available (#3498).
Maybe. My views: I for one consider the "before" and "after" stages as a single check, if one of them fails, the check fails.
IMHO same as above, I would expect the check to be marked as failed, with a nice note.
IMHO same as above, I would expect the check to be marked as failed, with a nice note.
Maybe. Having one bucket to report both "before" and "after" content would simplify the evaluation and questions above, although it would not help with name as an identificator as test still could have multiple checks of the same kind. We really need that unit test to collect all combinations and corner cases and test what we expect to happen. We are discussing various combinations and it's easy to get lost - with a test, we would point a finger at one combination stating "This one does not feel right". |
That would be fine, except the use-cases like the feedback we got where a user wants to ignore the before-test dmesg fail as it creates false positives. Still, without check subresults, each phase is a check? So while we have check as a whole resultsoutcome, we are flipping phase.result? (for lack of better words)
+1 |
When presenting results to the user it should be clear at the first sight which check did not fail as expected or which checks are informational only.
Pull Request Checklist