diff --git a/bookwyrm/models/fields.py b/bookwyrm/models/fields.py index f480ab899..fae3cb576 100644 --- a/bookwyrm/models/fields.py +++ b/bookwyrm/models/fields.py @@ -18,7 +18,7 @@ from bookwyrm.connectors import get_image def validate_remote_id(value): ''' make sure the remote_id looks like a url ''' - if not re.match(r'^http.?:\/\/[^\s]+$', value): + if not value or not re.match(r'^http.?:\/\/[^\s]+$', value): raise ValidationError( _('%(value)s is not a valid remote_id'), params={'value': value}, @@ -127,7 +127,6 @@ class ForeignKey(ActivitypubRelatedFieldMixin, models.ForeignKey): return value.remote_id def field_from_activity(self, value): - print(value) try: validate_remote_id(value) except ValidationError: diff --git a/bookwyrm/tests/activitypub/test_quotation.py b/bookwyrm/tests/activitypub/test_quotation.py index b06995716..609208896 100644 --- a/bookwyrm/tests/activitypub/test_quotation.py +++ b/bookwyrm/tests/activitypub/test_quotation.py @@ -1,3 +1,4 @@ +''' quotation activty object serializer class ''' import json import pathlib from unittest.mock import patch @@ -9,6 +10,7 @@ from bookwyrm import activitypub, models class Quotation(TestCase): ''' we have hecka ways to create statuses ''' def setUp(self): + ''' model objects we'll need ''' with patch('bookwyrm.models.user.set_remote_server.delay'): self.user = models.User.objects.create_user( 'mouse', 'mouse@mouse.mouse', 'mouseword', @@ -28,6 +30,7 @@ class Quotation(TestCase): def test_quotation_activity(self): + ''' create a Quoteation ap object from json ''' quotation = activitypub.Quotation(**self.status_data) self.assertEqual(quotation.type, 'Quotation') @@ -41,6 +44,7 @@ class Quotation(TestCase): def test_activity_to_model(self): + ''' create a model instance from an activity object ''' activity = activitypub.Quotation(**self.status_data) quotation = activity.to_model(models.Quotation)