Severity failure finish
Up to now, CAN Test framework is using report with severity failure to force end of simulation.
This is not good for future automated runs. If tests would be evaluated by severities of logs, this would cause all tests to fail. And, it is just pure shit to print out:
report "TEST SUCCESS" severity failure.
This task should focus on updating "generate_clock" function to forbid generation once "run" input is set to false (Or rather when test status is "passed" or "failed"). Hopefully this will not decrease simulation performance (since there will be extra comparison each clock cycle).
Furthermore, main test loop should finish with "wait" statement to avoid running the test again.
Tricky part of this task is that some of the test have processes which never finish (e.g. are blocked due to disabled feature in test). Simulator should quit, once there are no events to process. Hopefully blocked processes won't block the simulator in infinite loop. If yes (check in Bit Stuffing unit test), then tests must be examined and approach must be modified.
I believe it is not too many processes...