Skip to content

Commit

Permalink
Fix tests, pypi, and install tox to run locally
Browse files Browse the repository at this point in the history
  • Loading branch information
aaronn committed Jan 25, 2020
1 parent 24aaf04 commit 6dc68ac
Show file tree
Hide file tree
Showing 7 changed files with 78 additions and 22 deletions.
6 changes: 3 additions & 3 deletions Pipfile
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,19 @@ django = "*"
djangorestframework = "*"
twilio = "*"


[dev-packages]
flake8 = "*"
pandoc = "*"
pep8 = "*"
pytest= "*"
pytest-cov= "*"
pytest-django= "*"
requests = {version=">=2.20.0"}
requests = {version = ">=2.20.0"}
setuptools-markdown = "*"
twine = "*"
urllib3 = {version=">=1.23"}
urllib3 = {version = ">=1.23"}
wheel = "*"
tox = "*"

[requires]
python_version = "3.7"
55 changes: 43 additions & 12 deletions Pipfile.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

23 changes: 23 additions & 0 deletions drfpasswordless/migrations/0004_auto_20200125_0853.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Generated by Django 3.0.2 on 2020-01-25 08:53

from django.db import migrations, models
import drfpasswordless.models


class Migration(migrations.Migration):

dependencies = [
('drfpasswordless', '0003_callbacktoken_type'),
]

operations = [
migrations.AlterField(
model_name='callbacktoken',
name='key',
field=models.CharField(default=drfpasswordless.models.generate_numeric_token, max_length=6),
),
migrations.AlterUniqueTogether(
name='callbacktoken',
unique_together={('is_active', 'key', 'type')},
),
]
3 changes: 2 additions & 1 deletion drfpasswordless/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -61,8 +61,9 @@ class CallbackToken(AbstractBaseCallbackToken):
TOKEN_TYPE_VERIFY = 'VERIFY'
TOKEN_TYPES = ((TOKEN_TYPE_AUTH, 'Auth'), (TOKEN_TYPE_VERIFY, 'Verify'))

key = models.CharField(default=generate_numeric_token, max_length=6, unique=True)
key = models.CharField(default=generate_numeric_token, max_length=6)
type = models.CharField(max_length=20, choices=TOKEN_TYPES)

class Meta(AbstractBaseCallbackToken.Meta):
verbose_name = 'Callback Token'
unique_together = ['is_active', 'key', 'type']
5 changes: 2 additions & 3 deletions drfpasswordless/serializers.py
Original file line number Diff line number Diff line change
Expand Up @@ -294,8 +294,7 @@ class TokenResponseSerializer(serializers.Serializer):
"""
Our default response serializer.
"""
token = serializers.CharField(read_only=True, source='get_token')
token = serializers.CharField(source='key')
key = serializers.CharField(write_only=True)

def get_token(self):
return self.key

7 changes: 4 additions & 3 deletions drfpasswordless/views.py
Original file line number Diff line number Diff line change
Expand Up @@ -145,9 +145,10 @@ def post(self, request, *args, **kwargs):

if token:
TokenSerializer = import_string(api_settings.PASSWORDLESS_AUTH_TOKEN_SERIALIZER)
token_serializer = TokenSerializer(token)
# Return our key for consumption.
return Response(token_serializer.data, status=status.HTTP_200_OK)
token_serializer = TokenSerializer(data=token.__dict__, partial=True)
if token_serializer.is_valid():
# Return our key for consumption.
return Response(token_serializer.data, status=status.HTTP_200_OK)
else:
logger.error("Couldn't log in unknown user. Errors on serializer: {}".format(serializer.error_messages))
return Response({'detail': 'Couldn\'t log you in. Try again later.'}, status=status.HTTP_400_BAD_REQUEST)
Expand Down
1 change: 1 addition & 0 deletions tests/test_verification.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
from rest_framework import status
from rest_framework.authtoken.models import Token
from django.utils.translation import ugettext_lazy as _
from rest_framework.test import APITestCase
from django.contrib.auth import get_user_model
from django.urls import reverse
Expand Down

0 comments on commit 6dc68ac

Please sign in to comment.