From 40c1d36c085127d7347483cc8b76feda6b7e2345 Mon Sep 17 00:00:00 2001 From: Benjamin Dauvergne Date: Thu, 24 Jan 2019 15:47:08 +0100 Subject: [PATCH] PEP8 / Python3 compatibility (#29506) --- src/authentic2_cut/api_views.py | 20 +++++++++----------- tests/test_api.py | 2 +- 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/src/authentic2_cut/api_views.py b/src/authentic2_cut/api_views.py index ecb610d..de73147 100644 --- a/src/authentic2_cut/api_views.py +++ b/src/authentic2_cut/api_views.py @@ -26,8 +26,8 @@ from django.db import IntegrityError from django.core.exceptions import ValidationError from rest_framework.generics import ListAPIView -from rest_framework import serializers, pagination, permissions -from rest_framework.decorators import list_route, detail_route +from rest_framework import serializers, pagination +from rest_framework.decorators import detail_route from rest_framework.response import Response from rest_framework import status @@ -41,15 +41,15 @@ from . import models class Base64ImageField(serializers.FileField): def to_internal_value(self, data): - # base64 encoded image - decode - if not isinstance(data, unicode): + # "unicode/str Python3" data, means base64 encoded image - decode + if not hasattr(data, 'isdecimal'): raise ValidationError('must be base64 string') - id = uuid.uuid4() try: content = base64.b64decode(data) - except: + except ValueError: raise ValidationError('invalid base64') - data = ContentFile(content, name = id.urn[9:] + '.jpg') + identifier = uuid.uuid4() + data = ContentFile(content, name=identifier.urn[9:] + '.jpg') return super(Base64ImageField, self).to_internal_value(data) @@ -90,7 +90,8 @@ class CUTValidateSerializer(serializers.ModelSerializer): fields = ('id', 'created', 'external_id', 'status', 'reason', 'validated', 'sub') -@detail_route(methods=['get', 'post'], url_path='validate', permission_classes=(api_views.DjangoPermission('custom_user.cut_validate_user'),)) +@detail_route(methods=['get', 'post'], url_path='validate', + permission_classes=(api_views.DjangoPermission('custom_user.cut_validate_user'),)) def validate_cut(self, request, uuid): user = self.get_object() origin = get_origin(request) @@ -162,9 +163,6 @@ def validate_cut(self, request, uuid): # attach new API to users' api api_views.UsersAPI.validate_cut = validate_cut -# re-register UsersAPI to get validate_cut -#api_views.router.register(r'users', api_views.UsersAPI, base_name='a2-api-users') - class ValidateFilter(FilterSet): class Meta: diff --git a/tests/test_api.py b/tests/test_api.py index 3c7647a..dfbf495 100644 --- a/tests/test_api.py +++ b/tests/test_api.py @@ -1,7 +1,7 @@ # -*- coding: utf-8 -*- JOHN = u'Jôhn' -DOE = u'Dôe' +DOE = u'Dôe' EMAIL = 'john.doe@example.com'