Coverage Map
Transition coverage for each state machine โ green states have been visited by at least one test, red states have not. Coverage is measured at the graph edge level: a test that passes confirms an edge. A missing edge means that user path is unverified.
Diagrams are generated from
State_Machine__Utils.to_mermaid_coverage(). Coverage data is populated fromtransitions_observedrecorded during test runs.
How to Read This Map
| Colour | Meaning |
|---|---|
| ๐ข Green state | The state was reached during at least one test run |
| ๐ด Red state | The state has never been reached by the test suite |
A green state means at least one incoming transition was exercised. A red state means the entire sub-graph below it is untested.
Upload Wizard
9 states ยท 9 transitions
Coverage diagram is populated when snapshot data is available. Run the QA suite and export a coverage snapshot to see live green/red colouring.
Full Transition Map
Currently Known Coverage Gaps
Transitions not yet exercised by the test suite (from static analysis of existing tests):
| From | To | Trigger | Gap reason |
|---|---|---|---|
file-ready |
choosing-delivery |
auto_advance |
Multi-file / folder upload not yet tested |
choosing-delivery |
choosing-share |
click_next |
Depends on choosing-delivery branch |
Download Flow
9 states ยท 12 transitions
Coverage diagram is populated when snapshot data is available.
Full Transition Map
Currently Known Coverage Gaps
| From | To | Trigger | Gap reason |
|---|---|---|---|
entry |
ready |
submit_valid_id |
Manual entry happy path not in p0 suite |
entry |
error |
submit_invalid_id |
Manual entry error not separately tested |
ready |
gallery |
auto_route |
Gallery content-type routing not tested |
ready |
viewer |
auto_route |
Viewer content-type routing not tested |
decrypting |
error |
decrypt_failed |
Decrypt failure path not tested |
Coverage Formula
coverage_pct = covered_transitions / total_transitions * 100
Once transitions_observed are wired through from live test runs, this page will show
dynamic coverage numbers. The State_Machine__Utils.coverage() method computes this โ
see sg_send_qa/state_machines/State_Machine__Utils.py.