misc: fix redundant-u-string-prefix pylint error (#62099)
This commit is contained in:
parent
35512c9c2f
commit
59182339ab
|
@ -44,7 +44,7 @@ class ActesWeb(BaseResource):
|
|||
category = _('Civil Status Connectors')
|
||||
|
||||
class Meta:
|
||||
verbose_name = u"ActesWeb - Demande d'acte d'état civil"
|
||||
verbose_name = "ActesWeb - Demande d'acte d'état civil"
|
||||
|
||||
@property
|
||||
def basepath(self):
|
||||
|
|
|
@ -29,7 +29,7 @@ from passerelle.utils.jsonresponse import APIError
|
|||
class AirQuality(BaseResource):
|
||||
category = _('Misc')
|
||||
api_description = _(
|
||||
u'''
|
||||
'''
|
||||
This API provides a unique format for the air quality data of various places.
|
||||
(But only supports the Rhône-Alpes region for now).
|
||||
'''
|
||||
|
|
|
@ -101,13 +101,13 @@ class APIEntreprise(BaseResource):
|
|||
try:
|
||||
response = self.requests.get(url, data=params, cache_duration=300)
|
||||
except requests.RequestException as e:
|
||||
raise APIError(u'API-entreprise connection error: %s' % exception_to_text(e), data=[])
|
||||
raise APIError('API-entreprise connection error: %s' % exception_to_text(e), data=[])
|
||||
try:
|
||||
data = response.json()
|
||||
except ValueError as e:
|
||||
content = response.text[:1000]
|
||||
raise APIError(
|
||||
u'API-entreprise returned non-JSON content with status %s: %s'
|
||||
'API-entreprise returned non-JSON content with status %s: %s'
|
||||
% (response.status_code, content),
|
||||
data={
|
||||
'status_code': response.status_code,
|
||||
|
@ -122,7 +122,7 @@ class APIEntreprise(BaseResource):
|
|||
'err_desc': data.get('message', 'not-found'),
|
||||
}
|
||||
raise APIError(
|
||||
u'API-entreprise returned a non 200 status %s: %s' % (response.status_code, data),
|
||||
'API-entreprise returned a non 200 status %s: %s' % (response.status_code, data),
|
||||
data={
|
||||
'status_code': response.status_code,
|
||||
'content': data,
|
||||
|
|
|
@ -92,7 +92,7 @@ class APIParticulier(BaseResource):
|
|||
response = self.requests.get(url, headers=headers, timeout=5, **kwargs)
|
||||
except requests.RequestException as e:
|
||||
raise APIError(
|
||||
u'API-particulier platform "%s" connection error: %s' % (self.platform, exception_to_text(e)),
|
||||
'API-particulier platform "%s" connection error: %s' % (self.platform, exception_to_text(e)),
|
||||
log_error=True,
|
||||
data={
|
||||
'code': 'connection-error',
|
||||
|
@ -105,7 +105,7 @@ class APIParticulier(BaseResource):
|
|||
except JSONDecodeError as e:
|
||||
content = repr(response.content[:1000])
|
||||
raise APIError(
|
||||
u'API-particulier platform "%s" returned non-JSON content with status %s: %s'
|
||||
'API-particulier platform "%s" returned non-JSON content with status %s: %s'
|
||||
% (self.platform, response.status_code, content),
|
||||
log_error=True,
|
||||
data={
|
||||
|
@ -135,7 +135,7 @@ class APIParticulier(BaseResource):
|
|||
}
|
||||
raise APIError(message, data=error_data)
|
||||
raise APIError(
|
||||
u'API-particulier platform "%s" returned a non 200 status %s: %s'
|
||||
'API-particulier platform "%s" returned a non 200 status %s: %s'
|
||||
% (self.platform, response.status_code, data),
|
||||
log_error=True,
|
||||
data={
|
||||
|
|
|
@ -59,18 +59,18 @@ class ArpegeECP(BaseResource):
|
|||
)
|
||||
response.raise_for_status()
|
||||
except RequestException as e:
|
||||
raise APIError(u'Arpege server is down: %s' % e)
|
||||
raise APIError('Arpege server is down: %s' % e)
|
||||
try:
|
||||
result = response.json()
|
||||
except ValueError:
|
||||
raise APIError(u'Arpege server is down: no JSON content returned, %r' % response.content[:1000])
|
||||
raise APIError('Arpege server is down: no JSON content returned, %r' % response.content[:1000])
|
||||
if result.get('Data'):
|
||||
if 'AccessToken' not in result['Data']:
|
||||
raise APIError(u'Error on LoginParSubOIDC: missing Data/AccessToken')
|
||||
raise APIError('Error on LoginParSubOIDC: missing Data/AccessToken')
|
||||
if not isinstance(result['Data']['AccessToken'], six.string_types):
|
||||
raise APIError(u'Error on LoginParSubOIDC: Data/AccessToken is not string')
|
||||
raise APIError('Error on LoginParSubOIDC: Data/AccessToken is not string')
|
||||
return result['Data']['AccessToken']
|
||||
raise APIError(u'%s (%s)' % (result.get('LibErreur'), result.get('CodErreur')))
|
||||
raise APIError('%s (%s)' % (result.get('LibErreur'), result.get('CodErreur')))
|
||||
|
||||
@endpoint(
|
||||
name='api',
|
||||
|
@ -87,12 +87,12 @@ class ArpegeECP(BaseResource):
|
|||
response = self.requests.get(url, params=params, auth=auth)
|
||||
response.raise_for_status()
|
||||
except RequestException as e:
|
||||
raise APIError(u'Arpege server is down: %s' % e)
|
||||
raise APIError('Arpege server is down: %s' % e)
|
||||
data = []
|
||||
try:
|
||||
result = response.json()
|
||||
except ValueError:
|
||||
raise APIError(u'No JSON content returned: %r' % response.content[:1000])
|
||||
raise APIError('No JSON content returned: %r' % response.content[:1000])
|
||||
if not result.get('Data'):
|
||||
raise APIError("%s (%s)" % (result.get('LibErreur'), result.get('CodErreur')))
|
||||
for demand in result['Data']['results']:
|
||||
|
@ -101,7 +101,7 @@ class ArpegeECP(BaseResource):
|
|||
receipt_time = parse_time(data_administratives['heure_depot'])
|
||||
receipt_date = parse_date(data_administratives['date_depot'])
|
||||
except (KeyError, TypeError) as e:
|
||||
raise APIError(u'Arpege error: %s %r' % (e, json.dumps(demand)[:1000]))
|
||||
raise APIError('Arpege error: %s %r' % (e, json.dumps(demand)[:1000]))
|
||||
d = {
|
||||
'url': demand['url'],
|
||||
'title': data_administratives.get('LibelleQualificationTypeDemande'),
|
||||
|
|
|
@ -187,7 +187,7 @@ class AstreREST(BaseResource):
|
|||
category = _('Business Process Connectors')
|
||||
|
||||
class Meta:
|
||||
verbose_name = u'Astre REST'
|
||||
verbose_name = 'Astre REST'
|
||||
|
||||
def check_status(self):
|
||||
self._astre_call('astre/webservices/gf/documents/referentiel/typedocument/list/json')
|
||||
|
|
|
@ -447,7 +447,7 @@ class AstreGS(BaseResource):
|
|||
log_requests_errors = False
|
||||
|
||||
class Meta:
|
||||
verbose_name = u'AstresGS'
|
||||
verbose_name = 'AstresGS'
|
||||
|
||||
def check_status(self):
|
||||
response = self.requests.get(self.wsdl_base_url)
|
||||
|
|
|
@ -150,7 +150,7 @@ class Resource(BaseResource, HTTPResource):
|
|||
parameters={
|
||||
'category': {
|
||||
'description': _('Category of codification'),
|
||||
'example_value': u'MOT_APA',
|
||||
'example_value': 'MOT_APA',
|
||||
}
|
||||
},
|
||||
)
|
||||
|
@ -283,7 +283,7 @@ class Resource(BaseResource, HTTPResource):
|
|||
# create CIVILITE
|
||||
for identification in d.get('IDENTIFICATION', []):
|
||||
sexe = identification.get('SEXE', '')
|
||||
identification['CIVILITE'] = {'M': u'Monsieur', 'F': u'Madame'}.get(sexe, '')
|
||||
identification['CIVILITE'] = {'M': 'Monsieur', 'F': 'Madame'}.get(sexe, '')
|
||||
return d
|
||||
|
||||
@endpoint(
|
||||
|
@ -327,7 +327,7 @@ class Resource(BaseResource, HTTPResource):
|
|||
data.append(
|
||||
{
|
||||
'id': str(link.id),
|
||||
'text': u' '.join(text_parts),
|
||||
'text': ' '.join(text_parts),
|
||||
'id_per': link.id_per,
|
||||
'dossier': dossier,
|
||||
}
|
||||
|
@ -430,7 +430,7 @@ class Resource(BaseResource, HTTPResource):
|
|||
cmu_nais = to_ascii(identification.get('CMU_NAIS', '')).lower()
|
||||
if cmu_nais and commune_naissance != cmu_nais:
|
||||
self.logger.debug(
|
||||
u'id_per %s: CMU_NAIS(%s) does not match commune_naissance(%s)',
|
||||
'id_per %s: CMU_NAIS(%s) does not match commune_naissance(%s)',
|
||||
id_per,
|
||||
cmu_nais,
|
||||
commune_naissance,
|
||||
|
|
|
@ -247,10 +247,10 @@ class AbstractCartaDSCS(BaseResource):
|
|||
def format_cerfa_label(x):
|
||||
try:
|
||||
if x['Description']:
|
||||
return u'%(Nom)s: %(Description)s' % x
|
||||
return '%(Nom)s: %(Description)s' % x
|
||||
except KeyError:
|
||||
pass
|
||||
return u'%(Nom)s' % x
|
||||
return '%(Nom)s' % x
|
||||
|
||||
data_cache, dummy = CartaDSDataCache.objects.get_or_create(
|
||||
data_type='liste_pdf',
|
||||
|
|
|
@ -24,8 +24,8 @@ class ChoositSMSGateway(SMSResource):
|
|||
'err': 1,
|
||||
'err_desc': 'Choosit error: some destinations failed',
|
||||
'data': [
|
||||
[u'0033688888888', u'Choosit error: bad JSON response'],
|
||||
[u'0033677777777', u'Choosit error: bad JSON response'],
|
||||
['0033688888888', 'Choosit error: bad JSON response'],
|
||||
['0033677777777', 'Choosit error: bad JSON response'],
|
||||
],
|
||||
},
|
||||
},
|
||||
|
@ -37,21 +37,21 @@ class ChoositSMSGateway(SMSResource):
|
|||
'err': 1,
|
||||
'err_desc': 'Choosit error: some destinations failed',
|
||||
'data': [
|
||||
[u'0033688888888', u'Choosit error: not ok'],
|
||||
[u'0033677777777', u'Choosit error: not ok'],
|
||||
['0033688888888', 'Choosit error: not ok'],
|
||||
['0033677777777', 'Choosit error: not ok'],
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
'response': {
|
||||
'result': u'Envoi terminé',
|
||||
'result': 'Envoi terminé',
|
||||
'sms_id': 1234,
|
||||
},
|
||||
'result': {
|
||||
'err': 0,
|
||||
'data': [
|
||||
[u'0033688888888', {'result': u'Envoi terminé', 'sms_id': 1234}],
|
||||
[u'0033677777777', {'result': u'Envoi terminé', 'sms_id': 1234}],
|
||||
['0033688888888', {'result': 'Envoi terminé', 'sms_id': 1234}],
|
||||
['0033677777777', {'result': 'Envoi terminé', 'sms_id': 1234}],
|
||||
],
|
||||
},
|
||||
},
|
||||
|
@ -92,7 +92,7 @@ class ChoositSMSGateway(SMSResource):
|
|||
if not isinstance(output, dict):
|
||||
results.append('Choosit error: JSON response is not a dict %r' % output)
|
||||
elif 'error' in output:
|
||||
results.append(u'Choosit error: %s' % output['error'])
|
||||
results.append('Choosit error: %s' % output['error'])
|
||||
else:
|
||||
results.append(output)
|
||||
if any(isinstance(result, string_types) for result in results):
|
||||
|
|
|
@ -39,7 +39,7 @@ class CityWeb(BaseResource):
|
|||
category = _('Civil Status Connectors')
|
||||
|
||||
class Meta:
|
||||
verbose_name = u"CityWeb - Demande d'acte d'état civil"
|
||||
verbose_name = "CityWeb - Demande d'acte d'état civil"
|
||||
|
||||
@classmethod
|
||||
def get_verbose_name(cls):
|
||||
|
|
|
@ -315,7 +315,7 @@ class CsvDataSource(BaseResource):
|
|||
try:
|
||||
query = Query.objects.get(resource=self.id, slug=query_name)
|
||||
except Query.DoesNotExist:
|
||||
raise APIError(u'no such query')
|
||||
raise APIError('no such query')
|
||||
return self.execute_query(request, query, query_params=kwargs)
|
||||
|
||||
def execute_query(self, request, query, query_params=None):
|
||||
|
@ -337,7 +337,7 @@ class CsvDataSource(BaseResource):
|
|||
data['name'] = titles[i]
|
||||
else:
|
||||
data['idx'] = i
|
||||
raise APIError(u'invalid %s expression' % kind, data=data)
|
||||
raise APIError('invalid %s expression' % kind, data=data)
|
||||
codes.append((code, expr))
|
||||
for row in data:
|
||||
new_row = []
|
||||
|
@ -356,7 +356,7 @@ class CsvDataSource(BaseResource):
|
|||
data['name'] = titles[i]
|
||||
else:
|
||||
data['idx'] = i
|
||||
raise APIError(u'invalid %s expression' % kind, data=data)
|
||||
raise APIError('invalid %s expression' % kind, data=data)
|
||||
new_row.append(result)
|
||||
yield new_row, row
|
||||
|
||||
|
@ -383,7 +383,7 @@ class CsvDataSource(BaseResource):
|
|||
hash(new_row)
|
||||
except TypeError:
|
||||
raise APIError(
|
||||
u'distinct value is unhashable',
|
||||
'distinct value is unhashable',
|
||||
data={
|
||||
'row': repr(row),
|
||||
'distinct': repr(new_row),
|
||||
|
@ -402,7 +402,7 @@ class CsvDataSource(BaseResource):
|
|||
for mapping in projection:
|
||||
name, expr = mapping.split(':', 1)
|
||||
if not identifier_re.match(name):
|
||||
raise APIError(u'invalid projection name', data=name)
|
||||
raise APIError('invalid projection name', data=name)
|
||||
titles.append(name)
|
||||
expressions.append(expr)
|
||||
new_data = []
|
||||
|
|
|
@ -470,7 +470,7 @@ class Person(models.Model):
|
|||
|
||||
@property
|
||||
def fullname(self):
|
||||
return u'%s %s' % (self.first_name, self.last_name)
|
||||
return '%s %s' % (self.first_name, self.last_name)
|
||||
|
||||
def __str__(self):
|
||||
return self.fullname
|
||||
|
|
|
@ -224,7 +224,7 @@ class Gesbac(BaseResource):
|
|||
category = _('Business Process Connectors')
|
||||
|
||||
class Meta:
|
||||
verbose_name = u'Gesbac'
|
||||
verbose_name = 'Gesbac'
|
||||
|
||||
def check_status(self):
|
||||
with self.outcoming_sftp.client() as out_sftp:
|
||||
|
|
|
@ -97,7 +97,7 @@ class Maelis(BaseResource):
|
|||
category = _('Business Process Connectors')
|
||||
|
||||
class Meta:
|
||||
verbose_name = u'Maélis'
|
||||
verbose_name = 'Maélis'
|
||||
|
||||
@classmethod
|
||||
def get_verbose_name(cls):
|
||||
|
|
|
@ -350,7 +350,7 @@ class Demand(models.Model):
|
|||
|
||||
# Set aec_nature if aec_type_raw == DECES
|
||||
if formdata.get('aec_type_raw') == 'DECES' and not formdata.get('aec_nature_raw'):
|
||||
formdata['aec_nature'] = u'Copie integrale'
|
||||
formdata['aec_nature'] = 'Copie integrale'
|
||||
formdata['aec_nature_raw'] = 'COPIE-INTEGRALE'
|
||||
|
||||
# Set motif_demand if none
|
||||
|
|
|
@ -221,9 +221,7 @@ class OpenGIS(BaseResource):
|
|||
except ValueError:
|
||||
self.handle_opengis_error(response)
|
||||
# if handle_opengis_error did not raise an error, we raise a generic one
|
||||
raise APIError(
|
||||
u'OpenGIS Error: unparsable error', data={'content': repr(response.content[:1024])}
|
||||
)
|
||||
raise APIError('OpenGIS Error: unparsable error', data={'content': repr(response.content[:1024])})
|
||||
for feature in response['features']:
|
||||
feature['text'] = feature['properties'].get(property_name)
|
||||
data.append(feature)
|
||||
|
@ -245,7 +243,7 @@ class OpenGIS(BaseResource):
|
|||
return None
|
||||
content = exception_text.text
|
||||
content = html.unescape(content)
|
||||
raise APIError(u'OpenGIS Error: %s' % exception_code or 'unknown code', data={'text': content})
|
||||
raise APIError('OpenGIS Error: %s' % exception_code or 'unknown code', data={'text': content})
|
||||
|
||||
def convert_coordinates(self, lon, lat, reverse=False):
|
||||
lon, lat = float(lon), float(lat)
|
||||
|
|
|
@ -335,12 +335,12 @@ class Resource(BaseResource):
|
|||
with self.resource.output_sftp.client() as client:
|
||||
with client.open(self.request.response_zip_filename, mode='w') as fd:
|
||||
self.request.build_response_zip(
|
||||
fd, etat='100', commentaire=u'Demande transmise à la collectivité'
|
||||
fd, etat='100', commentaire='Demande transmise à la collectivité'
|
||||
)
|
||||
with self.resource.input_sftp.client() as client:
|
||||
with client.open('DONE/' + self.request.response_zip_filename, mode='w') as fd:
|
||||
self.request.build_response_zip(
|
||||
fd, etat='100', commentaire=u'Demande transmise à la collectivité'
|
||||
fd, etat='100', commentaire='Demande transmise à la collectivité'
|
||||
)
|
||||
|
||||
def get_data(self, data, name):
|
||||
|
@ -355,11 +355,11 @@ class Resource(BaseResource):
|
|||
numero_permis_construire = get('doc_declarant_designation_permis_numero_permis_construire')
|
||||
numero_permis_amenager = get('doc_declarant_designation_permis_numero_permis_amenager')
|
||||
data['type_permis'] = (
|
||||
u'Un permis de construire' if numero_permis_construire else u'Un permis d\'aménager'
|
||||
'Un permis de construire' if numero_permis_construire else 'Un permis d\'aménager'
|
||||
)
|
||||
data['numero_permis'] = numero_permis_construire or numero_permis_amenager
|
||||
particulier = get('doc_declarant_identite_type_personne').strip().lower() == 'true'
|
||||
data['type_declarant'] = u'Un particulier' if particulier else u'Une personne morale'
|
||||
data['type_declarant'] = 'Un particulier' if particulier else 'Une personne morale'
|
||||
if particulier:
|
||||
data['nom'] = get('doc_declarant_identite_personne_physique_nom')
|
||||
data['prenoms'] = get('doc_declarant_identite_personne_physique_prenom')
|
||||
|
@ -382,9 +382,9 @@ class Resource(BaseResource):
|
|||
get('doc_declarant_identite_personne_morale_representant_personne_morale_civilite'), ''
|
||||
)
|
||||
data['portee'] = (
|
||||
u'Pour la totalité des travaux'
|
||||
'Pour la totalité des travaux'
|
||||
if get('doc_ouverture_chantier_totalite_travaux').lower().strip() == 'true'
|
||||
else u'Pour une tranche des travaux'
|
||||
else 'Pour une tranche des travaux'
|
||||
)
|
||||
|
||||
def update_data_recensementCitoyen(self, data):
|
||||
|
@ -397,9 +397,9 @@ class Resource(BaseResource):
|
|||
data['motif'] = {'RECENSEMENT': '1', 'EXEMPTION': '2'}[motif]
|
||||
if data['motif'] == '2':
|
||||
data['motif_exempte'] = (
|
||||
u"Titulaire d'une carte d'invalidité de 80% minimum"
|
||||
"Titulaire d'une carte d'invalidité de 80% minimum"
|
||||
if get('recensementcitoyen_formalite_formalitemotifcode_2') == 'INFIRME'
|
||||
else u"Autre situation"
|
||||
else "Autre situation"
|
||||
)
|
||||
data['justificatif_exemption'] = get('pj_je')
|
||||
data['double_nationalite'] = 'Oui' if get('recensementcitoyen_personne_nationalite') else 'Non'
|
||||
|
@ -421,16 +421,16 @@ class Resource(BaseResource):
|
|||
data['justificatif_identite'] = get('pj_ji')
|
||||
situation_matrimoniale = get('recensementcitoyen_personne_situationfamille_situationmatrimoniale')
|
||||
data['situation_familiale'] = {
|
||||
u'Célibataire': u'Célibataire',
|
||||
u'Marié': u'Marié(e)',
|
||||
}.get(situation_matrimoniale, u'Autres')
|
||||
if data['situation_familiale'] == u'Autres':
|
||||
'Célibataire': 'Célibataire',
|
||||
'Marié': 'Marié(e)',
|
||||
}.get(situation_matrimoniale, 'Autres')
|
||||
if data['situation_familiale'] == 'Autres':
|
||||
data['situation_familiale_precision'] = situation_matrimoniale
|
||||
pupille = get('recensementcitoyen_personne_situationfamille_pupille')
|
||||
data['pupille'] = 'Oui' if pupille else 'Non'
|
||||
data['pupille_categorie'] = {
|
||||
'NATION': u"Pupille de la nation",
|
||||
'ETAT': u"Pupille de l'État",
|
||||
'NATION': "Pupille de la nation",
|
||||
'ETAT': "Pupille de l'État",
|
||||
}.get(pupille)
|
||||
for idx in ['', '_1', '_2']:
|
||||
code = get('recensementcitoyen_personne_methodecontact%s_canalcode' % idx)
|
||||
|
@ -774,7 +774,7 @@ class Request(models.Model):
|
|||
'.//{%(mdel)s}MotDePasse' % ns
|
||||
).text
|
||||
response.find('.//{%(pec)s}Etat' % ns).text = '100'
|
||||
response.find('.//{%(pec)s}Commentaire' % ns).text = u'Dossier transmis à la collectivité'
|
||||
response.find('.//{%(pec)s}Commentaire' % ns).text = 'Dossier transmis à la collectivité'
|
||||
return response
|
||||
|
||||
def build_response_zip(self, fd_or_filename, etat, commentaire):
|
||||
|
|
|
@ -146,7 +146,7 @@ class VivaTicket(BaseResource):
|
|||
log_requests_errors = False
|
||||
|
||||
class Meta:
|
||||
verbose_name = u'VivaTicket'
|
||||
verbose_name = 'VivaTicket'
|
||||
|
||||
@classmethod
|
||||
def get_verbose_name(cls):
|
||||
|
|
|
@ -85,7 +85,7 @@ class ApiUser(models.Model):
|
|||
)
|
||||
|
||||
def __str__(self):
|
||||
return u'%s <%s>' % (self.fullname, self.username)
|
||||
return '%s <%s>' % (self.fullname, self.username)
|
||||
|
||||
def clean(self):
|
||||
if self.keytype and not self.key:
|
||||
|
@ -513,17 +513,17 @@ class BaseResource(models.Model):
|
|||
if status == 'down' and not self.down(): # new downtime
|
||||
if availability_parameters.has_zero_delay():
|
||||
self.logger.error(
|
||||
u'connector "%s" (%s) is now down: %s', self, self.__class__.__name__, message
|
||||
'connector "%s" (%s) is now down: %s', self, self.__class__.__name__, message
|
||||
)
|
||||
else:
|
||||
self.logger.warning(
|
||||
u'connector "%s" (%s) is now down: %s', self, self.__class__.__name__, message
|
||||
'connector "%s" (%s) is now down: %s', self, self.__class__.__name__, message
|
||||
)
|
||||
ResourceStatus(
|
||||
resource_type=resource_type, resource_pk=self.pk, status=status, message=message
|
||||
).save()
|
||||
if status == 'up' and current_status:
|
||||
self.logger.info(u'connector "%s" (%s) is back up', self, self.__class__.__name__)
|
||||
self.logger.info('connector "%s" (%s) is back up', self, self.__class__.__name__)
|
||||
elif status == 'down':
|
||||
# check last_notification_downtime and current downtime to see if it matches a new notification delay
|
||||
last_notification_timestamp = (
|
||||
|
@ -550,7 +550,7 @@ class BaseResource(models.Model):
|
|||
else:
|
||||
human_duration = 'for %d minutes' % downtime
|
||||
self.logger.error(
|
||||
u'connector "%s" (%s) has been down %s: %s',
|
||||
'connector "%s" (%s) has been down %s: %s',
|
||||
self,
|
||||
self.__class__.__name__,
|
||||
human_duration,
|
||||
|
|
|
@ -218,12 +218,12 @@ class ManageAvailabilityView(UpdateView):
|
|||
|
||||
# log changes to notification delays
|
||||
if 'notification_delays' in form.changed_data:
|
||||
resource.logger.info(u'availability checks delays set to %s', form.instance.notification_delays)
|
||||
resource.logger.info('availability checks delays set to %s', form.instance.notification_delays)
|
||||
|
||||
# log changes to run_check, if enabled immediately check for availability
|
||||
if 'run_check' in form.changed_data:
|
||||
resource.logger.info(
|
||||
u'availability checks %s', 'enabled' if form.instance.run_check else 'disabled'
|
||||
'availability checks %s', 'enabled' if form.instance.run_check else 'disabled'
|
||||
)
|
||||
if form.instance.run_check:
|
||||
resource.availability()
|
||||
|
|
|
@ -259,7 +259,7 @@ class DPark(BaseResource):
|
|||
}
|
||||
if code_retour in errors:
|
||||
return Error(errors[code_retour], msg=msg_retour)
|
||||
return Error('other-error', msg=u'code="%s" msg="%s"' % (code_retour, msg_retour))
|
||||
return Error('other-error', msg='code="%s" msg="%s"' % (code_retour, msg_retour))
|
||||
|
||||
@endpoint(perm='can_access', description=_('Check service availibity'))
|
||||
def ping(self, request, *args, **kwargs):
|
||||
|
@ -554,7 +554,7 @@ class DPark(BaseResource):
|
|||
try:
|
||||
pdf_content = to_pdf(file_raw_content)
|
||||
except ValueError as e:
|
||||
errors.append(u'<%s> cannot be converted to PDF: %s' % (key, e))
|
||||
errors.append('<%s> cannot be converted to PDF: %s' % (key, e))
|
||||
continue
|
||||
filename = value['filename']
|
||||
if not filename.lower().endswith('.pdf'):
|
||||
|
|
|
@ -34,7 +34,7 @@ class ESiriusSwi(BaseResource):
|
|||
category = _('Business Process Connectors')
|
||||
|
||||
class Meta:
|
||||
verbose_name = u'eSirius sitewaitingindicator'
|
||||
verbose_name = 'eSirius sitewaitingindicator'
|
||||
|
||||
@classmethod
|
||||
def get_verbose_name(cls):
|
||||
|
|
|
@ -35,7 +35,7 @@ from passerelle.utils.api import APIError, endpoint
|
|||
from .formdata import CREATION_SCHEMA, FormData, list_schema_fields
|
||||
|
||||
# taken from https://lsimons.wordpress.com/2011/03/17/stripping-illegal-characters-out-of-xml-in-python/
|
||||
_illegal_xml_chars_RE = re.compile(u'[\x00-\x08\x0b\x0c\x0e-\x1F\uD800-\uDFFF\uFFFE\uFFFF]')
|
||||
_illegal_xml_chars_RE = re.compile('[\x00-\x08\x0b\x0c\x0e-\x1F\uD800-\uDFFF\uFFFE\uFFFF]')
|
||||
|
||||
|
||||
def escape_xml_illegal_chars(val, replacement='?'):
|
||||
|
|
|
@ -114,7 +114,7 @@ class MDPH13Resource(BaseResource, HTTPResource):
|
|||
for person in entourage:
|
||||
if not isinstance(person, dict):
|
||||
raise APIError('entourage-content-must-be-dicts', data=content)
|
||||
if person.get('role') in [u'Père', u'Mère']:
|
||||
if person.get('role') in ['Père', 'Mère']:
|
||||
new_entourage.setdefault('parents', []).append(person)
|
||||
else:
|
||||
new_entourage.setdefault('aidants', []).append(person)
|
||||
|
@ -131,9 +131,9 @@ class MDPH13Resource(BaseResource, HTTPResource):
|
|||
raise APIError('demandes-content-must-be-dicts', data=content)
|
||||
new_demandes = {}
|
||||
typologies = {
|
||||
u'demande en cours': 'en_cours',
|
||||
u'traitée et expédiée': 'historique',
|
||||
u'traitée non expédiée': 'historique',
|
||||
'demande en cours': 'en_cours',
|
||||
'traitée et expédiée': 'historique',
|
||||
'traitée non expédiée': 'historique',
|
||||
}
|
||||
if not all(isinstance(demande.get('typologie'), six.text_type) for demande in demandes):
|
||||
raise APIError('typologie-must-be-a-string', data=content)
|
||||
|
@ -364,11 +364,11 @@ class Link(models.Model):
|
|||
parts.append(prenom)
|
||||
if nom:
|
||||
parts.append(nom)
|
||||
parts.append(u'#%s' % numero)
|
||||
parts.append('#%s' % numero)
|
||||
return ' '.join(parts)
|
||||
|
||||
def __str__(self):
|
||||
return self.display_name or u'#%s' % self.file_number
|
||||
return self.display_name or '#%s' % self.file_number
|
||||
|
||||
class Meta:
|
||||
unique_together = (
|
||||
|
|
|
@ -208,7 +208,7 @@ def conciliation_payload(config, **data):
|
|||
)
|
||||
criterium = []
|
||||
for xpath, local in config['input'].items():
|
||||
criterium.append({'key': xpath, 'value': data.get(local, u'')})
|
||||
criterium.append({'key': xpath, 'value': data.get(local, '')})
|
||||
returndata = []
|
||||
for xpath in config['output']:
|
||||
returndata.append(xpath)
|
||||
|
@ -235,5 +235,5 @@ def conciliation_output2dict(config, entity):
|
|||
x = entity
|
||||
for k in xpath.split('/'):
|
||||
x = x.get(k, {})
|
||||
d[xpath] = x or u''
|
||||
d[xpath] = x or ''
|
||||
return d
|
||||
|
|
|
@ -164,11 +164,11 @@ class SolisAPA(BaseResource):
|
|||
ret = []
|
||||
|
||||
for v in villes:
|
||||
# {u'Attributes': {u'Attribute': {u'id': u'stdr.commune.cp_lieu',
|
||||
# u'value': 14210}}, u'Keys': {u'Key': [{u'id':
|
||||
# u'stdr.commune.code_a_com', u'value': 771}, {u'id':
|
||||
# u'stdr.commune.code_dep', u'value': 14}]}, u'id':
|
||||
# u'commune-14-771', u'value': u'NEUILLY LE MALHERBE'},
|
||||
# {'Attributes': {'Attribute': {'id': 'stdr.commune.cp_lieu',
|
||||
# 'value': 14210}}, 'Keys': {'Key': [{'id':
|
||||
# 'stdr.commune.code_a_com', 'value': 771}, {'id':
|
||||
# 'stdr.commune.code_dep', 'value': 14}]}, 'id':
|
||||
# 'commune-14-771', 'value': 'NEUILLY LE MALHERBE'},
|
||||
#
|
||||
# However, the lack of some informations has already been observed,
|
||||
# so there are some test/continue here
|
||||
|
@ -204,14 +204,14 @@ class SolisAPA(BaseResource):
|
|||
lieux = call.get('results')
|
||||
ret = []
|
||||
for l in lieux:
|
||||
# '@affinity': u'5',
|
||||
# 'CodeDepartement/@V': u'',
|
||||
# 'CodeLieu/@V': u'0110',
|
||||
# 'CodePostal/@V': u'14000',
|
||||
# 'Commune/NomCom/@V': u'CAEN',
|
||||
# 'Commune/PK/CodeCommune/@V': u'118',
|
||||
# 'NatureLieu/@Lc': u'RUE',
|
||||
# 'NomLieu/@V': u'DU BEAU SITE'
|
||||
# '@affinity': '5',
|
||||
# 'CodeDepartement/@V': '',
|
||||
# 'CodeLieu/@V': '0110',
|
||||
# 'CodePostal/@V': '14000',
|
||||
# 'Commune/NomCom/@V': 'CAEN',
|
||||
# 'Commune/PK/CodeCommune/@V': '118',
|
||||
# 'NatureLieu/@Lc': 'RUE',
|
||||
# 'NomLieu/@V': 'DU BEAU SITE'
|
||||
for k, v in l.items():
|
||||
l[k] = v.strip()
|
||||
ret.append(
|
||||
|
@ -232,26 +232,26 @@ class SolisAPA(BaseResource):
|
|||
individus = call.get('results')
|
||||
ret = []
|
||||
for i in individus:
|
||||
# i = {'@affinity': u'3',
|
||||
# 'Dossier/Adresse/Commune/NomCom/@V': u'ST JULIEN EN GENEVOIS',
|
||||
# 'Dossier/Adresse/ComplementLieu/@V': u'ROUTE DE THOIRY',
|
||||
# 'Dossier/Adresse/CpLieu/@V': u'74160',
|
||||
# 'Dossier/Adresse/NatureLieu/@Lc': u'',
|
||||
# 'Dossier/Adresse/NomLieu/@V': u'.',
|
||||
# 'Dossier/Adresse/NumeroLieu/@V': u'39',
|
||||
# 'Dossier/PK/IndexDossier/@V': u'162438',
|
||||
# 'EtatCivil/DateNaissance/@V': u'1933-08-28',
|
||||
# 'EtatCivil/Nom/@V': u'DUPONT',
|
||||
# 'EtatCivil/NomJeuneFille/@V': u'BUATHIER',
|
||||
# 'EtatCivil/Prenom/@V': u'JEANNE',
|
||||
# 'PK/IndexIndividu/@V': u'208359'},
|
||||
# i = {'@affinity': '3',
|
||||
# 'Dossier/Adresse/Commune/NomCom/@V': 'ST JULIEN EN GENEVOIS',
|
||||
# 'Dossier/Adresse/ComplementLieu/@V': 'ROUTE DE THOIRY',
|
||||
# 'Dossier/Adresse/CpLieu/@V': '74160',
|
||||
# 'Dossier/Adresse/NatureLieu/@Lc': '',
|
||||
# 'Dossier/Adresse/NomLieu/@V': '.',
|
||||
# 'Dossier/Adresse/NumeroLieu/@V': '39',
|
||||
# 'Dossier/PK/IndexDossier/@V': '162438',
|
||||
# 'EtatCivil/DateNaissance/@V': '1933-08-28',
|
||||
# 'EtatCivil/Nom/@V': 'DUPONT',
|
||||
# 'EtatCivil/NomJeuneFille/@V': 'BUATHIER',
|
||||
# 'EtatCivil/Prenom/@V': 'JEANNE',
|
||||
# 'PK/IndexIndividu/@V': '208359'},
|
||||
for k, v in i.items():
|
||||
i[k] = v.strip()
|
||||
njf = i['EtatCivil/NomJeuneFille/@V']
|
||||
if njf:
|
||||
i['EtatCivil/NomJeuneFille/@V'] = u' (%s)' % njf
|
||||
i['EtatCivil/NomJeuneFille/@V'] = ' (%s)' % njf
|
||||
if not i['EtatCivil/DateNaissance/@V']:
|
||||
i['EtatCivil/DateNaissance/@V'] = u'date de naissance inconnue'
|
||||
i['EtatCivil/DateNaissance/@V'] = 'date de naissance inconnue'
|
||||
ret.append(
|
||||
{
|
||||
'id': '%(PK/IndexIndividu/@V)s' % i,
|
||||
|
|
|
@ -84,8 +84,8 @@ def suivi_visite_output(data):
|
|||
intervenant['nom'] = _intervenant['Nom']['@V']
|
||||
intervenant['prenom'] = _intervenant['Prenom']['@V']
|
||||
coords = _intervenant.get('Coordonnees', {})
|
||||
intervenant['email'] = coords.get('Email', {}).get('@V', u'')
|
||||
intervenant['telephone'] = coords.get('Telephone', {}).get('@V', u'')
|
||||
intervenant['email'] = coords.get('Email', {}).get('@V', '')
|
||||
intervenant['telephone'] = coords.get('Telephone', {}).get('@V', '')
|
||||
intervenants.append(intervenant)
|
||||
info['visite_intervenants'] = intervenants
|
||||
select = {}
|
||||
|
|
|
@ -88,9 +88,9 @@ class TeamnetAxel(BaseResource):
|
|||
streamId = operation
|
||||
xmlParams = smart_text(ET.tostring(portail, encoding='UTF-8'))
|
||||
user = ''
|
||||
logger.debug(u'getData(streamId=%s, xmlParams=%s, user=%s)', streamId, xmlParams, user)
|
||||
logger.debug('getData(streamId=%s, xmlParams=%s, user=%s)', streamId, xmlParams, user)
|
||||
result = soap.get_client(self).service.getData(streamId, smart_text(xmlParams), user)
|
||||
logger.debug(u'getData(%s) result: %s', streamId, smart_text(result))
|
||||
logger.debug('getData(%s) result: %s', streamId, smart_text(result))
|
||||
xml_result = ET.fromstring(result)
|
||||
if xml_result.find('RESULTAT/STATUS').text != 'OK':
|
||||
msg = xml_result.find('RESULTAT/COMMENTAIRES').text
|
||||
|
|
|
@ -1052,7 +1052,7 @@ class ToulouseAxel(BaseResource):
|
|||
activity['id'] = activity['IDACTIVITE']
|
||||
start_date = datetime.datetime.strptime(activity['DATEENTREE'], axel.json_date_format)
|
||||
end_date = datetime.datetime.strptime(activity['DATESORTIE'], axel.json_date_format)
|
||||
activity['text'] = u'{} (inscription du {} au {})'.format(
|
||||
activity['text'] = '{} (inscription du {} au {})'.format(
|
||||
activity['LIBELLEACTIVITE'],
|
||||
start_date.strftime(axel.xml_date_format),
|
||||
end_date.strftime(axel.xml_date_format),
|
||||
|
|
|
@ -68,13 +68,13 @@ class SMSResource(BaseResource):
|
|||
default_country_code = models.CharField(
|
||||
verbose_name=_('Default country code'),
|
||||
max_length=3,
|
||||
default=u'33',
|
||||
default='33',
|
||||
validators=[RegexValidator('^[0-9]*$', _('The country must only contain numbers'))],
|
||||
)
|
||||
default_trunk_prefix = models.CharField(
|
||||
verbose_name=_('Default trunk prefix'),
|
||||
max_length=2,
|
||||
default=u'0',
|
||||
default='0',
|
||||
validators=[RegexValidator('^[0-9]*$', _('The trunk prefix must only contain numbers'))],
|
||||
) # Yeah France first !
|
||||
max_message_length = models.IntegerField(
|
||||
|
|
|
@ -92,7 +92,7 @@ def exception_to_text(e):
|
|||
content = '<exception-while-rendering-args>'
|
||||
except AttributeError:
|
||||
content = ''
|
||||
return u'%s(%s)' % (e.__class__.__name__, content)
|
||||
return '%s(%s)' % (e.__class__.__name__, content)
|
||||
|
||||
|
||||
def normalize(s):
|
||||
|
|
|
@ -47,7 +47,7 @@ def text_content(node):
|
|||
s.append(child.tail)
|
||||
return s
|
||||
|
||||
return u''.join(helper(node))
|
||||
return ''.join(helper(node))
|
||||
|
||||
|
||||
def to_json(root):
|
||||
|
|
|
@ -165,7 +165,7 @@ def relax_openssl(tmpdir):
|
|||
openssl_cnf_path = tmpdir / 'openssl.cnf'
|
||||
with openssl_cnf_path.open('w') as fd:
|
||||
fd.write(
|
||||
u'''
|
||||
'''
|
||||
[default_conf]
|
||||
ssl_conf = ssl_sect
|
||||
|
||||
|
|
|
@ -315,7 +315,7 @@ def api_entreprise_error_not_json(url, request):
|
|||
|
||||
@urlmatch(netloc='^entreprise.api.gouv.fr$')
|
||||
def api_entreprise_error_not_found(url, request):
|
||||
return response(404, {'error': 'not_found', 'message': u'Page not found'}, request=request)
|
||||
return response(404, {'error': 'not_found', 'message': 'Page not found'}, request=request)
|
||||
|
||||
|
||||
@pytest.yield_fixture
|
||||
|
|
|
@ -125,7 +125,7 @@ def api_particulier_error_not_found(url, request):
|
|||
404,
|
||||
{
|
||||
'error': 'not_found',
|
||||
'message': u'Les paramètres fournis sont incorrects ou ne correspondent pas à un avis',
|
||||
'message': 'Les paramètres fournis sont incorrects ou ne correspondent pas à un avis',
|
||||
},
|
||||
request=request,
|
||||
)
|
||||
|
|
|
@ -72,7 +72,7 @@ def connector(db):
|
|||
def test_check_status(mocked_get, connector):
|
||||
mocked_get.return_value = tests.utils.FakedResponse(content=FAKE_HELLO_RESPONSE, status_code=200)
|
||||
resp = connector.check_status()
|
||||
assert resp['data'] == u'InteropAPI v1 (c) Arpège 2017'
|
||||
assert resp['data'] == 'InteropAPI v1 (c) Arpège 2017'
|
||||
|
||||
|
||||
@mock.patch('passerelle.utils.Request.get')
|
||||
|
|
|
@ -85,7 +85,7 @@ def test_get_type_de_voie(app, connector, monkeypatch):
|
|||
|
||||
|
||||
def test_get_types_equipement(app, connector, monkeypatch):
|
||||
return_value = u"""<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
return_value = """<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<types>
|
||||
<type id="2" label="Espaces Verts"></type>
|
||||
<type id="4" label="Voirie">
|
||||
|
|
|
@ -168,7 +168,7 @@ def test_ws_dossiers(app, genesys):
|
|||
assert response.json['data'][0]['id_per'] == '1234'
|
||||
assert response.json['data'][0]['dossier']
|
||||
assert response.json['data'][0]['id'] == str(link.id)
|
||||
assert response.json['data'][0]['text'] == u'%s - John DOE' % link.id_per
|
||||
assert response.json['data'][0]['text'] == '%s - John DOE' % link.id_per
|
||||
assert response.json['data'][0]['dossier']['IDENTIFICATION'][0]['CIVILITE'] == 'Madame'
|
||||
assert len(response.json['data'][0]['dossier']['DEMANDES']) == 1
|
||||
assert len(response.json['data'][0]['dossier']['DEMANDES']['AD']) == 1
|
||||
|
@ -193,11 +193,11 @@ def test_ws_dossiers(app, genesys):
|
|||
assert response.json['data'][0]['id_per'] == '1234'
|
||||
assert response.json['data'][0]['dossier']
|
||||
assert response.json['data'][0]['id'] == str(link.id)
|
||||
assert response.json['data'][0]['text'] == u'%s - John DOE' % link.id_per
|
||||
assert response.json['data'][0]['text'] == '%s - John DOE' % link.id_per
|
||||
assert response.json['data'][1]['id_per'] == '4567'
|
||||
assert response.json['data'][1]['dossier']
|
||||
assert response.json['data'][1]['id'] == str(link2.id)
|
||||
assert response.json['data'][1]['text'] == u'%s - John DOE' % link2.id_per
|
||||
assert response.json['data'][1]['text'] == '%s - John DOE' % link2.id_per
|
||||
|
||||
with tests.utils.mock_url(FAKE_URL, RESPONSE_SELECT_USAGER):
|
||||
response = app.get(
|
||||
|
@ -215,7 +215,7 @@ def test_ws_dossiers(app, genesys):
|
|||
assert response.json['data']['id_per'] == '4567'
|
||||
assert response.json['data']['dossier']
|
||||
assert response.json['data']['id'] == str(link2.id)
|
||||
assert response.json['data']['text'] == u'%s - John DOE' % link2.id_per
|
||||
assert response.json['data']['text'] == '%s - John DOE' % link2.id_per
|
||||
|
||||
|
||||
def test_row_locked_cache(genesys, freezer):
|
||||
|
@ -332,31 +332,31 @@ def test_ws_search(app, genesys):
|
|||
data = response.json['data']
|
||||
assert data == [
|
||||
{
|
||||
u'id': u'tel1',
|
||||
u'id_per': u'1234',
|
||||
u'nom': u'DOE',
|
||||
u'nom_naissance': u'TEST',
|
||||
u'phone': u'0655555555',
|
||||
u'prenom': u'John',
|
||||
u'text': u'par SMS vers 06*****555',
|
||||
'id': 'tel1',
|
||||
'id_per': '1234',
|
||||
'nom': 'DOE',
|
||||
'nom_naissance': 'TEST',
|
||||
'phone': '0655555555',
|
||||
'prenom': 'John',
|
||||
'text': 'par SMS vers 06*****555',
|
||||
},
|
||||
{
|
||||
u'id': u'tel2',
|
||||
u'id_per': u'1234',
|
||||
u'nom': u'DOE',
|
||||
u'nom_naissance': u'TEST',
|
||||
u'phone': u'0644444444',
|
||||
u'prenom': u'John',
|
||||
u'text': u'par SMS vers 06*****444',
|
||||
'id': 'tel2',
|
||||
'id_per': '1234',
|
||||
'nom': 'DOE',
|
||||
'nom_naissance': 'TEST',
|
||||
'phone': '0644444444',
|
||||
'prenom': 'John',
|
||||
'text': 'par SMS vers 06*****444',
|
||||
},
|
||||
{
|
||||
u'email': u'test@sirus.fr',
|
||||
u'id': u'email1',
|
||||
u'id_per': u'1234',
|
||||
u'nom': u'DOE',
|
||||
u'nom_naissance': u'TEST',
|
||||
u'prenom': u'John',
|
||||
u'text': u'par courriel vers te***@***.fr',
|
||||
'email': 'test@sirus.fr',
|
||||
'id': 'email1',
|
||||
'id_per': '1234',
|
||||
'nom': 'DOE',
|
||||
'nom_naissance': 'TEST',
|
||||
'prenom': 'John',
|
||||
'text': 'par courriel vers te***@***.fr',
|
||||
},
|
||||
]
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ from httmock import HTTMock, all_requests
|
|||
import tests.utils
|
||||
from passerelle.apps.feeds.models import Feed
|
||||
|
||||
FEED_EXAMPLE = u"""<?xml version="1.0" encoding="UTF-8"?>
|
||||
FEED_EXAMPLE = """<?xml version="1.0" encoding="UTF-8"?>
|
||||
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
|
||||
<title>Actualités de Strasbourg</title>
|
||||
<link rel="alternate" href="http://www.strasbourg.eu/fr/actualites/-/asset_publisher/lG7u/rss" />
|
||||
|
|
|
@ -123,11 +123,11 @@ def base_adresse_coordinates(db):
|
|||
def street(db):
|
||||
return StreetModel.objects.create(
|
||||
ban_id='73001_0000',
|
||||
city=u'Chambéry',
|
||||
name=u'Une rüê très äccentuéè',
|
||||
zipcode=u'73000',
|
||||
type=u'street',
|
||||
citycode=u'73001',
|
||||
city='Chambéry',
|
||||
name='Une rüê très äccentuéè',
|
||||
zipcode='73000',
|
||||
type='street',
|
||||
citycode='73001',
|
||||
resource=BaseAdresse.objects.first(),
|
||||
)
|
||||
|
||||
|
@ -135,21 +135,21 @@ def street(db):
|
|||
@pytest.fixture
|
||||
def region(db):
|
||||
return RegionModel.objects.create(
|
||||
name=u'Auvergne-Rhône-Alpes', code='84', resource=BaseAdresse.objects.first()
|
||||
name='Auvergne-Rhône-Alpes', code='84', resource=BaseAdresse.objects.first()
|
||||
)
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def department(db, region):
|
||||
return DepartmentModel.objects.create(
|
||||
name=u'Savoie', code='73', region=region, resource=BaseAdresse.objects.first()
|
||||
name='Savoie', code='73', region=region, resource=BaseAdresse.objects.first()
|
||||
)
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def city(db, region, department):
|
||||
return CityModel.objects.create(
|
||||
name=u'Chambéry',
|
||||
name='Chambéry',
|
||||
code='73065',
|
||||
zipcode='73000',
|
||||
population=42000,
|
||||
|
@ -162,7 +162,7 @@ def city(db, region, department):
|
|||
@pytest.fixture
|
||||
def miquelon(db):
|
||||
return CityModel.objects.create(
|
||||
name=u'Miquelon-Langlade',
|
||||
name='Miquelon-Langlade',
|
||||
code='97501',
|
||||
zipcode='97500',
|
||||
population=42,
|
||||
|
@ -244,7 +244,7 @@ def test_base_adresse_search_qs_parameters_error(app, base_adresse, mock_api_adr
|
|||
resp = app.get('/base-adresse/%s/search' % base_adresse.slug, status=400)
|
||||
assert resp.json['err'] == 1
|
||||
assert resp.json['err_class'] == 'passerelle.views.WrongParameter'
|
||||
assert resp.json['err_desc'] == u"missing parameters: 'q'."
|
||||
assert resp.json['err_desc'] == "missing parameters: 'q'."
|
||||
# json-api serializer
|
||||
resp = app.get('/base-adresse/%s/streets?zipcode=13400&coin=zz' % base_adresse.slug, status=400)
|
||||
assert resp.json['err'] == 1
|
||||
|
@ -358,8 +358,8 @@ def test_base_adresse_streets_get_by_id(app, base_adresse, street):
|
|||
# create additional streets
|
||||
other_street = StreetModel.objects.create(
|
||||
ban_id='%d_000T' % (73001 + i),
|
||||
city=u'Chambéry',
|
||||
name=u'Une rue différente',
|
||||
city='Chambéry',
|
||||
name='Une rue différente',
|
||||
zipcode=str(73001 + i),
|
||||
type='street',
|
||||
citycode=str(73001 + i),
|
||||
|
@ -394,8 +394,8 @@ def test_base_adresse_streets_get_by_id(app, base_adresse, street):
|
|||
def test_base_adresse_streets_get_by_codes(app, base_adresse, street):
|
||||
for i in range(20):
|
||||
StreetModel.objects.create(
|
||||
city=u'Paris %d' % i,
|
||||
name=u'La rue %d' % i,
|
||||
city='Paris %d' % i,
|
||||
name='La rue %d' % i,
|
||||
zipcode=str(75000 + i * 10),
|
||||
type='street',
|
||||
citycode=str(75000 + i * 11),
|
||||
|
@ -588,10 +588,10 @@ def test_base_adresse_cities_dash_in_q(app, base_adresse, miquelon):
|
|||
|
||||
|
||||
def test_base_adresse_cities_region_department(app, base_adresse, miquelon, city):
|
||||
reg = RegionModel.objects.create(name=u'IdF', code='11', resource=base_adresse)
|
||||
dep = DepartmentModel.objects.create(name=u'Paris', code='75', region=reg, resource=base_adresse)
|
||||
reg = RegionModel.objects.create(name='IdF', code='11', resource=base_adresse)
|
||||
dep = DepartmentModel.objects.create(name='Paris', code='75', region=reg, resource=base_adresse)
|
||||
CityModel.objects.create(
|
||||
name=u'Paris',
|
||||
name='Paris',
|
||||
code='75056',
|
||||
zipcode='75014',
|
||||
population=2000000,
|
||||
|
@ -669,8 +669,8 @@ def test_base_adresse_departments(app, base_adresse, department, region):
|
|||
|
||||
|
||||
def test_base_adresse_departments_region(app, base_adresse, department):
|
||||
reg = RegionModel.objects.create(name=u'IdF', code='11', resource=base_adresse)
|
||||
DepartmentModel.objects.create(name=u'Paris', code='75', region=reg, resource=base_adresse)
|
||||
reg = RegionModel.objects.create(name='IdF', code='11', resource=base_adresse)
|
||||
DepartmentModel.objects.create(name='Paris', code='75', region=reg, resource=base_adresse)
|
||||
|
||||
resp = app.get('/base-adresse/%s/departments?region_code=84' % base_adresse.slug)
|
||||
result = resp.json['data']
|
||||
|
|
|
@ -73,7 +73,7 @@ class FakeService:
|
|||
},
|
||||
{
|
||||
'IdPiece': 62,
|
||||
'Libelle': u'Plan de masse des constructions à démolir',
|
||||
'Libelle': 'Plan de masse des constructions à démolir',
|
||||
'Descriptif': 'Un plan de masse des constructions...',
|
||||
'CodePiece': 'PCA1',
|
||||
'Reglementaire': False,
|
||||
|
@ -130,28 +130,28 @@ class FakeService:
|
|||
return [
|
||||
OrderedDict(
|
||||
[
|
||||
(u'CodePiece', 'PC07'),
|
||||
(u'DateDemande', datetime.datetime(2019, 4, 15, 0, 0)),
|
||||
(u'DatePresentation', None),
|
||||
(u'DateReception', None),
|
||||
(u'Descriptif', u"Un document graphique..."),
|
||||
(u'IdDosPiece', 133837),
|
||||
(u'IdPiece', 58),
|
||||
(u'LibellePiece', u"Document graphique permettant..."),
|
||||
(u'NbDocuments', 0),
|
||||
('CodePiece', 'PC07'),
|
||||
('DateDemande', datetime.datetime(2019, 4, 15, 0, 0)),
|
||||
('DatePresentation', None),
|
||||
('DateReception', None),
|
||||
('Descriptif', "Un document graphique..."),
|
||||
('IdDosPiece', 133837),
|
||||
('IdPiece', 58),
|
||||
('LibellePiece', "Document graphique permettant..."),
|
||||
('NbDocuments', 0),
|
||||
]
|
||||
),
|
||||
OrderedDict(
|
||||
[
|
||||
(u'CodePiece', 'PC16-1'),
|
||||
(u'DateDemande', datetime.datetime(2019, 4, 15, 0, 0)),
|
||||
(u'DatePresentation', None),
|
||||
(u'DateReception', None),
|
||||
(u'Descriptif', u'Formulaire attestant...'),
|
||||
(u'IdDosPiece', 133840),
|
||||
(u'IdPiece', 99),
|
||||
(u'LibellePiece', u'Formulaire attestant...'),
|
||||
(u'NbDocuments', 0),
|
||||
('CodePiece', 'PC16-1'),
|
||||
('DateDemande', datetime.datetime(2019, 4, 15, 0, 0)),
|
||||
('DatePresentation', None),
|
||||
('DateReception', None),
|
||||
('Descriptif', 'Formulaire attestant...'),
|
||||
('IdDosPiece', 133840),
|
||||
('IdPiece', 99),
|
||||
('LibellePiece', 'Formulaire attestant...'),
|
||||
('NbDocuments', 0),
|
||||
]
|
||||
),
|
||||
]
|
||||
|
@ -160,28 +160,28 @@ class FakeService:
|
|||
return [
|
||||
OrderedDict(
|
||||
[
|
||||
(u'CodePiece', 'AT1'),
|
||||
(u'DateDemande', None),
|
||||
(u'DatePresentation', None),
|
||||
(u'DateReception', None),
|
||||
(u'Descriptif', u"L'attestation constatant..."),
|
||||
(u'IdDosPiece', 0),
|
||||
(u'IdPiece', 191),
|
||||
(u'LibellePiece', 'Attestation constat des travaux'),
|
||||
(u'NbDocuments', 0),
|
||||
('CodePiece', 'AT1'),
|
||||
('DateDemande', None),
|
||||
('DatePresentation', None),
|
||||
('DateReception', None),
|
||||
('Descriptif', "L'attestation constatant..."),
|
||||
('IdDosPiece', 0),
|
||||
('IdPiece', 191),
|
||||
('LibellePiece', 'Attestation constat des travaux'),
|
||||
('NbDocuments', 0),
|
||||
]
|
||||
),
|
||||
OrderedDict(
|
||||
[
|
||||
(u'CodePiece', 'AT2'),
|
||||
(u'DateDemande', None),
|
||||
(u'DatePresentation', None),
|
||||
(u'DateReception', None),
|
||||
(u'Descriptif', u"Dans les cas..."),
|
||||
(u'IdDosPiece', 0),
|
||||
(u'IdPiece', 192),
|
||||
(u'LibellePiece', u'Document du...'),
|
||||
(u'NbDocuments', 0),
|
||||
('CodePiece', 'AT2'),
|
||||
('DateDemande', None),
|
||||
('DatePresentation', None),
|
||||
('DateReception', None),
|
||||
('Descriptif', "Dans les cas..."),
|
||||
('IdDosPiece', 0),
|
||||
('IdPiece', 192),
|
||||
('LibellePiece', 'Document du...'),
|
||||
('NbDocuments', 0),
|
||||
]
|
||||
),
|
||||
]
|
||||
|
@ -198,13 +198,13 @@ class FakeService:
|
|||
assert id_dossier in (123, '135792')
|
||||
return OrderedDict(
|
||||
[
|
||||
(u'AdresseTerrain', u'all\xe9e des Fleurs'),
|
||||
(u'CoTypeDossier', 'PC'),
|
||||
(u'Commune', u'AIGREFEUILLE SUR MAINE'),
|
||||
(u'DateDepot', datetime.datetime(2019, 9, 19, 0, 0)),
|
||||
(u'IdDossier', 478864),
|
||||
(u'NomDossier', 'PC 069 085 19 00010'),
|
||||
(u'TypeDossier', 'Permis de construire'),
|
||||
('AdresseTerrain', 'all\xe9e des Fleurs'),
|
||||
('CoTypeDossier', 'PC'),
|
||||
('Commune', 'AIGREFEUILLE SUR MAINE'),
|
||||
('DateDepot', datetime.datetime(2019, 9, 19, 0, 0)),
|
||||
('IdDossier', 478864),
|
||||
('NomDossier', 'PC 069 085 19 00010'),
|
||||
('TypeDossier', 'Permis de construire'),
|
||||
]
|
||||
)
|
||||
|
||||
|
@ -266,7 +266,7 @@ def test_pieces_management(connector, app, cached_data):
|
|||
assert len(data) == 5
|
||||
assert data[0]['text'] == 'Cerfa rempli'
|
||||
assert data[0]['max_files'] == 1
|
||||
assert data[1]['text'] == u'Cerfa demandeurs complémentaires'
|
||||
assert data[1]['text'] == 'Cerfa demandeurs complémentaires'
|
||||
assert data[1]['max_files'] == 6
|
||||
assert data[2]['text'] == 'Plan de situation du terrain'
|
||||
assert data[2]['max_files'] == 6
|
||||
|
@ -484,7 +484,7 @@ def test_status_error(connector, app, cached_data):
|
|||
resp = app.get('/cartads-cs/test/status?dossier_id=%s' % dossier.id)
|
||||
assert (
|
||||
resp.json['status_label']
|
||||
== u"File refused (Le modèle sélectionné ne correspond à aucun Cerfa géré par l'application.)"
|
||||
== "File refused (Le modèle sélectionné ne correspond à aucun Cerfa géré par l'application.)"
|
||||
)
|
||||
|
||||
|
||||
|
@ -496,7 +496,7 @@ def test_status_zip_not_considered_error(connector, app, cached_data):
|
|||
dossier.zip_ack_response = 'False'
|
||||
dossier.save()
|
||||
resp = app.get('/cartads-cs/test/status?dossier_id=%s' % dossier.id)
|
||||
assert resp.json['status_label'] == u"File not considered"
|
||||
assert resp.json['status_label'] == "File not considered"
|
||||
|
||||
|
||||
def test_additional_pieces_management(connector, app, cached_data):
|
||||
|
@ -510,7 +510,7 @@ def test_additional_pieces_management(connector, app, cached_data):
|
|||
assert len(data) == 2
|
||||
assert data[0]['text'] == 'Document graphique permettant...'
|
||||
assert data[0]['max_files'] == 6
|
||||
assert data[1]['text'] == u'Formulaire attestant...'
|
||||
assert data[1]['text'] == 'Formulaire attestant...'
|
||||
assert data[1]['max_files'] == 6
|
||||
for piece in data:
|
||||
assert len(piece['files']) == 1
|
||||
|
|
|
@ -245,7 +245,7 @@ def test_data(client, setup, filetype):
|
|||
|
||||
|
||||
def test_unicode_filter_data(client, setup, filetype):
|
||||
filter_criteria = u'Benoît'
|
||||
filter_criteria = 'Benoît'
|
||||
_, url = setup(',id,,text,', filename=filetype, data=get_file_content(filetype))
|
||||
filters = {'text': filter_criteria}
|
||||
resp = client.get(url, filters)
|
||||
|
@ -259,7 +259,7 @@ def test_unicode_filter_data(client, setup, filetype):
|
|||
|
||||
def test_unicode_case_insensitive_filter_data(client, setup, filetype):
|
||||
_, url = setup(',id,,text,', filename=filetype, data=get_file_content(filetype))
|
||||
filter_criteria = u'anaëlle'
|
||||
filter_criteria = 'anaëlle'
|
||||
filters = {'text': filter_criteria, 'case-insensitive': ''}
|
||||
resp = client.get(url, filters)
|
||||
result = parse_response(resp)
|
||||
|
|
|
@ -94,7 +94,7 @@ class MockedService(object):
|
|||
elif self.error_class is TransportError:
|
||||
raise self.error_class('connection error occured', None)
|
||||
elif self.error_class is WebFaultHavingLatin1:
|
||||
raise WebFault(message=u'éêè')
|
||||
raise WebFault(message='éêè')
|
||||
else:
|
||||
raise Exception('random error')
|
||||
|
||||
|
@ -129,7 +129,7 @@ def test_call_service_error(dpark, app):
|
|||
assert 'Error: random error' in resp.json['err_desc']
|
||||
client.return_value = get_client(error_class=WebFaultHavingLatin1)
|
||||
resp = app.get('/dpark/test/ping/')
|
||||
assert u'ServiceError: éêè' in resp.json['err_desc']
|
||||
assert 'ServiceError: éêè' in resp.json['err_desc']
|
||||
|
||||
|
||||
def test_ping(dpark, app):
|
||||
|
@ -156,7 +156,7 @@ def test_search(dpark, app):
|
|||
assert resp.json['code'] == 'unknown-file'
|
||||
# invalid cardnumber
|
||||
client.return_value = get_client(
|
||||
replydata={'CodeRetour': '04', 'MessageRetour': u'Numéro de support inconnu'}
|
||||
replydata={'CodeRetour': '04', 'MessageRetour': 'Numéro de support inconnu'}
|
||||
)
|
||||
resp = app.get('/dpark/test/search/', params=params)
|
||||
assert resp.json['err'] == 1
|
||||
|
@ -184,7 +184,7 @@ def test_link(dpark, app):
|
|||
assert resp.json['code'] == 'unknown-file'
|
||||
# invalid cardnumber
|
||||
client.return_value = get_client(
|
||||
replydata={'CodeRetour': '04', 'MessageRetour': u'Numéro de support inconnu'}
|
||||
replydata={'CodeRetour': '04', 'MessageRetour': 'Numéro de support inconnu'}
|
||||
)
|
||||
resp = app.post_json('/dpark/test/link/', params=params)
|
||||
assert resp.json['err'] == 1
|
||||
|
@ -420,11 +420,11 @@ def test_check_renewal_time(dpark, app):
|
|||
url = '/dpark/test/check-renewal-time/'
|
||||
params = {'firstnames': 'spam eggs', 'lastname': 'bar', 'filenumber': '1' * 9, 'badgenumber': '2' * 9}
|
||||
client.return_value = get_client(
|
||||
replydata={'CodeRetour': '02', 'MessageRetour': u'Renouvellement hors délai'}
|
||||
replydata={'CodeRetour': '02', 'MessageRetour': 'Renouvellement hors délai'}
|
||||
)
|
||||
resp = app.get(url, params=params)
|
||||
assert resp.json['data'] is False
|
||||
assert resp.json['desc'] == u'Renouvellement hors délai'
|
||||
assert resp.json['desc'] == 'Renouvellement hors délai'
|
||||
client.return_value = get_client(replydata={'CodeRetour': '01', 'MessageRetour': 'Dossier existant'})
|
||||
resp = app.get(url, params=params)
|
||||
assert resp.json['data'] is True
|
||||
|
@ -435,11 +435,11 @@ def test_check_renewal_duplicate(dpark, app):
|
|||
url = '/dpark/test/check-renewal-time/'
|
||||
params = {'firstnames': 'spam eggs', 'lastname': 'bar', 'filenumber': '1' * 9, 'badgenumber': '2' * 9}
|
||||
client.return_value = get_client(
|
||||
replydata={'CodeRetour': '02', 'MessageRetour': u'Demande déjà en cours'}
|
||||
replydata={'CodeRetour': '02', 'MessageRetour': 'Demande déjà en cours'}
|
||||
)
|
||||
resp = app.get(url, params=params)
|
||||
assert resp.json['data'] is False
|
||||
assert resp.json['desc'] == u'Demande déjà en cours'
|
||||
assert resp.json['desc'] == 'Demande déjà en cours'
|
||||
client.return_value = get_client(replydata={'CodeRetour': '01', 'MessageRetour': 'Dossier existant'})
|
||||
resp = app.get(url, params=params)
|
||||
assert resp.json['data'] is True
|
||||
|
@ -459,11 +459,11 @@ def test_check_creation_duplicate(dpark, app):
|
|||
'applicant_lastname': 'Ham',
|
||||
}
|
||||
client.return_value = get_client(
|
||||
replydata={'CodeRetour': '02', 'MessageRetour': u'Demande déjà en cours'}
|
||||
replydata={'CodeRetour': '02', 'MessageRetour': 'Demande déjà en cours'}
|
||||
)
|
||||
resp = app.get(url, params=params)
|
||||
assert resp.json['data'] is False
|
||||
assert resp.json['desc'] == u'Demande déjà en cours'
|
||||
assert resp.json['desc'] == 'Demande déjà en cours'
|
||||
client.return_value = get_client(replydata={'CodeRetour': '01', 'MessageRetour': ''})
|
||||
resp = app.get(url, params=params)
|
||||
assert resp.json['data'] is True
|
||||
|
@ -483,11 +483,11 @@ def test_check_creation_not_renewal(dpark, app):
|
|||
'applicant_lastname': 'Ham',
|
||||
}
|
||||
client.return_value = get_client(
|
||||
replydata={'CodeRetour': '02', 'MessageRetour': u'Usager existe déjà dans D-Park'}
|
||||
replydata={'CodeRetour': '02', 'MessageRetour': 'Usager existe déjà dans D-Park'}
|
||||
)
|
||||
resp = app.get(url, params=params)
|
||||
assert resp.json['data'] is False
|
||||
assert resp.json['desc'] == u'Usager existe déjà dans D-Park'
|
||||
assert resp.json['desc'] == 'Usager existe déjà dans D-Park'
|
||||
client.return_value = get_client(replydata={'CodeRetour': '01', 'MessageRetour': ''})
|
||||
resp = app.get(url, params=params)
|
||||
assert resp.json['data'] is True
|
||||
|
@ -508,13 +508,13 @@ def test_get_payment_infos(dpark, app):
|
|||
'badgenumber': '2' * 9,
|
||||
}
|
||||
Pairing.objects.create(resource=dpark, **params)
|
||||
client.return_value = get_client(replydata={'CodeRetour': '02', 'MessageRetour': u'Dossier inconnu'})
|
||||
client.return_value = get_client(replydata={'CodeRetour': '02', 'MessageRetour': 'Dossier inconnu'})
|
||||
resp = app.get(url)
|
||||
assert resp.json['err'] == 0
|
||||
assert resp.json['data'] == []
|
||||
replydata = {
|
||||
'CodeRetour': '01',
|
||||
'MessageRetour': u'Demande acceptée',
|
||||
'MessageRetour': 'Demande acceptée',
|
||||
'NumeroDemande': '55555',
|
||||
'Montant': 12500,
|
||||
'TypePaiement': 10,
|
||||
|
@ -568,7 +568,7 @@ def test_payment_notification(dpark, app, transaction_datetime, expected_date):
|
|||
'badgenumber': '2' * 9,
|
||||
},
|
||||
)
|
||||
operation.return_value = mock.Mock(CodeRetour='02', MessageRetour=u'Dossier inconnu')
|
||||
operation.return_value = mock.Mock(CodeRetour='02', MessageRetour='Dossier inconnu')
|
||||
resp = app.post_json(url, params=params)
|
||||
assert operation.call_args_list[-1].args[5] == expected_date
|
||||
assert resp.json['err'] == 1
|
||||
|
@ -630,7 +630,7 @@ def test_registration(dpark, app, application_thirdparty_subscription):
|
|||
)
|
||||
assert demande_abonnementtiers in force_text(dpark.mock_requests[0].body)
|
||||
assert resp.json['err'] == 1
|
||||
assert resp.json['err_desc'] == u'Dossier incomplet'
|
||||
assert resp.json['err_desc'] == 'Dossier incomplet'
|
||||
# with complete application
|
||||
dpark.mock_responses.append(
|
||||
"""<?xml version="1.0" encoding="utf-8"?>
|
||||
|
@ -668,7 +668,7 @@ def test_send_files(dpark, app, settings, freezer):
|
|||
soap_call.side_effect = APIError('Numéro de demande introuvable')
|
||||
resp = app.post_json(url, params=params)
|
||||
assert resp.json['err'] == 1
|
||||
assert resp.json['err_desc'] == u'Numéro de demande introuvable'
|
||||
assert resp.json['err_desc'] == 'Numéro de demande introuvable'
|
||||
|
||||
params['justif_domicile'] = {
|
||||
'filename': 'address_proof.pDf',
|
||||
|
@ -699,10 +699,10 @@ def test_send_files(dpark, app, settings, freezer):
|
|||
params['impot_revenu'] = 'this is my tax notice'
|
||||
resp = app.post_json(url, params=params)
|
||||
errors = [
|
||||
u"<impot_revenu> value is not a dict",
|
||||
u"<taxe_habitat> <content> is either absent or has an invalid value",
|
||||
u"<taxe_habitat,2> <filename> is either absent or has an invalid value",
|
||||
u"Invalid document type: <toto,6>",
|
||||
"<impot_revenu> value is not a dict",
|
||||
"<taxe_habitat> <content> is either absent or has an invalid value",
|
||||
"<taxe_habitat,2> <filename> is either absent or has an invalid value",
|
||||
"Invalid document type: <toto,6>",
|
||||
]
|
||||
assert resp.json['err'] == 1
|
||||
assert resp.json['err_desc'] == '%s' % errors
|
||||
|
|
|
@ -6,7 +6,7 @@ import pytest
|
|||
import tests.utils
|
||||
from passerelle.apps.feeds.models import Feed
|
||||
|
||||
FEED_EXAMPLE = u"""<?xml version="1.0" encoding="UTF-8"?>
|
||||
FEED_EXAMPLE = """<?xml version="1.0" encoding="UTF-8"?>
|
||||
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/">
|
||||
<title>Actualités de Strasbourg</title>
|
||||
<link rel="alternate" href="http://www.strasbourg.eu/fr/actualites/-/asset_publisher/lG7u/rss" />
|
||||
|
|
|
@ -79,7 +79,7 @@ def test_gdema_services_and_typologies(app, gdema):
|
|||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 3
|
||||
assert resp.json['data'][0]['id'] == '16151'
|
||||
assert resp.json['data'][0]['text'] == u'DMT - Mobilité et transports'
|
||||
assert resp.json['data'][0]['text'] == 'DMT - Mobilité et transports'
|
||||
|
||||
resp = app.get(endpoint + '/typology/', status=200)
|
||||
assert requests_get.call_count == 2
|
||||
|
@ -87,11 +87,11 @@ def test_gdema_services_and_typologies(app, gdema):
|
|||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 12
|
||||
assert resp.json['data'][0]['id'] == '13067'
|
||||
assert resp.json['data'][0]['text'] == u'Maintenance Cie'
|
||||
assert resp.json['data'][0]['text'] == 'Maintenance Cie'
|
||||
assert resp.json['data'][0]['service_id'] == '10173'
|
||||
assert (
|
||||
resp.json['data'][0]['service_text']
|
||||
== u'DESPU - Administration Direction environnement et services publics urbains'
|
||||
== 'DESPU - Administration Direction environnement et services publics urbains'
|
||||
)
|
||||
|
||||
resp = app.get(endpoint + '/typology/?service_id=10426', status=200)
|
||||
|
@ -100,9 +100,9 @@ def test_gdema_services_and_typologies(app, gdema):
|
|||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 7
|
||||
assert resp.json['data'][0]['id'] == '10804'
|
||||
assert resp.json['data'][0]['text'] == u'Activités périscolaires'
|
||||
assert resp.json['data'][0]['text'] == 'Activités périscolaires'
|
||||
assert resp.json['data'][0]['service_id'] == '10426'
|
||||
assert resp.json['data'][0]['service_text'] == u'DEE - Périscolaire et éducatif'
|
||||
assert resp.json['data'][0]['service_text'] == 'DEE - Périscolaire et éducatif'
|
||||
|
||||
|
||||
def test_gdema_referentiel(app, gdema):
|
||||
|
@ -143,7 +143,7 @@ def test_gdema_get_request(app, gdema):
|
|||
assert resp.json['err'] == 0
|
||||
assert resp.json['data']['Id'] == '1'
|
||||
assert resp.json['data']['AnswerToProvide'] is True
|
||||
assert resp.json['data']['Description'].startswith(u'contrôle')
|
||||
assert resp.json['data']['Description'].startswith('contrôle')
|
||||
assert resp.json['data']['ExpectedDate'] is None
|
||||
assert resp.json['data']['Files'] == []
|
||||
assert resp.json['data']['Handler']['CivilityId'] == '0'
|
||||
|
@ -158,7 +158,7 @@ def test_gdema_get_request(app, gdema):
|
|||
assert requests_get.call_args[0][0] == 'https://gdema.example.net/api/request/1/state'
|
||||
assert 'data' in resp.json
|
||||
assert resp.json['err'] == 0
|
||||
assert resp.json['data'] == {'Id': '1', 'State': '64', 'StateLabel': u'Cloturée'}
|
||||
assert resp.json['data'] == {'Id': '1', 'State': '64', 'StateLabel': 'Cloturée'}
|
||||
|
||||
|
||||
def test_gdema_create_request(app, gdema):
|
||||
|
|
|
@ -128,13 +128,13 @@ def test_proxy_logger(mocked_get, caplog, app, arcgis):
|
|||
assert record.levelno == 20
|
||||
assert record.levelname == 'INFO'
|
||||
assert record.name == 'passerelle.resource.arcgis.test'
|
||||
assert u"endpoint GET /arcgis/test/mapservice-query?" in record.message
|
||||
assert "endpoint GET /arcgis/test/mapservice-query?" in record.message
|
||||
assert not hasattr(record, 'connector_result')
|
||||
record = caplog.records[1]
|
||||
assert record.levelno == 10
|
||||
assert record.levelname == 'DEBUG'
|
||||
assert record.name == 'passerelle.resource.arcgis.test'
|
||||
assert u"endpoint GET /arcgis/test/mapservice-query?" in record.message
|
||||
assert "endpoint GET /arcgis/test/mapservice-query?" in record.message
|
||||
assert hasattr(record, 'connector_result')
|
||||
|
||||
data = resp.json['data']
|
||||
|
@ -434,7 +434,7 @@ def test_endpoint_decorator_pre_process(db, app):
|
|||
with patch_init, patch_object:
|
||||
resp = app.post_json(url_foo, params=payload, status=400)
|
||||
assert resp.json['err'] == 1
|
||||
assert resp.json['err_desc'] == "foo/1/id: None is not of type %s" % repr(u'integer')
|
||||
assert resp.json['err_desc'] == "foo/1/id: None is not of type %s" % repr('integer')
|
||||
with patch_init, patch_object:
|
||||
resp = app.post_json(url_bar, params=payload)
|
||||
assert resp.json['err'] == 0
|
||||
|
|
|
@ -226,8 +226,8 @@ def test_demand_creation_params(app, setup):
|
|||
with mock.patch('passerelle.utils.Request.post') as request_post:
|
||||
request_post.return_value = get_typo_response()
|
||||
payload = BASIC_PAYLOAD.copy()
|
||||
payload['intervention_free_address'] = u'169, rue du Château'
|
||||
payload['applicant_free_address'] = u'1, rue de l\'Est'
|
||||
payload['intervention_free_address'] = '169, rue du Château'
|
||||
payload['applicant_free_address'] = '1, rue de l\'Est'
|
||||
app.post_json(
|
||||
reverse(
|
||||
'generic-endpoint',
|
||||
|
@ -235,11 +235,11 @@ def test_demand_creation_params(app, setup):
|
|||
),
|
||||
params=payload,
|
||||
)
|
||||
assert request_post.call_args[1]['data']['int_adresse_manuelle'] == u'169, rue du Château'
|
||||
assert request_post.call_args[1]['data']['dem_adresse_manuelle'] == u'1, rue de l\'Est'
|
||||
assert request_post.call_args[1]['data']['int_adresse_manuelle'] == '169, rue du Château'
|
||||
assert request_post.call_args[1]['data']['dem_adresse_manuelle'] == '1, rue de l\'Est'
|
||||
assert request_post.call_args[1]['data']['obs_demande_urgente'] == 1
|
||||
assert request_post.call_args[1]['data']['dem_comp'] == 'Voirie'
|
||||
assert request_post.call_args[1]['data']['dem_pav'] == u'déchetterie'
|
||||
assert request_post.call_args[1]['data']['dem_pav'] == 'déchetterie'
|
||||
assert request_post.call_args[1]['data']['dem_reponse'] == 0
|
||||
assert request_post.call_args[1]['data']['obs_description_probleme'] == 'thank you '
|
||||
|
||||
|
|
|
@ -52,8 +52,8 @@ def test_checkdate_dechet_or_encombrant(app, setup, endpoint_dummy_cache):
|
|||
)
|
||||
json_result = response.json_body
|
||||
assert json_result['err'] == 1
|
||||
assert u'DECHET' in json_result['err_desc']
|
||||
assert u'ENCOMBRANT' in json_result['err_desc']
|
||||
assert 'DECHET' in json_result['err_desc']
|
||||
assert 'ENCOMBRANT' in json_result['err_desc']
|
||||
|
||||
|
||||
def test_checkdate_sti_code_optionnal_last_char(app, setup, endpoint_dummy_cache, monkeypatch):
|
||||
|
|
|
@ -321,7 +321,7 @@ def test_create_demand(mocked_post, app, setup):
|
|||
'companyLocation': {'number': '', 'road': '', 'zipCode': '', 'city': ''},
|
||||
'pictures': [],
|
||||
'subType': '/api/sub_types/164',
|
||||
'sourceContact': {'firstname': 'Foo', 'mail': 'foo@example.net', 'lastname': u'Bar'},
|
||||
'sourceContact': {'firstname': 'Foo', 'mail': 'foo@example.net', 'lastname': 'Bar'},
|
||||
}
|
||||
assert response.json['data'] == json.loads(DEMAND_CREATION_RESPONSE)
|
||||
assert mocked_post.call_count == 2
|
||||
|
|
|
@ -1686,7 +1686,7 @@ def test_okina_classes(app, okina):
|
|||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 4
|
||||
assert resp.json['data'][0]['id'] == '1'
|
||||
assert resp.json['data'][0]['text'] == u'École maternelle - Petite section'
|
||||
assert resp.json['data'][0]['text'] == 'École maternelle - Petite section'
|
||||
|
||||
|
||||
def test_okina_institutions(app, okina):
|
||||
|
@ -1700,7 +1700,7 @@ def test_okina_institutions(app, okina):
|
|||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 2
|
||||
assert resp.json['data'][0]['id'] == '277'
|
||||
assert resp.json['data'][0]['text'] == u'Collège Touvent'
|
||||
assert resp.json['data'][0]['text'] == 'Collège Touvent'
|
||||
assert resp.json['data'][0]['lat'] == '46.791332586468016'
|
||||
assert resp.json['data'][0]['lon'] == '1.6926355997775921'
|
||||
|
||||
|
@ -1711,7 +1711,7 @@ def test_okina_institutions(app, okina):
|
|||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 2
|
||||
assert resp.json['data'][0]['id'] == '277'
|
||||
assert resp.json['data'][0]['text'] == u'Collège Touvent'
|
||||
assert resp.json['data'][0]['text'] == 'Collège Touvent'
|
||||
|
||||
resp = app.get(endpoint + '/from-city/36005/', status=200)
|
||||
assert (
|
||||
|
@ -1721,7 +1721,7 @@ def test_okina_institutions(app, okina):
|
|||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 2
|
||||
assert resp.json['data'][0]['id'] == '277'
|
||||
assert resp.json['data'][0]['text'] == u'Collège Touvent'
|
||||
assert resp.json['data'][0]['text'] == 'Collège Touvent'
|
||||
|
||||
|
||||
def test_okina_search(app, okina):
|
||||
|
@ -1783,7 +1783,7 @@ def test_okina_stops_area(app, okina):
|
|||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 3
|
||||
assert resp.json['data'][0]['id'] == '3281'
|
||||
assert resp.json['data'][0]['text'] == u'Les Loges de Dressais'
|
||||
assert resp.json['data'][0]['text'] == 'Les Loges de Dressais'
|
||||
|
||||
|
||||
def test_okina_ods(app, okina):
|
||||
|
@ -1846,7 +1846,7 @@ def test_okina_ods(app, okina):
|
|||
assert len(resp.json['data']) == 1
|
||||
assert resp.json['data'][0]['id'] == 'inst:276-seq:1-6-84'
|
||||
assert (
|
||||
resp.json['data'][0]['text'] == u'Brenne 1 vers écoles Antoine Fée, Saint Martin et Saint Vincent'
|
||||
resp.json['data'][0]['text'] == 'Brenne 1 vers écoles Antoine Fée, Saint Martin et Saint Vincent'
|
||||
)
|
||||
assert resp.json['data'][0]['identifier'] == 'SYNDICAT ARDENTES 4 (semaine Aller)'
|
||||
assert resp.json['data'][0]['vehicle_journey_id'] == '84'
|
||||
|
@ -1858,7 +1858,7 @@ def test_okina_ods(app, okina):
|
|||
assert len(resp.json['data']) == 1
|
||||
assert resp.json['data'][0]['id'] == 'inst:276-seq:1-6-84'
|
||||
assert (
|
||||
resp.json['data'][0]['text'] == u'Brenne 1 vers écoles Antoine Fée, Saint Martin et Saint Vincent'
|
||||
resp.json['data'][0]['text'] == 'Brenne 1 vers écoles Antoine Fée, Saint Martin et Saint Vincent'
|
||||
)
|
||||
assert resp.json['data'][0]['identifier'] == 'SYNDICAT ARDENTES 4 (semaine Aller)'
|
||||
assert resp.json['data'][0]['vehicle_journey_id'] == '84'
|
||||
|
@ -1882,7 +1882,7 @@ def test_okina_topology(app, okina):
|
|||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 1
|
||||
assert resp.json['data'][0]['id'] == '2'
|
||||
assert resp.json['data'][0]['text'] == u'réseau scolaire'
|
||||
assert resp.json['data'][0]['text'] == 'réseau scolaire'
|
||||
|
||||
requests_get.return_value = tests.utils.FakedResponse(content=VEHICLE_JOURNEYS, status_code=200)
|
||||
resp = app.get(endpoint + '/vehicle-journeys/', status=200)
|
||||
|
@ -1890,7 +1890,7 @@ def test_okina_topology(app, okina):
|
|||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 3
|
||||
assert resp.json['data'][0]['id'] == '306'
|
||||
assert resp.json['data'][0]['text'] == u'019 02 - VELLES LYCEES DE CHATEAUROUX'
|
||||
assert resp.json['data'][0]['text'] == '019 02 - VELLES LYCEES DE CHATEAUROUX'
|
||||
|
||||
|
||||
def test_okina_errors(app, okina):
|
||||
|
|
|
@ -50,7 +50,7 @@ FAKED_CONTENT_Q_SEARCH = json.dumps(
|
|||
"nom_rue": "RUE DE L'AUBEPINE",
|
||||
"num_com": 482,
|
||||
"numero": "33",
|
||||
"source": u"Ville et Eurométropole de Strasbourg",
|
||||
"source": "Ville et Eurométropole de Strasbourg",
|
||||
},
|
||||
"geometry": {"coordinates": [7.76978279836, 48.6060963542], "type": "Point"},
|
||||
"record_timestamp": "2019-12-02T14:15:08.376000+00:00",
|
||||
|
@ -66,7 +66,7 @@ FAKED_CONTENT_Q_SEARCH = json.dumps(
|
|||
"nom_rue": "RUE DE L'AUBEPINE",
|
||||
"num_com": 268,
|
||||
"numero": "19",
|
||||
"source": u"Ville et Eurométropole de Strasbourg",
|
||||
"source": "Ville et Eurométropole de Strasbourg",
|
||||
},
|
||||
"geometry": {"coordinates": [7.66177412454, 48.4920620548], "type": "Point"},
|
||||
"record_timestamp": "2019-12-02T14:15:08.376000+00:00",
|
||||
|
@ -82,7 +82,7 @@ FAKED_CONTENT_Q_SEARCH = json.dumps(
|
|||
"nom_rue": "RUE DE L'AUBEPINE",
|
||||
"num_com": 482,
|
||||
"numero": "29",
|
||||
"source": u"Ville et Eurométropole de Strasbourg",
|
||||
"source": "Ville et Eurométropole de Strasbourg",
|
||||
},
|
||||
"geometry": {"coordinates": [7.76988497729, 48.6056497224], "type": "Point"},
|
||||
"record_timestamp": "2019-12-02T14:15:08.376000+00:00",
|
||||
|
@ -113,7 +113,7 @@ FAKED_CONTENT_ID_SEARCH = json.dumps(
|
|||
"nom_rue": "RUE DE L'AUBEPINE",
|
||||
"num_com": 268,
|
||||
"numero": "19",
|
||||
u"source": "Ville et Eurométropole de Strasbourg",
|
||||
"source": "Ville et Eurométropole de Strasbourg",
|
||||
},
|
||||
"geometry": {"coordinates": [7.66177412454, 48.4920620548], "type": "Point"},
|
||||
"record_timestamp": "2019-12-02T14:15:08.376000+00:00",
|
||||
|
|
|
@ -142,7 +142,7 @@ FAKE_FEATURES_JSON = '''
|
|||
"type": "FeatureCollection"
|
||||
}'''
|
||||
|
||||
FAKE_ERROR = u'''<ows:ExceptionReport
|
||||
FAKE_ERROR = '''<ows:ExceptionReport
|
||||
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
||||
xmlns:ows="http://www.opengis.net/ows/1.1"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
|
|
|
@ -147,7 +147,7 @@ def test_photon_search_qs_parameters_error(app, photon, mock_photon_search):
|
|||
resp = app.get('/photon/%s/search' % photon.slug, status=400)
|
||||
assert resp.json['err'] == 1
|
||||
assert resp.json['err_class'] == 'passerelle.views.WrongParameter'
|
||||
assert resp.json['err_desc'] == u"missing parameters: 'q'."
|
||||
assert resp.json['err_desc'] == "missing parameters: 'q'."
|
||||
|
||||
|
||||
@mock.patch('passerelle.utils.Request.get')
|
||||
|
|
|
@ -520,9 +520,9 @@ def test_getplaces_referential(app, connector, monkeypatch):
|
|||
'some_custom_field': None,
|
||||
},
|
||||
'3': {
|
||||
u'capacity': 30,
|
||||
u'label': u'salle 3',
|
||||
u'identifier': 3,
|
||||
'capacity': 30,
|
||||
'label': 'salle 3',
|
||||
'identifier': 3,
|
||||
'street_number': None,
|
||||
'address': None,
|
||||
'city': None,
|
||||
|
@ -530,9 +530,9 @@ def test_getplaces_referential(app, connector, monkeypatch):
|
|||
'some_custom_field': 'Yes',
|
||||
},
|
||||
'2': {
|
||||
u'capacity': 20,
|
||||
u'label': u'salle 2',
|
||||
u'identifier': 2,
|
||||
'capacity': 20,
|
||||
'label': 'salle 2',
|
||||
'identifier': 2,
|
||||
'street_number': None,
|
||||
'address': None,
|
||||
'city': None,
|
||||
|
@ -540,9 +540,9 @@ def test_getplaces_referential(app, connector, monkeypatch):
|
|||
'some_custom_field': 'Yes',
|
||||
},
|
||||
'1': {
|
||||
u'capacity': 10,
|
||||
u'label': u'salle 1',
|
||||
u'identifier': 1,
|
||||
'capacity': 10,
|
||||
'label': 'salle 1',
|
||||
'identifier': 1,
|
||||
'street_number': 1,
|
||||
'address': 'rue planitech',
|
||||
'city': 'thecity',
|
||||
|
@ -557,9 +557,9 @@ def test_getplaces_referential(app, connector, monkeypatch):
|
|||
response = app.get('/planitech/slug-planitech/getplacesreferential?some_custom_field=Yes')
|
||||
assert response.json['data'] == {
|
||||
'3': {
|
||||
u'capacity': 30,
|
||||
u'label': u'salle 3',
|
||||
u'identifier': 3,
|
||||
'capacity': 30,
|
||||
'label': 'salle 3',
|
||||
'identifier': 3,
|
||||
'street_number': None,
|
||||
'address': None,
|
||||
'city': None,
|
||||
|
@ -567,9 +567,9 @@ def test_getplaces_referential(app, connector, monkeypatch):
|
|||
'some_custom_field': 'Yes',
|
||||
},
|
||||
'2': {
|
||||
u'capacity': 20,
|
||||
u'label': u'salle 2',
|
||||
u'identifier': 2,
|
||||
'capacity': 20,
|
||||
'label': 'salle 2',
|
||||
'identifier': 2,
|
||||
'street_number': None,
|
||||
'address': None,
|
||||
'city': None,
|
||||
|
@ -585,9 +585,9 @@ def test_getplaces_referential(app, connector, monkeypatch):
|
|||
)
|
||||
assert response.json['data'] == {
|
||||
'3': {
|
||||
u'capacity': 30,
|
||||
u'label': u'salle 3',
|
||||
u'identifier': 3,
|
||||
'capacity': 30,
|
||||
'label': 'salle 3',
|
||||
'identifier': 3,
|
||||
'street_number': None,
|
||||
'address': None,
|
||||
'city': None,
|
||||
|
@ -610,9 +610,9 @@ def test_getplaces_referential(app, connector, monkeypatch):
|
|||
'some_custom_field': None,
|
||||
},
|
||||
'3': {
|
||||
u'capacity': 30,
|
||||
u'label': u'salle 3',
|
||||
u'identifier': 3,
|
||||
'capacity': 30,
|
||||
'label': 'salle 3',
|
||||
'identifier': 3,
|
||||
'street_number': None,
|
||||
'address': None,
|
||||
'city': None,
|
||||
|
@ -620,9 +620,9 @@ def test_getplaces_referential(app, connector, monkeypatch):
|
|||
'some_custom_field': 'Yes',
|
||||
},
|
||||
'2': {
|
||||
u'capacity': 20,
|
||||
u'label': u'salle 2',
|
||||
u'identifier': 2,
|
||||
'capacity': 20,
|
||||
'label': 'salle 2',
|
||||
'identifier': 2,
|
||||
'street_number': None,
|
||||
'address': None,
|
||||
'city': None,
|
||||
|
@ -630,9 +630,9 @@ def test_getplaces_referential(app, connector, monkeypatch):
|
|||
'some_custom_field': 'Yes',
|
||||
},
|
||||
'1': {
|
||||
u'capacity': 10,
|
||||
u'label': u'salle 1',
|
||||
u'identifier': 1,
|
||||
'capacity': 10,
|
||||
'label': 'salle 1',
|
||||
'identifier': 1,
|
||||
'street_number': 1,
|
||||
'address': 'rue planitech',
|
||||
'city': 'thecity',
|
||||
|
@ -665,9 +665,9 @@ def test_getplace(app, connector, monkeypatch):
|
|||
mock_planitech(monkeypatch, side_effect=side_effect)
|
||||
response = app.get('/planitech/slug-planitech/getplace?id=2')
|
||||
assert response.json['data'] == {
|
||||
u'capacity': 20,
|
||||
u'label': u'salle 2',
|
||||
u'identifier': 2,
|
||||
'capacity': 20,
|
||||
'label': 'salle 2',
|
||||
'identifier': 2,
|
||||
'street_number': None,
|
||||
'address': None,
|
||||
'city': None,
|
||||
|
@ -715,18 +715,18 @@ def test_getplaces_referential_no_configuration(app, connector, monkeypatch):
|
|||
response = app.get('/planitech/slug-planitech/getplacesreferential')
|
||||
expected_res = {
|
||||
'2': {
|
||||
u'capacity': 20,
|
||||
u'label': u'salle 2',
|
||||
u'identifier': 2,
|
||||
'capacity': 20,
|
||||
'label': 'salle 2',
|
||||
'identifier': 2,
|
||||
'street_number': None,
|
||||
'address': None,
|
||||
'city': None,
|
||||
'zipcode': None,
|
||||
},
|
||||
'1': {
|
||||
u'capacity': 10,
|
||||
u'label': u'salle 1',
|
||||
u'identifier': 1,
|
||||
'capacity': 10,
|
||||
'label': 'salle 1',
|
||||
'identifier': 1,
|
||||
'street_number': 1,
|
||||
'address': 'rue planitech',
|
||||
'city': 'thecity',
|
||||
|
@ -813,14 +813,14 @@ def test_get_reservations_infos(app, connector, monkeypatch):
|
|||
def freegaps_data():
|
||||
referential = collections.OrderedDict(
|
||||
[
|
||||
(1.0, {u'capacity': 10.0, u'label': u'salle 1', u'identifier': 1.0}),
|
||||
(1.0, {'capacity': 10.0, 'label': 'salle 1', 'identifier': 1.0}),
|
||||
(
|
||||
2.0,
|
||||
{u'capacity': 20.0, u'label': u'salle 2', u'identifier': 2.0, u'some_custom_field': u'Yes'},
|
||||
{'capacity': 20.0, 'label': 'salle 2', 'identifier': 2.0, 'some_custom_field': 'Yes'},
|
||||
),
|
||||
(
|
||||
3.0,
|
||||
{u'capacity': 30.0, u'label': u'salle 3', u'identifier': 3.0, u'some_custom_field': u'Yes'},
|
||||
{'capacity': 30.0, 'label': 'salle 3', 'identifier': 3.0, 'some_custom_field': 'Yes'},
|
||||
),
|
||||
]
|
||||
)
|
||||
|
@ -868,9 +868,9 @@ def test_get_freegaps(app, connector, monkeypatch, settings):
|
|||
'&start_date=2018-11-11&display=date'
|
||||
)
|
||||
assert response.json['data'] == [
|
||||
{u'id': u'2018-11-11', u'text': u'dimanche 11 novembre 2018', u'short_text': '11/11/2018'},
|
||||
{u'id': u'2018-11-12', u'text': u'lundi 12 novembre 2018', u'short_text': '12/11/2018'},
|
||||
{u'id': u'2018-11-13', u'text': u'mardi 13 novembre 2018', u'short_text': '13/11/2018'},
|
||||
{'id': '2018-11-11', 'text': 'dimanche 11 novembre 2018', 'short_text': '11/11/2018'},
|
||||
{'id': '2018-11-12', 'text': 'lundi 12 novembre 2018', 'short_text': '12/11/2018'},
|
||||
{'id': '2018-11-13', 'text': 'mardi 13 novembre 2018', 'short_text': '13/11/2018'},
|
||||
]
|
||||
|
||||
# place display
|
||||
|
@ -878,7 +878,7 @@ def test_get_freegaps(app, connector, monkeypatch, settings):
|
|||
'/planitech/slug-planitech/getfreegaps?start_time=10:00&&end_time=11:00'
|
||||
'&start_date=2018-11-11&display=place'
|
||||
)
|
||||
assert response.json['data'] == [{u'id': 1.0, u'text': u'salle 1'}, {u'id': 2.0, u'text': u'salle 2'}]
|
||||
assert response.json['data'] == [{'id': 1.0, 'text': 'salle 1'}, {'id': 2.0, 'text': 'salle 2'}]
|
||||
|
||||
# full display
|
||||
response = app.get(
|
||||
|
@ -893,29 +893,29 @@ def test_get_freegaps(app, connector, monkeypatch, settings):
|
|||
|
||||
place_1 = full[0]
|
||||
assert place_1['id'] == 1.0
|
||||
assert place_1['text'] == u'salle 1'
|
||||
assert place_1['text'] == 'salle 1'
|
||||
assert place_1['dates'] == [
|
||||
{u'available': True, u'id': u'2018-11-11'},
|
||||
{u'available': True, u'id': u'2018-11-12'},
|
||||
{u'available': False, u'id': u'2018-11-13'},
|
||||
{'available': True, 'id': '2018-11-11'},
|
||||
{'available': True, 'id': '2018-11-12'},
|
||||
{'available': False, 'id': '2018-11-13'},
|
||||
]
|
||||
|
||||
place_2 = full[1]
|
||||
assert place_2['id'] == 2.0
|
||||
assert place_2['text'] == u'salle 2'
|
||||
assert place_2['text'] == 'salle 2'
|
||||
assert place_2['dates'] == [
|
||||
{u'available': True, u'id': u'2018-11-11'},
|
||||
{u'available': True, u'id': u'2018-11-12'},
|
||||
{u'available': True, u'id': u'2018-11-13'},
|
||||
{'available': True, 'id': '2018-11-11'},
|
||||
{'available': True, 'id': '2018-11-12'},
|
||||
{'available': True, 'id': '2018-11-13'},
|
||||
]
|
||||
|
||||
place_3 = full[2]
|
||||
assert place_3['id'] == 3.0
|
||||
assert place_3['text'] == u'salle 3'
|
||||
assert place_3['text'] == 'salle 3'
|
||||
assert place_3['dates'] == [
|
||||
{u'available': False, u'id': u'2018-11-11'},
|
||||
{u'available': False, u'id': u'2018-11-12'},
|
||||
{u'available': False, u'id': u'2018-11-13'},
|
||||
{'available': False, 'id': '2018-11-11'},
|
||||
{'available': False, 'id': '2018-11-12'},
|
||||
{'available': False, 'id': '2018-11-13'},
|
||||
]
|
||||
|
||||
# general params interpretation
|
||||
|
|
|
@ -43,39 +43,39 @@ def email_handler():
|
|||
|
||||
def test_proxy_logger_basic(db, connector):
|
||||
pr = ProxyLogger(connector)
|
||||
pr.debug(u'some message')
|
||||
pr.debug('some message')
|
||||
rl_query = ResourceLog.objects.all()
|
||||
assert len(rl_query) == 1
|
||||
rl = rl_query.first()
|
||||
assert rl.message == u'some message'
|
||||
assert rl.message == 'some message'
|
||||
assert rl.levelno == logging.DEBUG
|
||||
assert rl.appname == u'feeds'
|
||||
assert rl.slug == u'some-slug'
|
||||
assert rl.appname == 'feeds'
|
||||
assert rl.slug == 'some-slug'
|
||||
|
||||
|
||||
def test_proxy_logger_std_interpolation(db, connector):
|
||||
ResourceLog.objects.all().delete()
|
||||
pr = ProxyLogger(connector)
|
||||
pr.debug(u'some message %s', u'some var')
|
||||
pr.debug('some message %s', 'some var')
|
||||
rl_query = ResourceLog.objects.all()
|
||||
rl = rl_query.first()
|
||||
assert rl.message == u'some message some var'
|
||||
assert rl.message == 'some message some var'
|
||||
|
||||
|
||||
def test_proxy_logger_dict_interpolation(db, connector):
|
||||
ResourceLog.objects.all().delete()
|
||||
pr = ProxyLogger(connector)
|
||||
pr.debug(u'some message %(var_name)s', {u'var_name': u'some var'})
|
||||
pr.debug('some message %(var_name)s', {'var_name': 'some var'})
|
||||
rl_query = ResourceLog.objects.all()
|
||||
rl = rl_query.first()
|
||||
assert rl.message == u'some message some var'
|
||||
assert rl.message == 'some message some var'
|
||||
|
||||
|
||||
def test_proxy_logger_ignore(db, connector):
|
||||
ResourceLog.objects.all().delete()
|
||||
connector.set_log_level('INFO')
|
||||
pr = ProxyLogger(connector)
|
||||
pr.debug(u'some message')
|
||||
pr.debug('some message')
|
||||
assert len(ResourceLog.objects.all()) == 0
|
||||
|
||||
|
||||
|
@ -85,7 +85,7 @@ def test_proxy_logger_ignore_when_down(db, connector):
|
|||
assert connector.down() is True
|
||||
ResourceLog.objects.all().delete()
|
||||
pr = ProxyLogger(connector)
|
||||
pr.debug(u'some message')
|
||||
pr.debug('some message')
|
||||
assert len(ResourceLog.objects.all()) == 0
|
||||
|
||||
|
||||
|
@ -181,7 +181,7 @@ def test_validate_notification_delays(db, connector):
|
|||
|
||||
@pytest.mark.parametrize('notification_delays', ['0', '0,5,100', '5,100'])
|
||||
def test_log_on_connector_availability_change(db, connector, freezer, notification_delays):
|
||||
connector.title = u'éléphant'
|
||||
connector.title = 'éléphant'
|
||||
availability_parameters = connector.availability_parameters
|
||||
availability_parameters.notification_delays = notification_delays
|
||||
availability_parameters.save()
|
||||
|
@ -203,7 +203,7 @@ def test_log_on_connector_availability_change(db, connector, freezer, notificati
|
|||
assert last_count1 == 2
|
||||
assert ResourceLog.objects.all()[0].message == 'GET http://example.net/ (=> 404)'
|
||||
assert ResourceLog.objects.all()[1].level == 'error' if notification_delays.startswith('0') else 'warning'
|
||||
assert u'connector "éléphant" (Feed) is now down: 404 Client' in ResourceLog.objects.all()[1].message
|
||||
assert 'connector "éléphant" (Feed) is now down: 404 Client' in ResourceLog.objects.all()[1].message
|
||||
|
||||
# move 5 minutes in the future
|
||||
freezer.move_to(datetime.timedelta(seconds=60 * 5 + 1))
|
||||
|
@ -219,7 +219,7 @@ def test_log_on_connector_availability_change(db, connector, freezer, notificati
|
|||
assert last_count2 == last_count1 + 1
|
||||
assert ResourceLog.objects.all()[2].level == 'error' if notification_delays != '0' else 'warning'
|
||||
assert (
|
||||
u'connector "éléphant" (Feed) has been down for 5 minutes: 404'
|
||||
'connector "éléphant" (Feed) has been down for 5 minutes: 404'
|
||||
in ResourceLog.objects.all()[2].message
|
||||
)
|
||||
|
||||
|
@ -240,7 +240,7 @@ def test_log_on_connector_availability_change(db, connector, freezer, notificati
|
|||
last_count3 = ResourceLog.objects.count()
|
||||
assert last_count3 == last_count2 + 1
|
||||
assert ResourceLog.objects.latest('id').level == 'info'
|
||||
assert ResourceLog.objects.latest('id').message == u'connector "éléphant" (Feed) is back up'
|
||||
assert ResourceLog.objects.latest('id').message == 'connector "éléphant" (Feed) is back up'
|
||||
|
||||
# move 3 minutes in the future
|
||||
freezer.move_to(datetime.timedelta(seconds=60 * 3 + 1))
|
||||
|
|
|
@ -466,12 +466,12 @@ def test_log_http_request(caplog):
|
|||
del extra['request_headers']['User-Agent']
|
||||
assert extra == {
|
||||
'request_headers': {
|
||||
u'Accept': u'*/*',
|
||||
u'Accept-Encoding': u'gzip, deflate, br',
|
||||
u'Connection': u'keep-alive',
|
||||
'Accept': '*/*',
|
||||
'Accept-Encoding': 'gzip, deflate, br',
|
||||
'Connection': 'keep-alive',
|
||||
},
|
||||
'request_url': 'https://example.com/',
|
||||
'response_headers': {u'Error Webservice': u'\ufffd'},
|
||||
'response_headers': {'Error Webservice': '\ufffd'},
|
||||
'response_status': 200,
|
||||
}
|
||||
|
||||
|
|
|
@ -33,8 +33,8 @@ def test_signature():
|
|||
assert '&nonce=' in signature.sign_url(URL, KEY)
|
||||
|
||||
# Test unicode key conversion to UTF-8
|
||||
assert signature.check_url(signature.sign_url(URL, u'\xe9\xe9'), b'\xc3\xa9\xc3\xa9')
|
||||
assert signature.check_url(signature.sign_url(URL, b'\xc3\xa9\xc3\xa9'), u'\xe9\xe9')
|
||||
assert signature.check_url(signature.sign_url(URL, '\xe9\xe9'), b'\xc3\xa9\xc3\xa9')
|
||||
assert signature.check_url(signature.sign_url(URL, b'\xc3\xa9\xc3\xa9'), '\xe9\xe9')
|
||||
|
||||
# Test timedelta parameter
|
||||
now = datetime.datetime.utcnow()
|
||||
|
|
|
@ -68,7 +68,7 @@ def test_disable_strict_mode(mocked_post):
|
|||
|
||||
soap_resource = SOAPResource()
|
||||
client = SOAPClient(soap_resource)
|
||||
match = "Unexpected element %s, expected %s" % (repr(u'price'), repr(u'skipMe'))
|
||||
match = "Unexpected element %s, expected %s" % (repr('price'), repr('skipMe'))
|
||||
with pytest.raises(XMLParseError, match=match):
|
||||
client.service.GetLastTradePrice(tickerSymbol='banana')
|
||||
|
||||
|
|
|
@ -145,7 +145,7 @@ def test_solis_ping(app, solis, ping_response):
|
|||
resp = app.get(endpoint, status=200)
|
||||
assert resp.json['err'] == 0
|
||||
assert resp.json['data'] == 'pong'
|
||||
assert resp.json['response'] == u'Solis API est opérationnel.'
|
||||
assert resp.json['response'] == 'Solis API est opérationnel.'
|
||||
|
||||
assert requests_get.call_args[1]['auth'] == ('usertest', 'userpass')
|
||||
assert requests_get.call_args[1]['verify'] is True
|
||||
|
@ -498,18 +498,18 @@ def test_solis_referentiels(app, solis):
|
|||
assert requests_get.call_args[0][0].endswith('/solisapi/referentiels/trans/departement')
|
||||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 1
|
||||
assert resp.json['data'][0]['text'] == u'Ardèche'
|
||||
assert resp.json['data'][0]['text'] == 'Ardèche'
|
||||
|
||||
resp = app.get(url + '/trans/departement/?q=arde', status=200)
|
||||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 2
|
||||
assert (resp.json['data'][0]['text'], resp.json['data'][1]['text']) == (u'Ardèche', 'Ardennes')
|
||||
assert (resp.json['data'][0]['text'], resp.json['data'][1]['text']) == ('Ardèche', 'Ardennes')
|
||||
|
||||
resp = app.get(url + '/trans/departement/?id=7', status=200)
|
||||
assert requests_get.call_args[0][0].endswith('/solisapi/referentiels/trans/departement')
|
||||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 1
|
||||
assert resp.json['data'][0]['text'] == u'Ardèche'
|
||||
assert resp.json['data'][0]['text'] == 'Ardèche'
|
||||
|
||||
resp = app.get(url + '/trans/departement/?id=99', status=200)
|
||||
assert requests_get.call_args[0][0].endswith('/solisapi/referentiels/trans/departement')
|
||||
|
@ -519,7 +519,7 @@ def test_solis_referentiels(app, solis):
|
|||
resp = app.get(url + '/trans/departement/?q=arde&ignore=8', status=200)
|
||||
assert resp.json['err'] == 0
|
||||
assert len(resp.json['data']) == 1
|
||||
assert resp.json['data'][0]['text'] == u'Ardèche'
|
||||
assert resp.json['data'][0]['text'] == 'Ardèche'
|
||||
|
||||
resp = app.get(url + '/trans/departement/?q=arde&ignore=8,, 7', status=200)
|
||||
assert resp.json['err'] == 0
|
||||
|
|
|
@ -8,7 +8,7 @@ import tests.utils
|
|||
from passerelle.base.models import AccessRight, ApiUser
|
||||
from passerelle.contrib.strasbourg_eu.models import StrasbourgEu
|
||||
|
||||
INTERESTS_EXAMPLE = u"""{
|
||||
INTERESTS_EXAMPLE = """{
|
||||
"interests": [
|
||||
{
|
||||
"id": "275305",
|
||||
|
@ -34,14 +34,14 @@ INTERESTS_EXAMPLE = u"""{
|
|||
]
|
||||
}"""
|
||||
|
||||
USER_INTERESTS_EXAMPLE = u"""{
|
||||
USER_INTERESTS_EXAMPLE = """{
|
||||
"userId": "M0cG+MtX8/Zr+zSMuI+H7yTC7SeEHT/tvYr1BsdqZic=",
|
||||
"interests": [
|
||||
"275303"
|
||||
]
|
||||
}"""
|
||||
|
||||
NOTIFICATIONS_EXAMPLE = u"""{
|
||||
NOTIFICATIONS_EXAMPLE = """{
|
||||
"notifications": [
|
||||
{
|
||||
"id": "279201",
|
||||
|
@ -79,17 +79,17 @@ NOTIFICATIONS_EXAMPLE = u"""{
|
|||
]
|
||||
}"""
|
||||
|
||||
SUCCESS_EXAMPLE = u"""{
|
||||
SUCCESS_EXAMPLE = """{
|
||||
"success": "MESSAGE"
|
||||
}"""
|
||||
|
||||
ERROR_EXAMPLE = u"""{
|
||||
ERROR_EXAMPLE = """{
|
||||
"error": "MESSAGE"
|
||||
}"""
|
||||
|
||||
UNAUTHORIZED_EXAMPLE = u"""{"error":"not authorized"}"""
|
||||
UNAUTHORIZED_EXAMPLE = """{"error":"not authorized"}"""
|
||||
|
||||
FAVORITES_EXAMPLE = u"""{
|
||||
FAVORITES_EXAMPLE = """{
|
||||
"favorites": [
|
||||
{
|
||||
"id": "281701",
|
||||
|
@ -110,7 +110,7 @@ FAVORITES_EXAMPLE = u"""{
|
|||
]
|
||||
}"""
|
||||
|
||||
FAVORITE_TYPES_EXAMPLE = u"""{
|
||||
FAVORITE_TYPES_EXAMPLE = """{
|
||||
"types": [
|
||||
{
|
||||
"id": "1",
|
||||
|
@ -188,14 +188,14 @@ def test_interests(app, strasbourg_eu):
|
|||
resp = app.get(endpoint)
|
||||
assert len(resp.json['data']) == 2
|
||||
assert resp.json['data'][0]['id'] == '275303'
|
||||
assert resp.json['data'][0]['text'] == u"Type 1 / Centre d'intérêt 1"
|
||||
assert resp.json['data'][0]['text'] == "Type 1 / Centre d'intérêt 1"
|
||||
assert resp.json['data'][1]['id'] == '275305'
|
||||
assert resp.json['data'][1]['text'] == u"Type 1 / Centre d'intérêt 2"
|
||||
assert resp.json['data'][1]['text'] == "Type 1 / Centre d'intérêt 2"
|
||||
|
||||
resp = app.get(endpoint, params={'name_id': 'xxx'})
|
||||
assert len(resp.json['data']) == 1
|
||||
assert resp.json['data'][0]['id'] == '275303'
|
||||
assert resp.json['data'][0]['text'] == u"Type 1 / Centre d'intérêt 1"
|
||||
assert resp.json['data'][0]['text'] == "Type 1 / Centre d'intérêt 1"
|
||||
|
||||
resp = app.post_json(endpoint, params={})
|
||||
assert resp.json['err_desc'] == 'missing name_id'
|
||||
|
|
|
@ -290,7 +290,7 @@ def test_endpoint_family_view(app, setup):
|
|||
resp = app.get('/teamnet-axel/test/family/', params=params)
|
||||
assert len(resp.json['data']['adults']) == 1
|
||||
assert len(resp.json['data']['children']) == 1
|
||||
assert resp.json['data']['family'] == u'8336'
|
||||
assert resp.json['data']['family'] == '8336'
|
||||
# test filtering
|
||||
resp = app.get('/teamnet-axel/test/family/adults/', params=params)
|
||||
data = resp.json['data']
|
||||
|
|
|
@ -1393,7 +1393,7 @@ def test_pre_sanitize_update_upperize(app, resource, update_params):
|
|||
jsonschema.validate(update_params, json_schema)
|
||||
check_upper(update_params)
|
||||
|
||||
assert upperize(u'something with an accent é') == u'SOMETHING WITH AN ACCENT E'
|
||||
assert upperize('something with an accent é') == 'SOMETHING WITH AN ACCENT E'
|
||||
|
||||
|
||||
def test_pre_sanitize_update_family_data_adresse(app, resource, update_params):
|
||||
|
|
|
@ -250,7 +250,7 @@ def wcs_factory(base_dir, wcs_class=Wcs, **kwargs):
|
|||
|
||||
with open(wcs_cfg_path, 'w') as fd:
|
||||
fd.write(
|
||||
u'''[main]
|
||||
'''[main]
|
||||
app_dir = %s\n'''
|
||||
% tmp_app_dir
|
||||
)
|
||||
|
@ -258,7 +258,7 @@ app_dir = %s\n'''
|
|||
local_settings_path = os.path.join(base_dir, 'local_settings.py')
|
||||
with open(local_settings_path, 'w') as fd:
|
||||
fd.write(
|
||||
u'''
|
||||
'''
|
||||
WCS_LEGACY_CONFIG_FILE = '{base_dir}/wcs.cfg'
|
||||
THEMES_DIRECTORY = '/'
|
||||
ALLOWED_HOSTS = ['*']
|
||||
|
|
|
@ -24,7 +24,7 @@ def test_wcs_fixture(wcs_host):
|
|||
assert wcs_host.url.startswith('http://127.0.0.1:')
|
||||
requests.get(wcs_host.url)
|
||||
response = requests.get(urlparse.urljoin(wcs_host.url, '/api/categories/'))
|
||||
assert response.json()['data'][0]['title'] == u'Catégorie'
|
||||
assert response.json()['data'][0]['title'] == 'Catégorie'
|
||||
|
||||
|
||||
def test_wcs_api(wcs_host):
|
||||
|
|
|
@ -36,7 +36,7 @@ def spfr(settings, wcs_host, db, sftpserver):
|
|||
settings.KNOWN_SERVICES = {
|
||||
'wcs': {
|
||||
'eservices': {
|
||||
'title': u'Démarches',
|
||||
'title': 'Démarches',
|
||||
'url': wcs_host.url,
|
||||
'secret': 'test',
|
||||
'orig': 'test',
|
||||
|
@ -54,7 +54,7 @@ def spfr(settings, wcs_host, db, sftpserver):
|
|||
|
||||
|
||||
def test_resource(spfr):
|
||||
assert [x[1] for x in get_wcs_choices()] == ['---------', u'D\xe9marches - Demande']
|
||||
assert [x[1] for x in get_wcs_choices()] == ['---------', 'D\xe9marches - Demande']
|
||||
|
||||
|
||||
def test_sftp_access(spfr, sftpserver):
|
||||
|
|
Loading…
Reference in New Issue