[devtools/testlib] avoid hidding AttributeError in create_user()
commit() might raise a AttributeError too.
Use getattr(req, 'cnx', req) instead, which is a form already used to get the real cnx
in some code:
cubicweb/rset.py:577: cnx = getattr(self.req, 'cnx', self.req)
cubicweb/schema.py:353: with getattr(_cw, 'cnx', _cw).security_enabled(read=False):
We could use if hasattr(req, 'commit') here too but it lead to 3 additionals lines.
Maybe we should have commit() and rollback() on
cubicweb.web.request.ConnectionCubicWebRequestBase too ?
if confirm('use Europe/Paris as timezone?'):
timezone = 'Europe/Paris'
else:
import pytz
while True:
timezone = raw_input('enter your timezone')
if timezone in pytz.common_timezones:
break
dbdriver = repo.system_source.dbdriver
if dbdriver == 'postgres':
sql("SET TIME ZONE '%s'" % timezone)
for entity in schema.entities():
if entity.final or entity.type not in fsschema:
continue
change_attribute_type(entity.type, 'creation_date', 'TZDatetime', ask_confirm=False)
change_attribute_type(entity.type, 'modification_date', 'TZDatetime', ask_confirm=False)
if dbdriver == 'postgres':
sql("SET TIME ZONE UTC")