diff --git a/doc/advanced.rst b/doc/advanced.rst
index 75c740091..aa4acf875 100644
--- a/doc/advanced.rst
+++ b/doc/advanced.rst
@@ -80,7 +80,7 @@ must be changed to:::
::
- u'auth.user': {
+ 'auth.user': {
'meta': {'object_name': 'User',
must be rewritten like that:::
diff --git a/doc/conf.py b/doc/conf.py
index c2983371c..aa0f846e4 100644
--- a/doc/conf.py
+++ b/doc/conf.py
@@ -48,8 +48,8 @@ source_suffix = '.rst'
master_doc = 'index'
# General information about the project.
-project = u'Authentic 2'
-copyright = u'2012, 2011, 2010, Entr\'ouvert'
+project = 'Authentic 2'
+copyright = '2012, 2011, 2010, Entr\'ouvert'
# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
@@ -189,7 +189,7 @@ latex_elements = {
# Grouping the document tree into LaTeX files. List of tuples
# (source start file, target name, title, author, documentclass [howto/manual]).
latex_documents = [
- ('index', 'Authentic2.tex', u'Authentic2 Documentation', u'Entr\'ouvert', 'manual'),
+ ('index', 'Authentic2.tex', 'Authentic2 Documentation', 'Entr\'ouvert', 'manual'),
]
# The name of an image file (relative to this directory) to place at the top of
@@ -217,7 +217,7 @@ latex_logo = 'pictures/eo_logo.png'
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
-man_pages = [('index', 'authentic2', u'Authentic2 Documentation', [u'Mikaël Ates'], 1)]
+man_pages = [('index', 'authentic2', 'Authentic2 Documentation', [u'Mikaël Ates'], 1)]
# If true, show URL addresses after external links.
# man_show_urls = False
@@ -232,8 +232,8 @@ texinfo_documents = [
(
'index',
'Authentic2',
- u'Authentic2 Documentation',
- u'Mikaël Ates',
+ 'Authentic2 Documentation',
+ 'Mikaël Ates',
'Authentic2',
'One line description of project.',
'Miscellaneous',
diff --git a/src/authentic2/a2_rbac/models.py b/src/authentic2/a2_rbac/models.py
index f8dcd74da..068db9dcc 100644
--- a/src/authentic2/a2_rbac/models.py
+++ b/src/authentic2/a2_rbac/models.py
@@ -394,7 +394,7 @@ class RoleParenting(RoleParentingAbstractBase):
verbose_name_plural = _('role parenting relations')
def __str__(self):
- return u'{0} {1}> {2}'.format(self.parent.name, '-' if self.direct else '~', self.child.name)
+ return '{0} {1}> {2}'.format(self.parent.name, '-' if self.direct else '~', self.child.name)
class RoleAttribute(models.Model):
diff --git a/src/authentic2/api_views.py b/src/authentic2/api_views.py
index ce3a275ab..3728bf12a 100644
--- a/src/authentic2/api_views.py
+++ b/src/authentic2/api_views.py
@@ -446,7 +446,7 @@ class BaseUserSerializer(serializers.ModelSerializer):
)
except smtplib.SMTPException as e:
logging.getLogger(__name__).error(
- u'registration mail could not be sent to user %s ' 'created through API: %s', instance, e
+ 'registration mail could not be sent to user %s ' 'created through API: %s', instance, e
)
return instance
diff --git a/src/authentic2/attribute_kinds.py b/src/authentic2/attribute_kinds.py
index e30e5a027..9a0156cdf 100644
--- a/src/authentic2/attribute_kinds.py
+++ b/src/authentic2/attribute_kinds.py
@@ -224,7 +224,7 @@ def profile_image_deserialize(name):
def profile_image_html_value(attribute, value):
if value:
- fragment = u'' % (value.url, attribute.name, value.url)
+ fragment = '' % (value.url, attribute.name, value.url)
return html.mark_safe(fragment)
return ''
@@ -349,7 +349,7 @@ def get_choices():
def only_digits(value):
- return u''.join(x for x in value if x in string.digits)
+ return ''.join(x for x in value if x in string.digits)
def validate_lun(value):
diff --git a/src/authentic2/attributes_ng/sources/django_user.py b/src/authentic2/attributes_ng/sources/django_user.py
index af9f190a9..565af6651 100644
--- a/src/authentic2/attributes_ng/sources/django_user.py
+++ b/src/authentic2/attributes_ng/sources/django_user.py
@@ -38,23 +38,23 @@ def get_attribute_names(instance, ctx):
if field.name == 'ou':
continue
name = 'django_user_' + str(field.name)
- description = field.verbose_name + u' (%s)' % name
+ description = field.verbose_name + ' (%s)' % name
yield name, description
- yield 'django_user_ou_uuid', _('OU UUIDs') + u' (django_user_ou_uuid)'
- yield 'django_user_ou_slug', _('OU slug') + u' (django_user_ou_slug)'
- yield 'django_user_ou_name', _('OU name') + u' (django_user_ou_name)'
+ yield 'django_user_ou_uuid', _('OU UUIDs') + ' (django_user_ou_uuid)'
+ yield 'django_user_ou_slug', _('OU slug') + ' (django_user_ou_slug)'
+ yield 'django_user_ou_name', _('OU name') + ' (django_user_ou_name)'
for attribute in Attribute.objects.all():
name = 'django_user_' + str(attribute.name)
- description = attribute.label + u' (%s)' % name
+ description = attribute.label + ' (%s)' % name
yield name, description
group_label = User._meta.get_field('groups').verbose_name
- yield 'django_user_groups', group_label + u' (django_user_groups)'
- yield 'django_user_group_names', group_label + u' (django_user_group_names)'
- yield 'django_user_domain', _('User domain') + u' (django_user_domain)'
- yield 'django_user_identifier', _('User identifier') + u' (django_user_identifier)'
- yield 'django_user_full_name', _('Full name') + u' (django_user_full_name)'
+ yield 'django_user_groups', group_label + ' (django_user_groups)'
+ yield 'django_user_group_names', group_label + ' (django_user_group_names)'
+ yield 'django_user_domain', _('User domain') + ' (django_user_domain)'
+ yield 'django_user_identifier', _('User identifier') + ' (django_user_identifier)'
+ yield 'django_user_full_name', _('Full name') + ' (django_user_full_name)'
yield 'a2_role_slugs', _('Role slugs')
yield 'a2_role_names', _('Role names')
yield 'a2_role_uuids', _('Role UUIDs')
diff --git a/src/authentic2/attributes_ng/sources/service_roles.py b/src/authentic2/attributes_ng/sources/service_roles.py
index 0e83fae5b..280ab19b4 100644
--- a/src/authentic2/attributes_ng/sources/service_roles.py
+++ b/src/authentic2/attributes_ng/sources/service_roles.py
@@ -40,7 +40,7 @@ def get_attribute_names(instance, ctx):
names.append(service_role_attribute.name)
names.sort()
for name in names:
- yield (name, u'%s (%s)' % (name, _('role attribute')))
+ yield (name, '%s (%s)' % (name, _('role attribute')))
def get_dependencies(instance, ctx):
diff --git a/src/authentic2/backends/ldap_backend.py b/src/authentic2/backends/ldap_backend.py
index 89042e66f..61e3f89ef 100644
--- a/src/authentic2/backends/ldap_backend.py
+++ b/src/authentic2/backends/ldap_backend.py
@@ -886,7 +886,7 @@ class LDAPBackend(object):
if ldap_attribute in attributes:
value = attributes[ldap_attribute][0]
else:
- value = u''
+ value = ''
if getattr(user, legacy_attribute) != value:
setattr(user, legacy_attribute, value)
user._changed = True
@@ -1175,7 +1175,7 @@ class LDAPBackend(object):
attribute_mappings = map_text(block['attribute_mappings'])
mandatory_attributes_values = map_text(block['mandatory_attributes_values'])
try:
- results = conn.search_s(dn, ldap.SCOPE_BASE, u'(objectclass=*)', attributes)
+ results = conn.search_s(dn, ldap.SCOPE_BASE, '(objectclass=*)', attributes)
except ldap.LDAPError as e:
log.error('unable to retrieve attributes of dn %r: %r', dn, e)
return None
@@ -1258,7 +1258,7 @@ class LDAPBackend(object):
item_value = {}
for dn, attrs in results:
log.debug(
- u'Object retrieved for extra attr %s with item %s : %s %s'
+ 'Object retrieved for extra attr %s with item %s : %s %s'
% (extra_attribute_name, item, dn, attrs)
)
for key in ldap_attributes_mapping:
@@ -1306,7 +1306,7 @@ class LDAPBackend(object):
else:
decoded.append((attribute, force_text(value)))
filters = [filter_format(u'(%s=%s)', (a, b)) for a, b in decoded]
- return u'(&{0})'.format(''.join(filters))
+ return '(&{0})'.format(''.join(filters))
def build_external_id(self, external_id_tuple, attributes):
"""Build the exernal id for the user, use attribute that eventually
@@ -1525,7 +1525,7 @@ class LDAPBackend(object):
else:
modlist = []
if block['active_directory']:
- key = u'unicodePwd'
+ key = 'unicodePwd'
value = cls.ad_encoding(new_password)
if old_password:
modlist = [
@@ -1535,7 +1535,7 @@ class LDAPBackend(object):
else:
modlist = [(ldap.MOD_REPLACE, key, [value])]
else:
- key = u'userPassword'
+ key = 'userPassword'
modlist = [(ldap.MOD_REPLACE, key, [new_password])]
conn.modify_s(dn, modlist)
log.debug('modified password for dn %r', dn)
@@ -1644,9 +1644,9 @@ class LDAPBackend(object):
conn.simple_bind_s()
return True, None
except ldap.INVALID_CREDENTIALS:
- return False, u'invalid credentials'
+ return False, 'invalid credentials'
except ldap.INVALID_DN_SYNTAX:
- return False, u'invalid dn syntax %s' % who
+ return False, 'invalid dn syntax %s' % who
except ldap.CONNECT_ERROR:
return False, 'connection error'
except ldap.TIMEOUT:
@@ -1781,13 +1781,13 @@ class LDAPBackendPasswordLost(LDAPBackend):
results = self.normalize_ldap_results(results)
if not results:
log.warning(
- u'unable to find user %r based on external id %s', user, external_id
+ 'unable to find user %r based on external id %s', user, external_id
)
continue
dn = results[0][0]
except ldap.LDAPError as e:
log.warning(
- u'unable to find user %r based on external id %s: %r', user, external_id, e
+ 'unable to find user %r based on external id %s: %r', user, external_id, e
)
continue
return self._return_user(dn, None, conn, block)
diff --git a/src/authentic2/backends/models_backend.py b/src/authentic2/backends/models_backend.py
index eeb54138c..fc0004fb0 100644
--- a/src/authentic2/backends/models_backend.py
+++ b/src/authentic2/backends/models_backend.py
@@ -30,7 +30,7 @@ from .. import app_settings
def upn(username, realm):
'''Build an UPN from a username and a realm'''
- return u'{0}@{1}'.format(username, realm)
+ return '{0}@{1}'.format(username, realm)
PROXY_USER_MODEL = None
diff --git a/src/authentic2/data_transfer.py b/src/authentic2/data_transfer.py
index 557a8437d..8d7893b7f 100644
--- a/src/authentic2/data_transfer.py
+++ b/src/authentic2/data_transfer.py
@@ -61,7 +61,7 @@ def update_model(obj, d):
for message in error_list(messages):
errorlist.append(
format_lazy(
- u'{}="{}": {}', obj.__class__._meta.get_field(key).verbose_name, value, message
+ '{}="{}": {}', obj.__class__._meta.get_field(key).verbose_name, value, message
)
)
raise ValidationError(errorlist)
diff --git a/src/authentic2/decorators.py b/src/authentic2/decorators.py
index acfc4ce67..a9ff947cd 100644
--- a/src/authentic2/decorators.py
+++ b/src/authentic2/decorators.py
@@ -200,7 +200,7 @@ class CacheDecoratorBase(object):
if kw not in self.kwargs:
continue
parts.append(u'%s-%s' % (str(kw), str(arg)))
- return u'|'.join(parts)
+ return '|'.join(parts)
class SimpleDictionnaryCacheMixin(object):
diff --git a/src/authentic2/disco_service/disco_responder.py b/src/authentic2/disco_service/disco_responder.py
index eccbd0f52..42df7acc6 100644
--- a/src/authentic2/disco_service/disco_responder.py
+++ b/src/authentic2/disco_service/disco_responder.py
@@ -41,7 +41,7 @@ logger = logging.getLogger('authentic2.disco.responder')
def error_page(request, message, logger):
'''Customized disco service error page'''
- message = u'disco: ' + message
+ message = 'disco: ' + message
return base_error_page(request, message, logger)
diff --git a/src/authentic2/exponential_retry_timeout.py b/src/authentic2/exponential_retry_timeout.py
index 52597f6dd..e9973cb20 100644
--- a/src/authentic2/exponential_retry_timeout.py
+++ b/src/authentic2/exponential_retry_timeout.py
@@ -44,7 +44,7 @@ class ExponentialRetryTimeout(object):
self.key_prefix = key_prefix
def key(self, keys):
- key = u'-'.join(str(key) for key in keys)
+ key = '-'.join(str(key) for key in keys)
key = key.encode('utf-8')
return '%s%s' % (self.key_prefix or self.KEY_PREFIX, hashlib.md5(key).hexdigest())
diff --git a/src/authentic2/forms/fields.py b/src/authentic2/forms/fields.py
index 9e77863c8..0914078f7 100644
--- a/src/authentic2/forms/fields.py
+++ b/src/authentic2/forms/fields.py
@@ -54,7 +54,7 @@ class CheckPasswordField(CharField):
def __init__(self, *args, **kwargs):
kwargs[
'help_text'
- ] = u'''
+ ] = '''
%(default)s
%(match)s
%(nomatch)s
diff --git a/src/authentic2/forms/widgets.py b/src/authentic2/forms/widgets.py
index 9f81fc798..6aa0df71c 100644
--- a/src/authentic2/forms/widgets.py
+++ b/src/authentic2/forms/widgets.py
@@ -165,7 +165,7 @@ class PickerWidgetMixin(object):
help_text = self.help_text
if not help_text:
- help_text = u'%s %s' % (_('Format:'), self.options['format'])
+ help_text = '%s %s' % (_('Format:'), self.options['format'])
return mark_safe(
self.render_template
@@ -267,7 +267,7 @@ class PasswordInput(BasePasswordInput):
if attrs and app_settings.A2_PASSWORD_POLICY_SHOW_LAST_CHAR:
_id = attrs.get('id')
if _id:
- output += u'''\n''' % json.dumps(_id)
+ output += '''\n''' % json.dumps(_id)
return output
@@ -280,7 +280,7 @@ class NewPasswordInput(PasswordInput):
if attrs:
_id = attrs.get('id')
if _id:
- output += u'''\n''' % json.dumps(_id)
+ output += '''\n''' % json.dumps(_id)
return output
@@ -296,7 +296,7 @@ class CheckPasswordInput(PasswordInput):
_id = attrs.get('id')
if _id and _id.endswith('2'):
other_id = _id[:-1] + '1'
- output += u'''\n''' % (
+ output += '''\n''' % (
json.dumps(other_id),
json.dumps(_id),
)
diff --git a/src/authentic2/idp/saml/saml2_endpoints.py b/src/authentic2/idp/saml/saml2_endpoints.py
index e347e6fe3..aa81e372b 100644
--- a/src/authentic2/idp/saml/saml2_endpoints.py
+++ b/src/authentic2/idp/saml/saml2_endpoints.py
@@ -486,8 +486,8 @@ def build_assertion(request, login, provider, nid_format='transient'):
kwargs['entity_id'] = login.remoteProviderId
kwargs['user'] = request.user
logger.debug(
- u'sending nameID %(name_id_format)r: %(name_id_content)r to '
- u'%(entity_id)s for user %(user)s' % kwargs
+ 'sending nameID %(name_id_format)r: %(name_id_content)r to '
+ '%(entity_id)s for user %(user)s' % kwargs
)
register_new_saml2_session(request, login)
add_attributes(request, entity_id, assertion, provider, nid_format)
@@ -1231,14 +1231,14 @@ def build_session_dump(liberty_sessions):
"""Build a session dump from a list of pairs
(provider_id,assertion_content)"""
session = [
- u'',
+ '',
]
for liberty_session in liberty_sessions:
session.append(
- u''.format(liberty_session)
+ ''.format(liberty_session)
)
session.append(u' 1:
- label = u'{ou} - {obj}'.format(ou=obj.ou, obj=obj)
+ label = '{ou} - {obj}'.format(ou=obj.ou, obj=obj)
return label
diff --git a/src/authentic2/models.py b/src/authentic2/models.py
index 21a41040c..7a1e68cac 100644
--- a/src/authentic2/models.py
+++ b/src/authentic2/models.py
@@ -56,7 +56,7 @@ class UserExternalId(models.Model):
updated = models.DateTimeField(auto_now=True, verbose_name=_('last update date'))
def __str__(self):
- return u'{0} is {1} on {2}'.format(self.user, self.external_id, self.source)
+ return '{0} is {1} on {2}'.format(self.user, self.external_id, self.source)
def __repr__(self):
return (
diff --git a/src/authentic2/saml/admin.py b/src/authentic2/saml/admin.py
index 77fdba44e..fc6541ac8 100644
--- a/src/authentic2/saml/admin.py
+++ b/src/authentic2/saml/admin.py
@@ -102,7 +102,7 @@ def update_metadata(modeladmin, request, queryset):
try:
provider.update_metadata()
except ValidationError as e:
- params = {'name': provider, 'error_msg': u', '.join(e.messages)}
+ params = {'name': provider, 'error_msg': ', '.join(e.messages)}
messages.error(request, _('Updating SAML provider %(name)s failed: ' '%(error_msg)s') % params)
else:
count += 1
@@ -188,7 +188,7 @@ class LibertyFederationAdmin(admin.ModelAdmin):
def format(self, obj):
name_id_format = obj.name_id_format
if name_id_format > 15:
- name_id_format = u'\u2026' + name_id_format[-12:]
+ name_id_format = '\u2026' + name_id_format[-12:]
return name_id_format
diff --git a/src/authentic2/saml/models.py b/src/authentic2/saml/models.py
index 49bf41564..d5926fa4e 100644
--- a/src/authentic2/saml/models.py
+++ b/src/authentic2/saml/models.py
@@ -357,7 +357,7 @@ class SAMLAttribute(models.Model):
yield (name, name_format, friendly_name, value)
def __str__(self):
- return u'%s %s %s' % (self.name, self.name_format_uri(), self.attribute_name)
+ return '%s %s %s' % (self.name, self.name_format_uri(), self.attribute_name)
def natural_key(self):
if not hasattr(self.provider, 'natural_key'):
diff --git a/src/authentic2/utils/__init__.py b/src/authentic2/utils/__init__.py
index af93cbf46..c38337d42 100644
--- a/src/authentic2/utils/__init__.py
+++ b/src/authentic2/utils/__init__.py
@@ -341,9 +341,9 @@ def make_url(
else:
url_params.appendlist(key, value)
if url_params:
- url += u'?%s' % url_params.urlencode(safe='/')
+ url += '?%s' % url_params.urlencode(safe='/')
if fragment:
- url += u'#%s' % fragment
+ url += '#%s' % fragment
if absolute:
if request:
url = request.build_absolute_uri(url)
@@ -946,7 +946,7 @@ def send_password_reset_mail(
**kwargs,
)
logger.info(
- u'password reset request for user %s, email sent to %s ' 'with token %s', user, user.email, token.uuid
+ 'password reset request for user %s, email sent to %s ' 'with token %s', user, user.email, token.uuid
)
journal.record('user.password.reset.request', email=user.email, user=user)
diff --git a/src/authentic2/views.py b/src/authentic2/views.py
index b9c831994..5416c5838 100644
--- a/src/authentic2/views.py
+++ b/src/authentic2/views.py
@@ -626,7 +626,7 @@ class LoggedInView(View):
if not self.check_referrer():
return HttpResponseForbidden()
callback = request.GET.get('callback')
- content = u'{0}({1})'.format(callback, int(request.user.is_authenticated))
+ content = '{0}({1})'.format(callback, int(request.user.is_authenticated))
return HttpResponse(content, content_type='application/json')
diff --git a/src/authentic2_idp_cas/models.py b/src/authentic2_idp_cas/models.py
index ab59c7143..fc990114e 100644
--- a/src/authentic2_idp_cas/models.py
+++ b/src/authentic2_idp_cas/models.py
@@ -51,7 +51,7 @@ class Service(LogoutUrlAbstract, Service):
url_validator(url)
except ValidationError:
raise ValidationError(_('%s is an invalid URL') % url)
- self.urls = u' '.join(urls)
+ self.urls = ' '.join(urls)
def match_service(self, service_url):
'''Verify that this service match an URL'''
@@ -86,7 +86,7 @@ class Attribute(models.Model):
enabled = models.BooleanField(verbose_name=_('enabled'), default=True)
def __str__(self):
- return u'%s <- %s' % (self.slug, self.attribute_name)
+ return '%s <- %s' % (self.slug, self.attribute_name)
class Meta:
verbose_name = _('CAS attribute')
diff --git a/src/authentic2_idp_oidc/utils.py b/src/authentic2_idp_oidc/utils.py
index 6af8e530e..8382d144f 100644
--- a/src/authentic2_idp_oidc/utils.py
+++ b/src/authentic2_idp_oidc/utils.py
@@ -102,7 +102,7 @@ def scope_set(data):
def clean_words(data):
'''Clean and order a list of words'''
- return u' '.join(sorted(x.strip() for x in data.split()))
+ return ' '.join(sorted(x.strip() for x in data.split()))
def url_domain(url):
diff --git a/src/django_rbac/models.py b/src/django_rbac/models.py
index 6ad59b128..c6e60e5b0 100644
--- a/src/django_rbac/models.py
+++ b/src/django_rbac/models.py
@@ -159,9 +159,9 @@ class PermissionAbstractBase(models.Model):
ct_ct = ContentType.objects.get_for_model(ContentType)
if ct == ct_ct:
target = ContentType.objects.get_for_id(self.target_id)
- s = u'{0} / {1}'.format(self.operation, target)
+ s = '{0} / {1}'.format(self.operation, target)
else:
- s = u'{0} / {1} / {2}'.format(self.operation, ct, self.target)
+ s = '{0} / {1} / {2}'.format(self.operation, ct, self.target)
if self.ou:
s += _(u' (scope "{0}")').format(self.ou)
return s
diff --git a/tests/test_a2_rbac.py b/tests/test_a2_rbac.py
index 275be0d71..01580de11 100644
--- a/tests/test_a2_rbac.py
+++ b/tests/test_a2_rbac.py
@@ -92,7 +92,7 @@ def test_admin_roles_startswith_a2(db):
coin = Role.objects.create(name='Coin', slug='coin')
coin.get_admin_role()
for role in Role.objects.filter(admin_scope_ct__isnull=False):
- assert role.slug.startswith('_a2'), u'role %s slug must start with _a2: %s' % (role.name, role.slug)
+ assert role.slug.startswith('_a2'), 'role %s slug must start with _a2: %s' % (role.name, role.slug)
def test_admin_roles_update_slug(db):
@@ -262,19 +262,19 @@ def test_role_with_permission_export_json(db):
assert permissions[0] == {
'operation': {'slug': 'add'},
'ou': {'uuid': ou.uuid, 'slug': ou.slug, 'name': ou.name},
- 'target_ct': {'app_label': u'contenttypes', 'model': u'contenttype'},
- 'target': {'model': u'libertyprovider', 'app_label': u'saml'},
+ 'target_ct': {'app_label': 'contenttypes', 'model': 'contenttype'},
+ 'target': {'model': 'libertyprovider', 'app_label': 'saml'},
}
assert permissions[1] == {
'operation': {'slug': 'add'},
'ou': None,
- 'target_ct': {'app_label': u'a2_rbac', 'model': u'role'},
+ 'target_ct': {'app_label': 'a2_rbac', 'model': 'role'},
'target': {
- 'slug': u'other-role-slug',
+ 'slug': 'other-role-slug',
'service': None,
'uuid': other_role.uuid,
- 'ou': {'slug': u'some-ou', 'uuid': some_ou.uuid, 'name': u'some ou'},
- 'name': u'other role name',
+ 'ou': {'slug': 'some-ou', 'uuid': some_ou.uuid, 'name': 'some ou'},
+ 'name': 'other role name',
},
}
diff --git a/tests/test_attribute_kinds.py b/tests/test_attribute_kinds.py
index 5fc7e5518..1b3857413 100644
--- a/tests/test_attribute_kinds.py
+++ b/tests/test_attribute_kinds.py
@@ -53,11 +53,11 @@ def test_string(db, app, admin, mailoutbox):
assert response.pyquery.find('.form-field-error #id_nom_de_naissance')
form = response.form
- form.set('nom_de_naissance', u'Noël')
+ form.set('nom_de_naissance', 'Noël')
form.set('password1', '12345abcdA')
form.set('password2', '12345abcdA')
response = form.submit().follow()
- assert qs.get().attributes.nom_de_naissance == u'Noël'
+ assert qs.get().attributes.nom_de_naissance == 'Noël'
qs.delete()
app.authorization = ('Basic', (admin.username, admin.username))
@@ -71,10 +71,10 @@ def test_string(db, app, admin, mailoutbox):
payload = {
'first_name': 'John',
'last_name': 'Doe',
- 'nom_de_naissance': u'Noël',
+ 'nom_de_naissance': 'Noël',
}
app.post_json('/api/users/', params=payload, status=201)
- assert qs.get().attributes.nom_de_naissance == u'Noël'
+ assert qs.get().attributes.nom_de_naissance == 'Noël'
qs.delete()
diff --git a/tests/test_auth_oidc.py b/tests/test_auth_oidc.py
index c0cfda959..53f7d3622 100644
--- a/tests/test_auth_oidc.py
+++ b/tests/test_auth_oidc.py
@@ -616,11 +616,11 @@ def test_strategy_find_uuid(app, caplog, code, oidc_provider, oidc_provider_jwks
user = User.objects.get()
# verify user was not modified
assert user.username == 'user'
- assert user.first_name == u'Jôhn'
- assert user.last_name == u'Dôe'
+ assert user.first_name == 'Jôhn'
+ assert user.last_name == 'Dôe'
assert user.email == 'user@example.net'
- assert user.attributes.first_name == u'Jôhn'
- assert user.attributes.last_name == u'Dôe'
+ assert user.attributes.first_name == 'Jôhn'
+ assert user.attributes.last_name == 'Dôe'
response = app.get(reverse('account_management'))
with utils.check_log(caplog, 'revoked token from OIDC'):
diff --git a/tests/test_commands.py b/tests/test_commands.py
index 822471b19..75fc13bee 100644
--- a/tests/test_commands.py
+++ b/tests/test_commands.py
@@ -160,7 +160,7 @@ def test_clean_unused_account_always_alert(db, simple_user, mailoutbox, freezer)
@pytest.mark.parametrize(
- "deletion_delay,formatted", [(730, u'2\xa0years'), (500, u'1\xa0year'), (65, u'2\xa0months')]
+ "deletion_delay,formatted", [(730, '2\xa0years'), (500, '1\xa0year'), (65, '2\xa0months')]
)
def test_clean_unused_account_human_duration_format(simple_user, mailoutbox, deletion_delay, formatted):
simple_user.ou.clean_unused_accounts_alert = deletion_delay - 1
diff --git a/tests/test_crypto.py b/tests/test_crypto.py
index 3aa1fde93..2b64cf8e1 100644
--- a/tests/test_crypto.py
+++ b/tests/test_crypto.py
@@ -67,9 +67,9 @@ def test_deterministic_encryption():
def test_hmac_url():
- key = u'é'
+ key = 'é'
url = 'https://example.invalid/'
assert crypto.check_hmac_url(key, url, crypto.hmac_url(key, url))
- key = u'é'
- url = u'https://example.invalid/\u0000'
+ key = 'é'
+ url = 'https://example.invalid/\u0000'
assert crypto.check_hmac_url(key, url, crypto.hmac_url(key, url))
diff --git a/tests/test_customfields.py b/tests/test_customfields.py
index dd589acc9..4bd70a178 100644
--- a/tests/test_customfields.py
+++ b/tests/test_customfields.py
@@ -28,7 +28,7 @@ class CustomDataType(str):
@pytest.mark.parametrize(
'value',
[
- u'\xe9',
+ '\xe9',
b'\xc3\xa9',
{1: 1, 2: 4, 3: 6, 4: 8, 5: 10},
'Hello World',
diff --git a/tests/test_data_transfer.py b/tests/test_data_transfer.py
index 6fb828c68..5ddb1845b 100644
--- a/tests/test_data_transfer.py
+++ b/tests/test_data_transfer.py
@@ -325,7 +325,7 @@ def test_role_deserializer_permissions(db):
other_role_dict['permisison'] = {
"operation": {"slug": "admin"},
"ou": {"slug": "default", "name": "Collectivit\u00e9 par d\u00e9faut"},
- 'target_ct': {'app_label': u'a2_rbac', 'model': u'role'},
+ 'target_ct': {'app_label': 'a2_rbac', 'model': 'role'},
"target": {
"slug": "role-deux",
"ou": {"slug": "default", "name": "Collectivit\u00e9 par d\u00e9faut"},
@@ -344,8 +344,8 @@ def test_role_deserializer_permissions(db):
{
'operation': {'slug': 'add'},
'ou': None,
- 'target_ct': {'app_label': u'a2_rbac', 'model': u'role'},
- 'target': {"slug": u'other-role-slug', 'ou': {'slug': 'some-ou'}, 'service': None},
+ 'target_ct': {'app_label': 'a2_rbac', 'model': 'role'},
+ 'target': {"slug": 'other-role-slug', 'ou': {'slug': 'some-ou'}, 'service': None},
}
]
@@ -382,7 +382,7 @@ def test_permission_on_role(db):
{
"operation": {"slug": "admin"},
"ou": {"slug": "perm-ou", "name": "perm-ou"},
- 'target_ct': {'app_label': u'a2_rbac', 'model': u'role'},
+ 'target_ct': {'app_label': 'a2_rbac', 'model': 'role'},
"target": {
"slug": "perm-role",
"ou": {"slug": "perm-ou", "name": "perm ou"},
diff --git a/tests/test_ldap.py b/tests/test_ldap.py
index a159b8db9..e191b7552 100644
--- a/tests/test_ldap.py
+++ b/tests/test_ldap.py
@@ -45,12 +45,12 @@ User = get_user_model()
pytestmark = pytest.mark.skipif(not has_slapd(), reason='slapd is not installed')
-USERNAME = u'etienne.michu'
+USERNAME = 'etienne.michu'
UID = 'etienne.michu'
CN = 'Étienne Michu'
DN = 'cn=%s,o=ôrga' % escape_dn_chars(CN)
PASS = 'passé'
-UPASS = u'passé'
+UPASS = 'passé'
EMAIL = 'etienne.michu@example.net'
CARLICENSE = '123445ABC'
@@ -209,7 +209,7 @@ def test_simple(slapd, settings, client, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'attributes': ['jpegPhoto'],
}
@@ -221,8 +221,8 @@ def test_simple(slapd, settings, client, db):
assert force_bytes('Étienne Michu') in result.content
assert User.objects.count() == 1
user = User.objects.get()
- assert user.username == u'%s@ldap' % USERNAME
- assert user.first_name == u'Étienne'
+ assert user.username == '%s@ldap' % USERNAME
+ assert user.first_name == 'Étienne'
assert user.last_name == 'Michu'
assert user.is_active is True
assert user.is_superuser is False
@@ -237,7 +237,7 @@ def test_deactivate_orphaned_users(slapd, settings, client, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
}
]
@@ -266,7 +266,7 @@ def test_simple_with_binddn(slapd, settings, client):
'url': [slapd.ldap_url],
'binddn': force_text(DN),
'bindpw': PASS,
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
}
]
@@ -277,8 +277,8 @@ def test_simple_with_binddn(slapd, settings, client):
assert force_bytes('Étienne Michu') in result.content
assert User.objects.count() == 1
user = User.objects.get()
- assert user.username == u'%s@ldap' % USERNAME
- assert user.first_name == u'Étienne'
+ assert user.username == '%s@ldap' % USERNAME
+ assert user.first_name == 'Étienne'
assert user.last_name == 'Michu'
assert user.is_active is True
assert user.is_superuser is False
@@ -293,7 +293,7 @@ def test_double_login(slapd, simple_user, settings, app, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'is_superuser': True,
'is_staff': True,
@@ -307,7 +307,7 @@ def test_login_failure(slapd, simple_user, settings, app, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'is_superuser': True,
'is_staff': True,
@@ -329,7 +329,7 @@ def test_keep_password_in_session(slapd, settings, client, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'keep_password_in_session': True,
}
@@ -341,8 +341,8 @@ def test_keep_password_in_session(slapd, settings, client, db):
assert force_bytes('Étienne Michu') in result.content
assert User.objects.count() == 1
user = User.objects.get()
- assert user.username == u'%s@ldap' % USERNAME
- assert user.first_name == u'Étienne'
+ assert user.username == '%s@ldap' % USERNAME
+ assert user.first_name == 'Étienne'
assert user.last_name == 'Michu'
assert user.ou == get_default_ou()
assert not user.check_password(PASS)
@@ -357,7 +357,7 @@ def test_keep_password_true_or_false(slapd, settings, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'keep_password': True,
}
@@ -381,7 +381,7 @@ def test_custom_ou(slapd, settings, client):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'ou_slug': 'test',
}
@@ -393,9 +393,9 @@ def test_custom_ou(slapd, settings, client):
assert force_bytes('Étienne Michu') in result.content
assert User.objects.count() == 1
user = User.objects.get()
- assert user.username == u'%s@ldap' % USERNAME
- assert user.first_name == u'Étienne'
- assert user.last_name == u'Michu'
+ assert user.username == '%s@ldap' % USERNAME
+ assert user.first_name == 'Étienne'
+ assert user.last_name == 'Michu'
assert user.ou == ou
assert not user.check_password(PASS)
@@ -404,7 +404,7 @@ def test_wrong_ou(slapd, settings, client, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'ou_slug': 'test',
}
@@ -437,7 +437,7 @@ def test_group_mapping(slapd, settings, client, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'create_group': True,
'group_mapping': [
@@ -450,7 +450,7 @@ def test_group_mapping(slapd, settings, client, db):
'/login/', {'login-password-submit': '1', 'username': USERNAME, 'password': PASS}, follow=True
)
assert Group.objects.filter(name='Group1').count() == 1
- assert response.context['user'].username == u'%s@ldap' % USERNAME
+ assert response.context['user'].username == '%s@ldap' % USERNAME
assert response.context['user'].groups.count() == 1
@@ -460,7 +460,7 @@ def test_posix_group_mapping(slapd, settings, client, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'create_group': True,
'group_mapping': [
@@ -474,7 +474,7 @@ def test_posix_group_mapping(slapd, settings, client, db):
'/login/', {'login-password-submit': '1', 'username': USERNAME, 'password': PASS}, follow=True
)
assert Group.objects.filter(name='Group2').count() == 1
- assert response.context['user'].username == u'%s@ldap' % USERNAME
+ assert response.context['user'].username == '%s@ldap' % USERNAME
assert response.context['user'].groups.count() == 1
@@ -485,7 +485,7 @@ def test_group_to_role_mapping(slapd, settings, client, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
# memberOf is not defined on OpenLDAP so we use street for storing DN like
# memberOf values
@@ -499,7 +499,7 @@ def test_group_to_role_mapping(slapd, settings, client, db):
response = client.post(
'/login/', {'login-password-submit': '1', 'username': USERNAME, 'password': PASS}, follow=True
)
- assert response.context['user'].username == u'%s@ldap' % USERNAME
+ assert response.context['user'].username == '%s@ldap' % USERNAME
assert set(response.context['user'].roles.values_list('name', flat=True)) == set(['Role1', 'Role2'])
@@ -508,7 +508,7 @@ def test_posix_group_to_role_mapping(slapd, settings, client, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'group_to_role_mapping': [
['cn=group2,o=ôrga', ['Role2']],
@@ -519,7 +519,7 @@ def test_posix_group_to_role_mapping(slapd, settings, client, db):
response = client.post(
'/login/', {'login-password-submit': '1', 'username': USERNAME, 'password': PASS}, follow=True
)
- assert response.context['user'].username == u'%s@ldap' % USERNAME
+ assert response.context['user'].username == '%s@ldap' % USERNAME
assert response.context['user'].roles.count() == 1
@@ -528,7 +528,7 @@ def test_group_to_role_mapping_modify_disabled(slapd, settings, db, app, admin,
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'group_to_role_mapping': [
['cn=group1,o=ôrga', ['Role3']],
@@ -580,7 +580,7 @@ def test_group_su(slapd, settings, client, db):
'/login/', {'login-password-submit': '1', 'username': USERNAME, 'password': PASS}, follow=True
)
assert Group.objects.count() == 0
- assert response.context['user'].username == u'%s@ldap' % USERNAME
+ assert response.context['user'].username == '%s@ldap' % USERNAME
assert response.context['user'].is_superuser
assert not response.context['user'].is_staff
@@ -591,7 +591,7 @@ def test_group_staff(slapd, settings, client, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'groupstaff': [u'cn=group1,o=ôrga'],
}
@@ -600,7 +600,7 @@ def test_group_staff(slapd, settings, client, db):
'/login/', {'login-password-submit': '1', 'username': 'etienne.michu', 'password': PASS}, follow=True
)
assert Group.objects.count() == 0
- assert response.context['user'].username == u'%s@ldap' % USERNAME
+ assert response.context['user'].username == '%s@ldap' % USERNAME
assert response.context['user'].is_staff
assert not response.context['user'].is_superuser
@@ -614,7 +614,7 @@ def test_get_users(slapd, settings, db, monkeypatch, caplog):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'create_group': True,
'group_mapping': [
@@ -699,7 +699,7 @@ def test_set_mandatory_roles(slapd, settings, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'create_group': True,
'group_mapping': [
@@ -718,7 +718,7 @@ def test_nocreate_mandatory_roles(slapd, settings, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'create_group': True,
'group_mapping': [
@@ -741,7 +741,7 @@ def test_from_slug_set_mandatory_roles(slapd, settings, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'create_group': True,
'group_mapping': [
@@ -766,7 +766,7 @@ def test_multiple_slug_set_mandatory_roles(slapd, settings, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'create_group': True,
'group_mapping': [
@@ -792,7 +792,7 @@ def test_multiple_name_set_mandatory_roles(slapd, settings, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'create_group': True,
'group_mapping': [
@@ -825,7 +825,7 @@ def test_no_connect_with_user_credentials(slapd_strict_acl, db, settings, app):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'create_group': True,
'group_mapping': [
@@ -892,7 +892,7 @@ def test_reset_password_ldap_user(slapd, settings, app, db):
'url': [slapd.ldap_url],
'binddn': force_text(slapd.root_bind_dn),
'bindpw': force_text(slapd.root_bind_password),
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'attributes': ['uid', 'carLicense'],
}
@@ -911,7 +911,7 @@ def test_user_cannot_change_password(slapd, settings, app, db):
'url': [slapd.ldap_url],
'binddn': force_text(slapd.root_bind_dn),
'bindpw': force_text(slapd.root_bind_password),
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'user_can_change_password': False,
}
@@ -942,7 +942,7 @@ def test_tls(db, tls_slapd, settings, client):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [tls_slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
}
]
@@ -957,7 +957,7 @@ def test_tls(db, tls_slapd, settings, client):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [tls_slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': True,
'cacertfile': cert_file,
}
@@ -973,7 +973,7 @@ def test_tls(db, tls_slapd, settings, client):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [tls_slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': True,
'cacertfile': cert_file,
'certfile': cert_file,
@@ -992,7 +992,7 @@ def test_user_attributes(slapd, settings, client, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'user_attributes': [
{
@@ -1018,23 +1018,23 @@ def test_user_attributes(slapd, settings, client, db):
client.post(
'/login/', {'login-password-submit': '1', 'username': USERNAME, 'password': PASS}, follow=True
)
- username = u'%s@ldap' % USERNAME
+ username = '%s@ldap' % USERNAME
user = User.objects.get(username=username)
- assert user.attributes.locality == u'Paris'
+ assert user.attributes.locality == 'Paris'
client.session.flush()
for i in range(5):
client.post(
'/login/',
{
'login-password-submit': '1',
- 'username': u'mïchu%s' % i,
+ 'username': 'mïchu%s' % i,
'password': PASS,
},
follow=True,
)
- username = u'mïchu%s@ldap' % i
+ username = 'mïchu%s@ldap' % i
user = User.objects.get(username=username)
- assert user.attributes.locality == u'locality%s' % i
+ assert user.attributes.locality == 'locality%s' % i
client.session.flush()
@@ -1042,7 +1042,7 @@ def test_set_password(slapd, settings, db):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
}
]
@@ -1059,7 +1059,7 @@ def test_login_ppolicy_pwdMaxFailure(slapd_ppolicy, settings, db, app):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd_ppolicy.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
}
]
@@ -1148,7 +1148,7 @@ def test_authenticate_ppolicy_pwdMaxFailure(slapd_ppolicy, settings, db, caplog)
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd_ppolicy.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
}
]
@@ -1167,7 +1167,7 @@ def test_do_not_use_controls(slapd_ppolicy, settings, db, caplog):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd_ppolicy.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'use_controls': False,
}
@@ -1184,7 +1184,7 @@ def test_authenticate_ppolicy_pwdGraceAuthnLimit(slapd_ppolicy, settings, db, ca
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd_ppolicy.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
}
]
@@ -1222,7 +1222,7 @@ pwdSafeModify: FALSE
user = authenticate(username=USERNAME, password=UPASS)
assert user.check_password(UPASS)
- password = u'ogutOmyetew4'
+ password = 'ogutOmyetew4'
user.set_password(password)
time.sleep(pwdMaxAge * 3)
@@ -1240,7 +1240,7 @@ def test_authenticate_ppolicy_pwdExpireWarning(slapd_ppolicy, settings, db, capl
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd_ppolicy.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
}
]
@@ -1277,7 +1277,7 @@ pwdSafeModify: FALSE
user = authenticate(username=USERNAME, password=UPASS)
assert user.check_password(UPASS)
- password = u'ogutOmyetew4'
+ password = 'ogutOmyetew4'
user.set_password(password)
time.sleep(2)
@@ -1293,7 +1293,7 @@ def test_login_ppolicy_pwdExpireWarning(slapd_ppolicy, settings, app, db, caplog
'url': [slapd_ppolicy.ldap_url],
'binddn': force_text(slapd_ppolicy.root_bind_dn),
'bindpw': force_text(slapd_ppolicy.root_bind_password),
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'attributes': ['carLicense'],
}
@@ -1344,7 +1344,7 @@ def test_authenticate_ppolicy_pwdAllowUserChange(slapd_ppolicy, settings, db, ca
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd_ppolicy.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
}
]
@@ -1386,7 +1386,7 @@ def test_ou_selector(slapd, settings, app, ou1):
'url': [slapd.ldap_url],
'binddn': force_text(DN),
'bindpw': PASS,
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'ou_slug': ou1.slug,
'use_tls': False,
}
@@ -1417,7 +1417,7 @@ def test_ou_selector_default_ou(slapd, settings, app, ou1):
'url': [slapd.ldap_url],
'binddn': force_text(DN),
'bindpw': PASS,
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
}
]
@@ -1445,7 +1445,7 @@ def test_sync_ldap_users(slapd, settings, app, db, capsys):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'user_attributes': [
{
@@ -1473,12 +1473,12 @@ def test_sync_ldap_users(slapd, settings, app, db, capsys):
management.call_command('sync-ldap-users', verbosity=2)
assert len(capsys.readouterr().out.splitlines()) == 7
assert User.objects.count() == 6
- assert all(user.first_name == u'Étienne' for user in User.objects.all())
- assert all(user.attributes.first_name == u'Étienne' for user in User.objects.all())
- assert all(user.last_name == u'Michu' for user in User.objects.all())
- assert all(user.attributes.last_name == u'Michu' for user in User.objects.all())
+ assert all(user.first_name == 'Étienne' for user in User.objects.all())
+ assert all(user.attributes.first_name == 'Étienne' for user in User.objects.all())
+ assert all(user.last_name == 'Michu' for user in User.objects.all())
+ assert all(user.attributes.last_name == 'Michu' for user in User.objects.all())
assert all(
- user.attributes.locality == u'Paris' or user.attributes.locality.startswith('locality')
+ user.attributes.locality == 'Paris' or user.attributes.locality.startswith('locality')
for user in User.objects.all()
)
assert all(
@@ -1497,7 +1497,7 @@ def test_alert_on_wrong_user_filter(slapd, settings, client, db, caplog):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'user_filter': '(&(objectClass=user)(sAMAccountName=*)', # wrong
}
@@ -1512,7 +1512,7 @@ def test_get_attributes(slapd, settings, db, rf):
settings.LDAP_AUTH_SETTINGS = [
{
'url': [slapd.ldap_url],
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'attributes': ['uid', 'carLicense'],
}
@@ -1530,7 +1530,7 @@ def test_get_attributes(slapd, settings, db, rf):
# simulate LDAP down
slapd.stop()
assert user.get_attributes(object(), {}) == {
- 'dn': u'cn=étienne michu,o=\xf4rga',
+ 'dn': 'cn=étienne michu,o=\xf4rga',
'givenname': [u'\xc9tienne'],
'mail': [u'etienne.michu@example.net'],
'sn': [u'Michu'],
@@ -1546,7 +1546,7 @@ def test_get_attributes(slapd, settings, db, rf):
ldif = [(ldap.MOD_REPLACE, 'sn', [b'Micho'])]
conn.modify_s(DN, ldif)
assert user.get_attributes(object(), {}) == {
- 'dn': u'cn=étienne michu,o=\xf4rga',
+ 'dn': 'cn=étienne michu,o=\xf4rga',
'givenname': [u'\xc9tienne'],
'mail': [u'etienne.michu@example.net'],
'sn': [u'Micho'],
@@ -1661,7 +1661,7 @@ def test_switch_user_ldap_user(slapd, settings, app, db):
'url': [slapd.ldap_url],
'binddn': force_text(slapd.root_bind_dn),
'bindpw': force_text(slapd.root_bind_password),
- 'basedn': u'o=ôrga',
+ 'basedn': 'o=ôrga',
'use_tls': False,
'attributes': ['carLicense'],
}
diff --git a/tests/test_login.py b/tests/test_login.py
index 40874653b..8fb274aa3 100644
--- a/tests/test_login.py
+++ b/tests/test_login.py
@@ -199,7 +199,7 @@ def test_ou_selector(app, settings, simple_user, ou1, ou2, user_ou1, role_ou1):
assert response.pyquery.find('select#id_ou')
assert len(response.pyquery.find('select#id_ou optgroup')) == 0
assert set([elt.text for elt in response.pyquery.find('select#id_ou option')]) == set(
- [u'Default organizational unit', u'OU1', u'OU2', u'---------']
+ [u'Default organizational unit', 'OU1', 'OU2', '---------']
)
# Check selector is required
response.form.set('username', simple_user.username)
@@ -226,39 +226,39 @@ def test_ou_selector(app, settings, simple_user, ou1, ou2, user_ou1, role_ou1):
assert response.pyquery.find('select#id_ou')
assert len(response.pyquery.find('select#id_ou optgroup')) == 2
assert set([elt.text for elt in response.pyquery.find('select#id_ou option')]) == set(
- [u'Default organizational unit', u'OU1', u'OU2', u'---------']
+ [u'Default organizational unit', 'OU1', 'OU2', '---------']
)
- assert response.pyquery.find('select#id_ou option[selected]')[0].text == u'Default organizational unit'
+ assert response.pyquery.find('select#id_ou option[selected]')[0].text == 'Default organizational unit'
# Create a service
service = models.Service.objects.create(name='Service', slug='service', ou=ou1)
response = app.get('/login/')
- assert response.pyquery.find('select#id_ou option[selected]')[0].text == u'Default organizational unit'
+ assert response.pyquery.find('select#id_ou option[selected]')[0].text == 'Default organizational unit'
# service is specified but not access-control is defined, default for user is selected
response = app.get('/login/?service=service')
- assert response.pyquery.find('select#id_ou option[selected]')[0].text == u'Default organizational unit'
+ assert response.pyquery.find('select#id_ou option[selected]')[0].text == 'Default organizational unit'
# service is specified, access control is defined but role is empty, default for user is selected
service.authorized_roles.through.objects.create(service=service, role=role_ou1)
response = app.get('/login/?service=service')
- assert response.pyquery.find('select#id_ou option[selected]')[0].text == u'Default organizational unit'
+ assert response.pyquery.find('select#id_ou option[selected]')[0].text == 'Default organizational unit'
# user is added to role_ou1, default for user is still selected
user_ou1.roles.add(role_ou1)
response = app.get('/login/?service=service')
- assert response.pyquery.find('select#id_ou option[selected]')[0].text == u'Default organizational unit'
+ assert response.pyquery.find('select#id_ou option[selected]')[0].text == 'Default organizational unit'
# Clear cookies, OU1 is selected
app.cookiejar.clear()
response = app.get('/login/?service=service')
- assert response.pyquery.find('select#id_ou option[selected]')[0].text == u'OU1'
+ assert response.pyquery.find('select#id_ou option[selected]')[0].text == 'OU1'
# if we change the user's ou, then default selected OU changes
user_ou1.ou = ou2
user_ou1.save()
response = app.get('/login/?service=service')
- assert response.pyquery.find('select#id_ou option[selected]')[0].text == u'OU2'
+ assert response.pyquery.find('select#id_ou option[selected]')[0].text == 'OU2'
def test_login_test_cookie(app, simple_user):
diff --git a/tests/test_manager.py b/tests/test_manager.py
index 630f3326b..62c7ba08f 100644
--- a/tests/test_manager.py
+++ b/tests/test_manager.py
@@ -373,7 +373,7 @@ def test_manager_one_ou(app, superuser, admin, simple_role, settings):
assert 'search-ou' not in form.fields
q = response.pyquery.remove_namespaces()
assert len(q('table tbody tr')) == 1
- assert q('table tbody tr').text() == u'simple role'
+ assert q('table tbody tr').text() == 'simple role'
assert q('table tbody tr').attr('data-url') == '/manage/roles/%s/' % simple_role.pk
form.set('search-internals', True)
@@ -392,14 +392,14 @@ def test_manager_one_ou(app, superuser, admin, simple_role, settings):
assert 'search-ou' not in response.form.fields
q = response.pyquery.remove_namespaces()
assert len(q('table tbody tr')) == 1
- assert q('table tbody td.name').text() == u'simple role'
+ assert q('table tbody td.name').text() == 'simple role'
response.form.set('search-internals', True)
response = response.form.submit()
q = response.pyquery.remove_namespaces()
assert len(q('table tbody tr')) == 6
for elt in q('table tbody td.name a'):
- assert 'Manager' in elt.text or elt.text == u'simple role'
+ assert 'Manager' in elt.text or elt.text == 'simple role'
test_user_listing(admin)
app.session.flush()
@@ -436,7 +436,7 @@ def test_manager_many_ou(app, superuser, admin, simple_role, role_ou1, admin_ou1
assert not checked or key == str(get_default_ou().pk)
q = response.pyquery.remove_namespaces()
assert len(q('table tbody tr')) == 1
- assert q('table tbody tr').text() == u'simple role'
+ assert q('table tbody tr').text() == 'simple role'
response.form.set('search-ou', 'all')
response = response.form.submit()
@@ -478,7 +478,7 @@ def test_manager_many_ou(app, superuser, admin, simple_role, role_ou1, admin_ou1
q = response.pyquery.remove_namespaces()
assert len(q('table tbody tr')) == 2
names = [elt.text for elt in q('table tbody td.name a')]
- assert set(names) == {u'simple role', u'role_ou1'}
+ assert set(names) == {u'simple role', 'role_ou1'}
response.form.set('search-ou', 'all')
response.form.set('search-internals', True)
@@ -490,8 +490,8 @@ def test_manager_many_ou(app, superuser, admin, simple_role, role_ou1, admin_ou1
'OU1' in elt.text
or 'Default' in elt.text
or 'Manager' in elt.text
- or elt.text == u'simple role'
- or elt.text == u'role_ou1'
+ or elt.text == 'simple role'
+ or elt.text == 'role_ou1'
)
response.form.set('search-ou', 'none')
@@ -854,10 +854,10 @@ def test_roles_widget(admin, app, db):
assert len(response.json['results']) == 3
response = app.get(url, params={'field_id': field_id, 'term': 'Admin cass'})
assert len(response.json['results']) == 1
- assert response.json['results'][0]['text'] == u'Cassis - Administrateur'
+ assert response.json['results'][0]['text'] == 'Cassis - Administrateur'
response = app.get(url, params={'field_id': field_id, 'term': force_str('Admin édou')})
assert len(response.json['results']) == 1
- assert response.json['results'][0]['text'] == u'La Bédoule - Administrateur'
+ assert response.json['results'][0]['text'] == 'La Bédoule - Administrateur'
def test_roles_for_change_widget(admin, app, db):
diff --git a/tests/test_registration.py b/tests/test_registration.py
index 2673ae8bb..87aa0a80b 100644
--- a/tests/test_registration.py
+++ b/tests/test_registration.py
@@ -366,8 +366,8 @@ def test_attribute_model(app, db, settings, mailoutbox):
response = app.get(reverse('account_management'))
- assert u'Nom' in response.text
- assert u'Prénom' not in response.text
+ assert 'Nom' in response.text
+ assert 'Prénom' not in response.text
response = app.get(reverse('profile_edit'))
assert 'profession' in response.form.fields
@@ -382,12 +382,12 @@ def test_attribute_model(app, db, settings, mailoutbox):
response = response.follow()
- assert u'Nom' in response.text
- assert u'Doe' in response.text
- assert u'Profession' not in response.text
- assert u'pompier' not in response.text
- assert u'Prénom' not in response.text
- assert u'John' not in response.text
+ assert 'Nom' in response.text
+ assert 'Doe' in response.text
+ assert 'Profession' not in response.text
+ assert 'pompier' not in response.text
+ assert 'Prénom' not in response.text
+ assert 'John' not in response.text
def test_registration_email_blacklist(app, settings, db):
@@ -414,10 +414,10 @@ def test_registration_bad_email(app, db, settings):
response = app.post(reverse('registration_register'), params={'email': 'fred@0d..be'}, status=200)
assert 'Enter a valid email address.' in response.context['form'].errors['email']
- response = app.post(reverse('registration_register'), params={'email': u'ééééé'}, status=200)
+ response = app.post(reverse('registration_register'), params={'email': 'ééééé'}, status=200)
assert 'Enter a valid email address.' in response.context['form'].errors['email']
- response = app.post(reverse('registration_register'), params={'email': u''}, status=200)
+ response = app.post(reverse('registration_register'), params={'email': ''}, status=200)
assert 'This field is required.' in response.context['form'].errors['email']
diff --git a/tests/test_user_manager.py b/tests/test_user_manager.py
index 58783d26e..0f9c5f7f1 100644
--- a/tests/test_user_manager.py
+++ b/tests/test_user_manager.py
@@ -744,8 +744,8 @@ John,Doe,test2'''
def test_manager_create_user_next(superuser_or_admin, app, ou1):
login(app, superuser_or_admin, '/manage/')
- next_url = u'/example.nowhere.null/'
- url = u'/manage/users/%s/add/?next=%s' % (ou1.pk, next_url)
+ next_url = '/example.nowhere.null/'
+ url = '/manage/users/%s/add/?next=%s' % (ou1.pk, next_url)
response = app.get(url)
# cancel is not handled through form submission, it's a link
@@ -753,9 +753,9 @@ def test_manager_create_user_next(superuser_or_admin, app, ou1):
assert response.pyquery.remove_namespaces()('a.cancel').attr('href') == '../..'
assert response.pyquery.remove_namespaces()('input[name="next"]').attr('value') == next_url
- next_url = u'/example.nowhere.null/$UUID/'
- cancel_url = u'/example.nowhere.cancel/'
- url = u'/manage/users/%s/add/?next=%s&cancel=%s' % (ou1.pk, next_url, cancel_url)
+ next_url = '/example.nowhere.null/$UUID/'
+ cancel_url = '/example.nowhere.cancel/'
+ url = '/manage/users/%s/add/?next=%s&cancel=%s' % (ou1.pk, next_url, cancel_url)
response = app.get(url)
assert response.pyquery.remove_namespaces()('a.cancel').attr('href') == cancel_url
@@ -809,8 +809,8 @@ Elliott,3'''
def test_manager_create_user_next_form_error(superuser_or_admin, app, ou1):
- next_url = u'/example.nowhere.null/'
- url = u'/manage/users/%s/add/?next=%s' % (ou1.pk, next_url)
+ next_url = '/example.nowhere.null/'
+ url = '/manage/users/%s/add/?next=%s' % (ou1.pk, next_url)
login(app, superuser_or_admin, '/manage/')
response = app.get(url)
form = response.form
@@ -822,8 +822,8 @@ def test_manager_create_user_next_form_error(superuser_or_admin, app, ou1):
def test_manager_add_user_querystring(superuser_or_admin, app, ou1):
- querystring = u'stay_here=true'
- url = u'/manage/users/add/?%s' % querystring
+ querystring = 'stay_here=true'
+ url = '/manage/users/add/?%s' % querystring
login(app, superuser_or_admin, '/manage/')
response = app.get(url)
@@ -831,8 +831,8 @@ def test_manager_add_user_querystring(superuser_or_admin, app, ou1):
def test_manager_edit_user_next(app, simple_user, superuser_or_admin):
- next_url = u'/example.nowhere.null/'
- url = u'/manage/users/%s/edit/?next=%s' % (simple_user.pk, next_url)
+ next_url = '/example.nowhere.null/'
+ url = '/manage/users/%s/edit/?next=%s' % (simple_user.pk, next_url)
login(app, superuser_or_admin, '/manage/')
response = app.get(url)
@@ -845,8 +845,8 @@ def test_manager_edit_user_next(app, simple_user, superuser_or_admin):
def test_manager_edit_user_next_form_error(superuser_or_admin, app, ou1, simple_user):
- next_url = u'/example.nowhere.null/'
- url = u'/manage/users/%s/edit/?next=%s' % (simple_user.pk, next_url)
+ next_url = '/example.nowhere.null/'
+ url = '/manage/users/%s/edit/?next=%s' % (simple_user.pk, next_url)
login(app, superuser_or_admin, '/manage/')
response = app.get(url)
form = response.form
@@ -873,7 +873,7 @@ def test_ou_hide_username(admin, app, db):
some_ou = OU.objects.create(name=u'Some Ou', show_username=False)
login(app, admin, '/manage/')
- url = u'/manage/users/%s/add/' % some_ou.pk
+ url = '/manage/users/%s/add/' % some_ou.pk
response = app.get(url)
q = response.pyquery.remove_namespaces()
assert len(q('p[id="id_username_p"]')) == 0
@@ -893,7 +893,7 @@ def test_manager_edit_user_email_verified(app, simple_user, superuser_or_admin):
simple_user.email_verified = True
simple_user.save()
- url = u'/manage/users/%s/edit/' % simple_user.pk
+ url = '/manage/users/%s/edit/' % simple_user.pk
login(app, superuser_or_admin, '/manage/')
user = User.objects.get(id=simple_user.id)
@@ -909,7 +909,7 @@ def test_manager_edit_user_email_verified(app, simple_user, superuser_or_admin):
def test_manager_edit_user_address_autocomplete(app, simple_user, superuser_or_admin):
- url = u'/manage/users/%s/edit/' % simple_user.pk
+ url = '/manage/users/%s/edit/' % simple_user.pk
login(app, superuser_or_admin, '/manage/')
Attribute.objects.create(
diff --git a/tests/utils.py b/tests/utils.py
index 9b415b278..43d18684a 100644
--- a/tests/utils.py
+++ b/tests/utils.py
@@ -261,7 +261,7 @@ def call_command(*args, **kwargs):
def text_content(node):
"""Extract text content from node and all its children. Equivalent to
xmlNodeGetContent from libxml."""
- return u''.join(node.itertext()) if node is not None else ''
+ return ''.join(node.itertext()) if node is not None else ''
def assert_event(event_type_name, user=None, session=None, service=None, **data):