Skip to content
Snippets Groups Projects
Commit e6dc204c authored by Jean-Baptiste's avatar Jean-Baptiste
Browse files

update: resource id must end with a /

parent 07fab3a5
No related branches found
Tags v0.5.54
No related merge requests found
Pipeline #854 passed
...@@ -29,7 +29,8 @@ class Model(models.Model): ...@@ -29,7 +29,8 @@ class Model(models.Model):
@classmethod @classmethod
def resource_id(cls, instance): def resource_id(cls, instance):
return "{}{}".format(cls.container_id(instance), getattr(instance, cls.slug_field(instance))) r_id = "{}{}".format(cls.container_id(instance), getattr(instance, cls.slug_field(instance)))
return cls.__clean_path(r_id)
@classmethod @classmethod
def slug_field(cls, instance): def slug_field(cls, instance):
......
...@@ -11,18 +11,18 @@ class LDPModelTest(TestCase): ...@@ -11,18 +11,18 @@ class LDPModelTest(TestCase):
def test_class_not_inheriting_ldp_model(self): def test_class_not_inheriting_ldp_model(self):
dummy = Dummy.objects.create(some="text") dummy = Dummy.objects.create(some="text")
self.assertEquals("/dummys/", Model.container_id(dummy)) self.assertEquals("/dummys/", Model.container_id(dummy))
self.assertEquals("/dummys/{}".format(dummy.slug), Model.resource_id(dummy)) self.assertEquals("/dummys/{}/".format(dummy.slug), Model.resource_id(dummy))
def test_class_inheriting_ldp_model(self): def test_class_inheriting_ldp_model(self):
dummy = LDPDummy.objects.create(some="text") dummy = LDPDummy.objects.create(some="text")
self.assertEquals("/ldpdummys/", dummy.get_container_id()) self.assertEquals("/ldpdummys/", dummy.get_container_id())
self.assertEquals("/ldpdummys/{}".format(dummy.pk), dummy.get_absolute_url()) self.assertEquals("/ldpdummys/{}/".format(dummy.pk), dummy.get_absolute_url())
self.assertEquals("/ldpdummys/", Model.container_id(dummy)) self.assertEquals("/ldpdummys/", Model.container_id(dummy))
self.assertEquals("/ldpdummys/{}".format(dummy.pk), Model.resource_id(dummy)) self.assertEquals("/ldpdummys/{}/".format(dummy.pk), Model.resource_id(dummy))
def test_from_resolve_id(self): def test_from_resolve_id(self):
saved_instance = Dummy.objects.create(some="text", slug="someid") saved_instance = Dummy.objects.create(some="text", slug="someid")
result = Model.resolve_id("/dummys/{}".format(saved_instance.slug)) result = Model.resolve_id("/dummys/{}/".format(saved_instance.slug))
self.assertEquals(saved_instance, result) self.assertEquals(saved_instance, result)
def test_resolve_container(self): def test_resolve_container(self):
...@@ -33,6 +33,6 @@ class LDPModelTest(TestCase): ...@@ -33,6 +33,6 @@ class LDPModelTest(TestCase):
from django.urls import get_resolver from django.urls import get_resolver
dummy = LDPDummy.objects.create(some="text") dummy = LDPDummy.objects.create(some="text")
view_name = '{}-list'.format(dummy._meta.object_name.lower()) view_name = '{}-list'.format(dummy._meta.object_name.lower())
path = '/{}{}'.format(get_resolver().reverse_dict[view_name][0][0][0], dummy.pk) path = '/{}{}/'.format(get_resolver().reverse_dict[view_name][0][0][0], dummy.pk)
self.assertEquals(path, dummy.get_absolute_url()) self.assertEquals(path, dummy.get_absolute_url())
...@@ -215,17 +215,17 @@ class Update(TestCase): ...@@ -215,17 +215,17 @@ class Update(TestCase):
} }
}, },
{ {
'@id': "https://happy-dev.fr/threads/{}".format(thread.pk), '@id': "https://happy-dev.fr/threads/{}/".format(thread.pk),
"author_user": { "author_user": {
'@id': "https://happy-dev.fr/users/{}/".format(user1.pk) '@id': "https://happy-dev.fr/users/{}/".format(user1.pk)
}, },
'description': "Thread 1 UP", 'description': "Thread 1 UP",
'message_set': { 'message_set': {
"@id": "https://happy-dev.fr/threads/{}/message_set".format(thread.pk) "@id": "https://happy-dev.fr/threads/{}/message_set/".format(thread.pk)
} }
}, },
{ {
'@id': "https://happy-dev.fr/threads/{}/message_set".format(thread.pk), '@id': "https://happy-dev.fr/threads/{}/message_set/".format(thread.pk),
"ldp:contains": [ "ldp:contains": [
{"@id": "https://happy-dev.fr/messages/{}/".format(message1.pk)}, {"@id": "https://happy-dev.fr/messages/{}/".format(message1.pk)},
{"@id": "https://happy-dev.fr/messages/{}/".format(message2.pk)}, {"@id": "https://happy-dev.fr/messages/{}/".format(message2.pk)},
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment