Bring back the event simulator for Tox tests.
In the past, the tox tests ran using "simulated events," meaning eventlet threads weren't used. However, during a recent bit of refactoring to use an Oslo RPC base class, this feature was removed as it was incompatible with other changes.
I've done some research and it turns out this was unnecessary. It is possible for the event simulator to exist alongside everything else. Additionally, the code to set up simulated events, which was previously somewhat hard to follow, has been reduced to a single module plus two lines in run_tests.py (this includes the import).
Some may ask, why even run the event simulator? The simple answer is because it speeds up the test runs by a factor of ten.
Without event simulator: 75.394s
With event simulator: 7.573s
Because we run the tests with XML as well, this could dramatically reduce the time it takes to get tox results back from Jenkins.
Blueprint information
- Status:
- Complete
- Approver:
- Tim Simpson
- Priority:
- Medium
- Drafter:
- Tim Simpson
- Direction:
- Approved
- Assignee:
- Tim Simpson
- Definition:
- Approved
- Series goal:
- Accepted for icehouse
- Implementation:
- Implemented
- Milestone target:
- None
- Started by
- Michael Basnight
- Completed by
- Michael Basnight
Related branches
Related bugs
Sprints
Whiteboard
Gerrit topic: https:/
Addressed by: https:/
Simulates events so run_tests.py executes 10x faster