Closed pieqq closed 1 month ago
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 47.59%. Comparing base (
6a3e3c1
) to head (99ee45a
). Report is 13 commits behind head on main.
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Just verified that C3 doesn't parse this list to any more details. I think this will be a useful addition to help us validate the testing coverage that wont break C3 compatibility.
Turning this into draft again as I think there is a way to export effective category and effective certification status, which could be helpful.
This PR is ready for review.
The changes look good to me! Are we now also adding the plugin
field to each test result, perhaps we can parse this into C3 as well?
The changes look good to me! Are we now also adding the
plugin
field to each test result, perhaps we can parse this into C3 as well?
The problem is we have a weird mapping between Checkbox and C3. In Checkbox,, a job can have the following plugin
options:
I think in C3, this is emulated by the type
field in Test model, which concatenate this (to be confirmed).
Similarly, in C3, the status of a TestResult is narrowed down to skip/fail/pass
, whereas in Checkbox there are other possibilities (crashed
, not-supported
, etc.). I don't know why the raw information is not sent to C3, and C3 then has the logic to do any aggregation it would see fit.
But yes, we could start saving this info in C3 as well.
Description
Developments in Checkbox and C3 require more information being shared between the two.
C3 uses the
submission.json
file generated by Checkbox when creating the submission archive. This JSON file contains arejected-jobs
section that, until now, only contained thefull_id
of the jobs being de-selected.With this PR, the exported submission.json includes more information in the
rejected-jobs
array, similarly to whatresults
contain. This includes partial id and full id, plugin (which allows us to know what kind of job this is, including attachment, resource, etc.), and effective category and certification status (blocker or non-blocker).Resolved issues
https://warthogs.atlassian.net/browse/CHECKBOX-1597
Documentation
Tests
Ran the following test with the version in
main
and the version in this branch:checkbox-cli
D
)Compare the number of rejected jobs in both cases to make sure we have the same outcome:
Here is a sample submission JSON file from a run on my laptop: submission_after_effective.json
Note that, exactly like jobs that have been run (present in
results
section), the jobs inrejected-jobs
include the effective certification_status and category. For instance, thecamera/detect
job is marked as a cert-blocker:The rejected-jobs also include attachment and resource jobs: