[devtools] Use super() in TestServerConfiguration.__init__()
While cleaning up the use of init_config() in WSGIAppTC, I wondered why
the method was trying to set the 'https_uiprops' and 'https_datadir_url'
attributes on the config, when WebConfiguration's __init__ should be
taking care of setting them.
WSGIAppTC uses the default configuration - one that derives from
ApptestConfiguration (noted as G below).
The issue is that the class hierarchy of ApptestConfiguration includes
TestServerConfiguration (C in the graph below) which calls
ServerConfiguration's __init__ directly (B below). As B does not have an
__init__ method, CubicWebConfiguration's __init__ is called directly (A
below). This has the unintended consequence of preventing
WebConfiguration's __init__ from being called.
A
/ \
B D
| |
C E
\ /
F
|
G
|
...
A: cwconfig.CubicWebConfiguration
B: server.serverconfig.ServerConfiguration
C: devtools.TestServerConfiguration
D: web.webconfig.WebConfiguration
E: etwist.twconfig.WebConfigurationBase
F: devtools.BaseApptestConfiguration
G: devtools.ApptestConfiguration
NB: unittest_wsgi wasn't really broken, as it's the only test in
wsgi/test/, but I figured I might as well clean it up.
Related to #9297611.
# for el5, force use of python2.6
%%if 0%%{?el5}
%%define python python26
%%define __python /usr/bin/python2.6
%%else
%%define python python
%%define __python /usr/bin/python
%%endif
%%{!?_python_sitelib: %%define _python_sitelib %%(%%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
Name: %(distname)s
Version: 0.1.0
Release: logilab.1%%{?dist}
Summary: %(shortdesc)s
Group: Applications/Internet
License: %(license)s
Source0: %(distname)s-%%{version}.tar.gz
BuildArch: noarch
BuildRoot: %%{_tmppath}/%%{name}-%%{version}-%%{release}-buildroot
BuildRequires: %%{python} %%{python}-setuptools
Requires: cubicweb >= %(version)s
Requires: %%{python}-six >= 1.4.0
%%description
%(longdesc)s
%%prep
%%setup -q -n %(distname)s-%%{version}
%%if 0%%{?el5}
# change the python version in shebangs
find . -name '*.py' -type f -print0 | xargs -0 sed -i '1,3s;^#!.*python.*$;#! /usr/bin/python2.6;'
%%endif
%%install
NO_SETUPTOOLS=1 %%{__python} setup.py --quiet install --no-compile --prefix=%%{_prefix} --root="$RPM_BUILD_ROOT"
# remove generated .egg-info file
rm -rf $RPM_BUILD_ROOT/usr/lib/python*
%%clean
rm -rf $RPM_BUILD_ROOT
%%files
%%defattr(-, root, root)
/*