Example Spec - The title of your blueprint¶
Reorganize the structure of the unit test tree to be consistent with the structure of the code tree.
There is no consistent organization of unit test modules (neutron/test/unit/*). There is no easy way to find the unit tests for a given module, making it challenging to determine whether code is well-tested. There are also no clear guideline as to where new tests should go, ensuring that the problem continues.
The module structure of the neutron/tests/unit subtree should be changed to mirror the structure of the code tree.
The path structure should be the same. This implies that modules under the path:
should have test modules in the following location
For example, test modules for ‘neutron/scheduler’ should have tests at ‘neutron/tests/unit/scheduler’.
The name of the test modules should correspond to the name of the module under test, prefixed with ‘test_’. For example, the module ‘neutron/scheduler/dhcp_agent_scheduler.py’ implies the test module ‘neutron/tests/unit/scheduler/test_dhcp_agent_scheduler.py’.
This requirement should be documented such that new changes follow this scheme.
Data Model Impact¶
REST API Impact¶
Other End User Impact¶
Other Deployer Impact¶
Patch authors and reviewers will need to ensure that new changes maintain the consistent structuring of the unit test tree.
The required structure of the unit test tree should be documented in the in-tree developer documentation.