DBM Session test shouldn't use default database.
------------------------------------------------
Key: MODPYTHON-119
URL: http://issues.apache.org/jira/browse/MODPYTHON-119
Project: mod_python
Type: Bug
Components: core
Versions: 3.2
Reporter: Graham Dumpleton
The test_Session_Session_conf() of test/test.py doesn't override the default
DBM session database name that would be used for prefork/worker MPM variants.
This means that if there is already an instance of Apache running as its
designated user which has already created the session database and the tests
are run as a different user, the test will fail. Further, if mod_python has
never previously been used and no session database exists, the test will
succeed, but when someone goes to use sessions in the installed mod_python, it
will fail in the case where the session database created by the test was as a
different user to that which Apache runs as.
The test suite should ensure that it overrides any defaults and stores such
databases in test suite document tree. It should possibly also ensure that such
transient files are removed so as not to create a problem on subsequent tests.
Test might therefore be changed to:
def test_Session_Session_conf(self):
database = os.path.join(TESTHOME,"mp_sess_test.dbm")
c = VirtualHost("*",
ServerName("test_Session_Session"),
DocumentRoot(DOCUMENT_ROOT),
Directory(DOCUMENT_ROOT,
PythonOption('session_dbm "%s"' % database),
SetHandler("mod_python"),
PythonHandler("tests::Session_Session"),
PythonDebug("On")))
return str(c)
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira