pylint rightfully complains about generics.py being < 2000 lines long. Besides pylint, a python source this size is hard to handle.
Some ideas: - split in MUST and SHOULD tests - Split out the start-up sequence, which is rather well defined. - Split in automatic/manual tests.
In any case, the registration code, now assuming a strict file<->module one to one relationship needs to be modified first.
This should not be fixed in 0.3
Pushed a branch refactor-1. This is just a test, splitting out the basic setup functionality from the generics test. This makes sense not only because of the large generic.py, but also because other functions related to setup can live there.
Partly addressed in 2ba0c781f776b6d6a8, but still way to large.
As of current state, the group/file relationship (one group per file, exactly) don't need to be fixed to handle this, there's simple code in review_helper to merge several groups under the same header.
Seems that the right way to split remaining generic.py is in a SHOULD/MUST parts - these are not likely to change that fast.
Fixed in 4f1378d39242f032a6aea5, split into generic_must and generic_should. generic_must is still > 1500 lines, but I don't think more splits are reasonable at the time being. Closing