using REMOTE_USER to auth instead of logging in - instead include a
little middleware class that adds the REMOTE_USER header during
testing.
Also fix problem with the empty test_label hack not working with
double-dotted Secretariat apps.
- Legacy-Id: 6935
be able to add fixtures once and for all for all tests, instead of loading
them again and again for each test, if running on a database that supports
transaction rollbacks. In this case, fixtures specified in the perma_fixtures
class attribute will be loaded permanently, and not re-loaded. Fixtures
specifice as before, in a fixtures class attribute, will be treated as
before.
The downside of this is that as fixtures are loaded and not unloaded, they
can conflict with each other. The requirements on consistency becomes much
greater. The effect of this has been to require quite a bit of changes to
the simplified creations of various objects in make_test_data() in cases
where identically named objects occur in fixtures. Where completely
fictitious objects are created, no conflicts appear.
Also re-wrote parts of test_runner.py to permit global fixtures, loaded
before any tests are run and shared by all.
- Legacy-Id: 6318
(for instance with InnoDB).
Added settings.DATABASE_TEST_OPTIONS which can be used to force for instance
InnoDB use during testing.
Using this has the potential of reducing the time it takes to run the test
suite substantially; a few test runs indicate a reduction in test run time by
50% on a run-of-the-mill linux server.
- Legacy-Id: 5823