diff --git a/alexandria/conftest.py b/alexandria/conftest.py index b884d87c..97c184a6 100644 --- a/alexandria/conftest.py +++ b/alexandria/conftest.py @@ -7,6 +7,8 @@ from pytest_factoryboy import register from rest_framework.test import APIClient +from alexandria.oidc_auth.models import OIDCUser + def register_module(module): for name, obj in inspect.getmembers(module): @@ -20,6 +22,18 @@ def register_module(module): register_module(importlib.import_module(".core.factories", "alexandria")) +@pytest.fixture +def admin_groups(): + return ["admin"] + + +@pytest.fixture +def admin_user(settings, admin_groups): + return OIDCUser( + "sometoken", {"sub": "admin", settings.OIDC_GROUPS_CLAIM: admin_groups} + ) + + @pytest.fixture def admin_client(db, admin_user): client = APIClient() diff --git a/alexandria/core/migrations/0001_initial.py b/alexandria/core/migrations/0001_initial.py index 744aa792..e056e26e 100644 --- a/alexandria/core/migrations/0001_initial.py +++ b/alexandria/core/migrations/0001_initial.py @@ -1,4 +1,4 @@ -# Generated by Django 2.2.13 on 2020-07-02 10:02 +# Generated by Django 2.2.13 on 2020-07-02 12:03 import django.contrib.postgres.fields.jsonb import django.db.models.deletion @@ -19,7 +19,7 @@ class Migration(migrations.Migration): migrations.CreateModel( name="Category", fields=[ - ("created_at", models.DateTimeField(auto_now=True, db_index=True)), + ("created_at", models.DateTimeField(auto_now_add=True, db_index=True)), ( "created_by_user", models.CharField( @@ -38,6 +38,25 @@ class Migration(migrations.Migration): verbose_name="created by group", ), ), + ("modified_at", models.DateTimeField(auto_now=True, db_index=True)), + ( + "modified_by_user", + models.CharField( + blank=True, + max_length=150, + null=True, + verbose_name="created by user", + ), + ), + ( + "modified_by_group", + models.CharField( + blank=True, + max_length=255, + null=True, + verbose_name="created by group", + ), + ), ( "meta", django.contrib.postgres.fields.jsonb.JSONField( @@ -69,7 +88,7 @@ class Migration(migrations.Migration): migrations.CreateModel( name="Tag", fields=[ - ("created_at", models.DateTimeField(auto_now=True, db_index=True)), + ("created_at", models.DateTimeField(auto_now_add=True, db_index=True)), ( "created_by_user", models.CharField( @@ -88,6 +107,25 @@ class Migration(migrations.Migration): verbose_name="created by group", ), ), + ("modified_at", models.DateTimeField(auto_now=True, db_index=True)), + ( + "modified_by_user", + models.CharField( + blank=True, + max_length=150, + null=True, + verbose_name="created by user", + ), + ), + ( + "modified_by_group", + models.CharField( + blank=True, + max_length=255, + null=True, + verbose_name="created by group", + ), + ), ( "meta", django.contrib.postgres.fields.jsonb.JSONField( @@ -119,7 +157,7 @@ class Migration(migrations.Migration): migrations.CreateModel( name="Document", fields=[ - ("created_at", models.DateTimeField(auto_now=True, db_index=True)), + ("created_at", models.DateTimeField(auto_now_add=True, db_index=True)), ( "created_by_user", models.CharField( @@ -138,6 +176,25 @@ class Migration(migrations.Migration): verbose_name="created by group", ), ), + ("modified_at", models.DateTimeField(auto_now=True, db_index=True)), + ( + "modified_by_user", + models.CharField( + blank=True, + max_length=150, + null=True, + verbose_name="created by user", + ), + ), + ( + "modified_by_group", + models.CharField( + blank=True, + max_length=255, + null=True, + verbose_name="created by group", + ), + ), ( "meta", django.contrib.postgres.fields.jsonb.JSONField( diff --git a/alexandria/core/models.py b/alexandria/core/models.py index 08a28e68..9219b791 100644 --- a/alexandria/core/models.py +++ b/alexandria/core/models.py @@ -19,13 +19,20 @@ def make_uuid(): class BaseModel(models.Model): - created_at = models.DateTimeField(auto_now=True, db_index=True) + created_at = models.DateTimeField(auto_now_add=True, db_index=True) created_by_user = models.CharField( _("created by user"), max_length=150, blank=True, null=True ) created_by_group = models.CharField( _("created by group"), max_length=255, blank=True, null=True ) + modified_at = models.DateTimeField(auto_now=True, db_index=True) + modified_by_user = models.CharField( + _("created by user"), max_length=150, blank=True, null=True + ) + modified_by_group = models.CharField( + _("created by group"), max_length=255, blank=True, null=True + ) meta = JSONField(_("meta"), default=dict) class Meta: diff --git a/alexandria/core/serializers.py b/alexandria/core/serializers.py index f31fcbe0..b9e7def4 100644 --- a/alexandria/core/serializers.py +++ b/alexandria/core/serializers.py @@ -9,12 +9,23 @@ class BaseSerializer(serializers.ModelSerializer): def validate(self, *args, **kwargs): validated_data = super().validate(*args, **kwargs) user = self.context["request"].user - validated_data["created_by_user"] = user.username - # validated_data["created_by_group"] = user.group + validated_data["modified_by_user"] = user.username + validated_data["modified_by_group"] = user.group + if self.instance is not None: + validated_data["created_by_user"] = user.username + validated_data["created_by_group"] = user.group return validated_data class Meta: - fields = ("created_at", "created_by_user", "created_by_group", "meta") + fields = ( + "created_at", + "created_by_user", + "created_by_group", + "modified_at", + "modified_by_user", + "modified_by_group", + "meta", + ) class CategorySerializer(BaseSerializer): diff --git a/alexandria/core/tests/snapshots/snap_test_api.py b/alexandria/core/tests/snapshots/snap_test_api.py index d58fdb97..d87784d5 100644 --- a/alexandria/core/tests/snapshots/snap_test_api.py +++ b/alexandria/core/tests/snapshots/snap_test_api.py @@ -8,9 +8,9 @@ snapshots["test_api_list[DocumentViewSet] 1"] = { "queries": [ - 'SELECT "alexandria_core_document"."created_at", "alexandria_core_document"."created_by_user", "alexandria_core_document"."created_by_group", "alexandria_core_document"."meta", "alexandria_core_document"."id", "alexandria_core_document"."name", "alexandria_core_document"."title", "alexandria_core_document"."description", "alexandria_core_document"."category_id" FROM "alexandria_core_document"', - 'SELECT "alexandria_core_category"."created_at", "alexandria_core_category"."created_by_user", "alexandria_core_category"."created_by_group", "alexandria_core_category"."meta", "alexandria_core_category"."slug", "alexandria_core_category"."name", "alexandria_core_category"."description" FROM "alexandria_core_category" WHERE "alexandria_core_category"."slug" IN (NULL)', - 'SELECT ("alexandria_core_document_tags"."document_id") AS "_prefetch_related_val_document_id", "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" INNER JOIN "alexandria_core_document_tags" ON ("alexandria_core_tag"."slug" = "alexandria_core_document_tags"."tag_id") WHERE "alexandria_core_document_tags"."document_id" IN (\'9336ebf2-5087-d91c-818e-e6e9ec29f8c1\'::uuid, \'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid, \'f561aaf6-ef0b-f14d-4208-bb46a4ccb3ad\'::uuid)', + 'SELECT "alexandria_core_document"."created_at", "alexandria_core_document"."created_by_user", "alexandria_core_document"."created_by_group", "alexandria_core_document"."modified_at", "alexandria_core_document"."modified_by_user", "alexandria_core_document"."modified_by_group", "alexandria_core_document"."meta", "alexandria_core_document"."id", "alexandria_core_document"."name", "alexandria_core_document"."title", "alexandria_core_document"."description", "alexandria_core_document"."category_id" FROM "alexandria_core_document"', + 'SELECT "alexandria_core_category"."created_at", "alexandria_core_category"."created_by_user", "alexandria_core_category"."created_by_group", "alexandria_core_category"."modified_at", "alexandria_core_category"."modified_by_user", "alexandria_core_category"."modified_by_group", "alexandria_core_category"."meta", "alexandria_core_category"."slug", "alexandria_core_category"."name", "alexandria_core_category"."description" FROM "alexandria_core_category" WHERE "alexandria_core_category"."slug" IN (NULL)', + 'SELECT ("alexandria_core_document_tags"."document_id") AS "_prefetch_related_val_document_id", "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."modified_at", "alexandria_core_tag"."modified_by_user", "alexandria_core_tag"."modified_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" INNER JOIN "alexandria_core_document_tags" ON ("alexandria_core_tag"."slug" = "alexandria_core_document_tags"."tag_id") WHERE "alexandria_core_document_tags"."document_id" IN (\'9336ebf2-5087-d91c-818e-e6e9ec29f8c1\'::uuid, \'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid, \'f561aaf6-ef0b-f14d-4208-bb46a4ccb3ad\'::uuid)', ], "request": { "CONTENT_TYPE": "application/octet-stream", @@ -33,6 +33,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": None, + "modified-by-user": None, "name": "Pamela Horton", "title": {"de": "", "en": "David Romero", "fr": ""}, }, @@ -58,6 +61,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": None, + "modified-by-user": None, "name": "Rebecca Gonzalez", "title": {"de": "", "en": "Olivia Miller", "fr": ""}, }, @@ -80,6 +86,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": None, + "modified-by-user": None, "name": "Lorraine Reynolds", "title": {"de": "", "en": "John Woods", "fr": ""}, }, @@ -103,6 +112,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": None, + "modified-by-user": None, "name": {"de": "", "en": "David Benson", "fr": ""}, }, "id": "industry-call", @@ -115,7 +127,7 @@ snapshots["test_api_list[CategoryViewSet] 1"] = { "queries": [ - 'SELECT "alexandria_core_category"."created_at", "alexandria_core_category"."created_by_user", "alexandria_core_category"."created_by_group", "alexandria_core_category"."meta", "alexandria_core_category"."slug", "alexandria_core_category"."name", "alexandria_core_category"."description" FROM "alexandria_core_category"' + 'SELECT "alexandria_core_category"."created_at", "alexandria_core_category"."created_by_user", "alexandria_core_category"."created_by_group", "alexandria_core_category"."modified_at", "alexandria_core_category"."modified_by_user", "alexandria_core_category"."modified_by_group", "alexandria_core_category"."meta", "alexandria_core_category"."slug", "alexandria_core_category"."name", "alexandria_core_category"."description" FROM "alexandria_core_category"' ], "request": { "CONTENT_TYPE": "application/octet-stream", @@ -137,6 +149,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": None, + "modified-by-user": None, "name": {"de": "", "en": "Jordan Mccarthy", "fr": ""}, }, "id": "mrs-shake-recent", @@ -153,6 +168,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": None, + "modified-by-user": None, "name": {"de": "", "en": "Angela Brown", "fr": ""}, }, "id": "reason-son-current", @@ -169,6 +187,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": None, + "modified-by-user": None, "name": {"de": "", "en": "Justin Hunt", "fr": ""}, }, "id": "structure", @@ -181,7 +202,7 @@ snapshots["test_api_list[TagViewSet] 1"] = { "queries": [ - 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag"' + 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."modified_at", "alexandria_core_tag"."modified_by_user", "alexandria_core_tag"."modified_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag"' ], "request": { "CONTENT_TYPE": "application/octet-stream", @@ -203,6 +224,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": None, + "modified-by-user": None, "name": {"de": "", "en": "Jordan Mccarthy", "fr": ""}, }, "id": "mrs-shake-recent", @@ -219,6 +243,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": None, + "modified-by-user": None, "name": {"de": "", "en": "Angela Brown", "fr": ""}, }, "id": "reason-son-current", @@ -235,6 +262,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": None, + "modified-by-user": None, "name": {"de": "", "en": "Justin Hunt", "fr": ""}, }, "id": "structure", @@ -247,9 +277,9 @@ snapshots["test_api_detail[DocumentViewSet] 1"] = { "queries": [ - 'SELECT "alexandria_core_document"."created_at", "alexandria_core_document"."created_by_user", "alexandria_core_document"."created_by_group", "alexandria_core_document"."meta", "alexandria_core_document"."id", "alexandria_core_document"."name", "alexandria_core_document"."title", "alexandria_core_document"."description", "alexandria_core_document"."category_id" FROM "alexandria_core_document" WHERE "alexandria_core_document"."id" = \'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid', - 'SELECT "alexandria_core_category"."created_at", "alexandria_core_category"."created_by_user", "alexandria_core_category"."created_by_group", "alexandria_core_category"."meta", "alexandria_core_category"."slug", "alexandria_core_category"."name", "alexandria_core_category"."description" FROM "alexandria_core_category" WHERE "alexandria_core_category"."slug" IN (NULL)', - 'SELECT ("alexandria_core_document_tags"."document_id") AS "_prefetch_related_val_document_id", "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" INNER JOIN "alexandria_core_document_tags" ON ("alexandria_core_tag"."slug" = "alexandria_core_document_tags"."tag_id") WHERE "alexandria_core_document_tags"."document_id" IN (\'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid)', + 'SELECT "alexandria_core_document"."created_at", "alexandria_core_document"."created_by_user", "alexandria_core_document"."created_by_group", "alexandria_core_document"."modified_at", "alexandria_core_document"."modified_by_user", "alexandria_core_document"."modified_by_group", "alexandria_core_document"."meta", "alexandria_core_document"."id", "alexandria_core_document"."name", "alexandria_core_document"."title", "alexandria_core_document"."description", "alexandria_core_document"."category_id" FROM "alexandria_core_document" WHERE "alexandria_core_document"."id" = \'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid', + 'SELECT "alexandria_core_category"."created_at", "alexandria_core_category"."created_by_user", "alexandria_core_category"."created_by_group", "alexandria_core_category"."modified_at", "alexandria_core_category"."modified_by_user", "alexandria_core_category"."modified_by_group", "alexandria_core_category"."meta", "alexandria_core_category"."slug", "alexandria_core_category"."name", "alexandria_core_category"."description" FROM "alexandria_core_category" WHERE "alexandria_core_category"."slug" IN (NULL)', + 'SELECT ("alexandria_core_document_tags"."document_id") AS "_prefetch_related_val_document_id", "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."modified_at", "alexandria_core_tag"."modified_by_user", "alexandria_core_tag"."modified_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" INNER JOIN "alexandria_core_document_tags" ON ("alexandria_core_tag"."slug" = "alexandria_core_document_tags"."tag_id") WHERE "alexandria_core_document_tags"."document_id" IN (\'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid)', ], "request": { "CONTENT_TYPE": "application/octet-stream", @@ -271,6 +301,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": None, + "modified-by-user": None, "name": "Pamela Horton", "title": {"de": "", "en": "David Romero", "fr": ""}, }, @@ -296,6 +329,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": None, + "modified-by-user": None, "name": {"de": "", "en": "David Benson", "fr": ""}, }, "id": "industry-call", @@ -308,7 +344,7 @@ snapshots["test_api_detail[CategoryViewSet] 1"] = { "queries": [ - 'SELECT "alexandria_core_category"."created_at", "alexandria_core_category"."created_by_user", "alexandria_core_category"."created_by_group", "alexandria_core_category"."meta", "alexandria_core_category"."slug", "alexandria_core_category"."name", "alexandria_core_category"."description" FROM "alexandria_core_category" WHERE "alexandria_core_category"."slug" = \'mrs-shake-recent\'' + 'SELECT "alexandria_core_category"."created_at", "alexandria_core_category"."created_by_user", "alexandria_core_category"."created_by_group", "alexandria_core_category"."modified_at", "alexandria_core_category"."modified_by_user", "alexandria_core_category"."modified_by_group", "alexandria_core_category"."meta", "alexandria_core_category"."slug", "alexandria_core_category"."name", "alexandria_core_category"."description" FROM "alexandria_core_category" WHERE "alexandria_core_category"."slug" = \'mrs-shake-recent\'' ], "request": { "CONTENT_TYPE": "application/octet-stream", @@ -329,6 +365,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": None, + "modified-by-user": None, "name": {"de": "", "en": "Jordan Mccarthy", "fr": ""}, }, "id": "mrs-shake-recent", @@ -340,7 +379,7 @@ snapshots["test_api_detail[TagViewSet] 1"] = { "queries": [ - 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" WHERE "alexandria_core_tag"."slug" = \'mrs-shake-recent\'' + 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."modified_at", "alexandria_core_tag"."modified_by_user", "alexandria_core_tag"."modified_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" WHERE "alexandria_core_tag"."slug" = \'mrs-shake-recent\'' ], "request": { "CONTENT_TYPE": "application/octet-stream", @@ -361,6 +400,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": None, + "modified-by-user": None, "name": {"de": "", "en": "Jordan Mccarthy", "fr": ""}, }, "id": "mrs-shake-recent", @@ -370,18 +412,101 @@ "status": 200, } +snapshots["test_api_destroy[DocumentViewSet] 1"] = { + "queries": [ + 'SELECT "alexandria_core_document"."created_at", "alexandria_core_document"."created_by_user", "alexandria_core_document"."created_by_group", "alexandria_core_document"."modified_at", "alexandria_core_document"."modified_by_user", "alexandria_core_document"."modified_by_group", "alexandria_core_document"."meta", "alexandria_core_document"."id", "alexandria_core_document"."name", "alexandria_core_document"."title", "alexandria_core_document"."description", "alexandria_core_document"."category_id" FROM "alexandria_core_document" WHERE "alexandria_core_document"."id" = \'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid', + 'SELECT "alexandria_core_document_tags"."id", "alexandria_core_document_tags"."document_id", "alexandria_core_document_tags"."tag_id" FROM "alexandria_core_document_tags" WHERE "alexandria_core_document_tags"."document_id" IN (\'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid)', + 'DELETE FROM "alexandria_core_document_tags" WHERE "alexandria_core_document_tags"."id" IN (1)', + 'DELETE FROM "alexandria_core_document" WHERE "alexandria_core_document"."id" IN (\'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid)', + ], + "request": { + "PATH_INFO": "/api/v1/documents/9dd4e461-268c-8034-f5c8-564e155c67a6", + "QUERY_STRING": "", + "REQUEST_METHOD": "DELETE", + "SERVER_PORT": "80", + }, + "status": 204, +} + +snapshots["test_api_destroy[CategoryViewSet] 1"] = { + "queries": [ + 'SELECT "alexandria_core_category"."created_at", "alexandria_core_category"."created_by_user", "alexandria_core_category"."created_by_group", "alexandria_core_category"."modified_at", "alexandria_core_category"."modified_by_user", "alexandria_core_category"."modified_by_group", "alexandria_core_category"."meta", "alexandria_core_category"."slug", "alexandria_core_category"."name", "alexandria_core_category"."description" FROM "alexandria_core_category" WHERE "alexandria_core_category"."slug" = \'mrs-shake-recent\'', + 'SELECT "alexandria_core_document"."created_at", "alexandria_core_document"."created_by_user", "alexandria_core_document"."created_by_group", "alexandria_core_document"."modified_at", "alexandria_core_document"."modified_by_user", "alexandria_core_document"."modified_by_group", "alexandria_core_document"."meta", "alexandria_core_document"."id", "alexandria_core_document"."name", "alexandria_core_document"."title", "alexandria_core_document"."description", "alexandria_core_document"."category_id" FROM "alexandria_core_document" WHERE "alexandria_core_document"."category_id" IN (\'mrs-shake-recent\')', + 'DELETE FROM "alexandria_core_category" WHERE "alexandria_core_category"."slug" IN (\'mrs-shake-recent\')', + ], + "request": { + "PATH_INFO": "/api/v1/categories/mrs-shake-recent", + "QUERY_STRING": "", + "REQUEST_METHOD": "DELETE", + "SERVER_PORT": "80", + }, + "status": 204, +} + +snapshots["test_api_destroy[TagViewSet] 1"] = { + "queries": [ + 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."modified_at", "alexandria_core_tag"."modified_by_user", "alexandria_core_tag"."modified_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" WHERE "alexandria_core_tag"."slug" = \'mrs-shake-recent\'', + 'SELECT "alexandria_core_document_tags"."id", "alexandria_core_document_tags"."document_id", "alexandria_core_document_tags"."tag_id" FROM "alexandria_core_document_tags" WHERE "alexandria_core_document_tags"."tag_id" IN (\'mrs-shake-recent\')', + 'DELETE FROM "alexandria_core_tag" WHERE "alexandria_core_tag"."slug" IN (\'mrs-shake-recent\')', + ], + "request": { + "PATH_INFO": "/api/v1/tags/mrs-shake-recent", + "QUERY_STRING": "", + "REQUEST_METHOD": "DELETE", + "SERVER_PORT": "80", + }, + "status": 204, +} + +snapshots["test_api_patch[CategoryViewSet] 1"] = { + "queries": [ + 'SELECT "alexandria_core_category"."created_at", "alexandria_core_category"."created_by_user", "alexandria_core_category"."created_by_group", "alexandria_core_category"."modified_at", "alexandria_core_category"."modified_by_user", "alexandria_core_category"."modified_by_group", "alexandria_core_category"."meta", "alexandria_core_category"."slug", "alexandria_core_category"."name", "alexandria_core_category"."description" FROM "alexandria_core_category" WHERE "alexandria_core_category"."slug" = \'mrs-shake-recent\'', + "UPDATE \"alexandria_core_category\" SET \"created_at\" = '2017-05-21T00:00:00+00:00'::timestamptz, \"created_by_user\" = 'admin', \"created_by_group\" = 'admin', \"modified_at\" = '2017-05-21T00:00:00+00:00'::timestamptz, \"modified_by_user\" = 'admin', \"modified_by_group\" = 'admin', \"meta\" = '{}', \"name\" = hstore(ARRAY['en','de','fr'], ARRAY['Jordan Mccarthy','','']), \"description\" = hstore(ARRAY['en','de','fr'], ARRAY['Bit among again across environment long line. Team suggest traditional boy above.','','']) WHERE \"alexandria_core_category\".\"slug\" = 'mrs-shake-recent'", + ], + "request": { + "CONTENT_LENGTH": "417", + "CONTENT_TYPE": "application/vnd.api+json; charset=None", + "PATH_INFO": "/api/v1/categories/mrs-shake-recent", + "QUERY_STRING": "", + "REQUEST_METHOD": "PATCH", + "SERVER_PORT": "80", + }, + "response": { + "data": { + "attributes": { + "created-at": "2017-05-21T00:00:00Z", + "created-by-group": "admin", + "created-by-user": "admin", + "description": { + "de": "", + "en": "Bit among again across environment long line. Team suggest traditional boy above.", + "fr": "", + }, + "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": "admin", + "modified-by-user": "admin", + "name": {"de": "", "en": "Jordan Mccarthy", "fr": ""}, + }, + "id": "mrs-shake-recent", + "type": "categories", + } + }, + "status": 200, +} + snapshots["test_api_create[DocumentViewSet] 1"] = { "queries": [ - 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" WHERE "alexandria_core_tag"."slug" = \'industry-call\'', - """INSERT INTO "alexandria_core_document" ("created_at", "created_by_user", "created_by_group", "meta", "id", "name", "title", "description", "category_id") VALUES (\'2017-05-21T00:00:00+00:00\'::timestamptz, \'admin\', NULL, \'{}\', \'9336ebf2-5087-d91c-818e-e6e9ec29f8c1\'::uuid, \'Pamela Horton\', hstore(ARRAY[\'en\',\'de\',\'fr\'], ARRAY[\'David Romero\',\'\',\'\']), hstore(ARRAY[\'en\',\'de\',\'fr\'], ARRAY[\'Morning option program interesting station. First where during teach country talk across. + 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."modified_at", "alexandria_core_tag"."modified_by_user", "alexandria_core_tag"."modified_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" WHERE "alexandria_core_tag"."slug" = \'industry-call\'', + """INSERT INTO "alexandria_core_document" ("created_at", "created_by_user", "created_by_group", "modified_at", "modified_by_user", "modified_by_group", "meta", "id", "name", "title", "description", "category_id") VALUES (\'2017-05-21T00:00:00+00:00\'::timestamptz, NULL, NULL, \'2017-05-21T00:00:00+00:00\'::timestamptz, \'admin\', \'admin\', \'{}\', \'9336ebf2-5087-d91c-818e-e6e9ec29f8c1\'::uuid, \'Pamela Horton\', hstore(ARRAY[\'en\',\'de\',\'fr\'], ARRAY[\'David Romero\',\'\',\'\']), hstore(ARRAY[\'en\',\'de\',\'fr\'], ARRAY[\'Morning option program interesting station. First where during teach country talk across. Argue move appear catch toward help wind. Material minute ago get.','','']), NULL)""", 'SELECT "alexandria_core_tag"."slug" FROM "alexandria_core_tag" INNER JOIN "alexandria_core_document_tags" ON ("alexandria_core_tag"."slug" = "alexandria_core_document_tags"."tag_id") WHERE "alexandria_core_document_tags"."document_id" = \'9336ebf2-5087-d91c-818e-e6e9ec29f8c1\'::uuid', 'SELECT "alexandria_core_document_tags"."tag_id" FROM "alexandria_core_document_tags" WHERE ("alexandria_core_document_tags"."document_id" = \'9336ebf2-5087-d91c-818e-e6e9ec29f8c1\'::uuid AND "alexandria_core_document_tags"."tag_id" IN (\'industry-call\'))', 'INSERT INTO "alexandria_core_document_tags" ("document_id", "tag_id") VALUES (\'9336ebf2-5087-d91c-818e-e6e9ec29f8c1\'::uuid, \'industry-call\') RETURNING "alexandria_core_document_tags"."id"', - 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" INNER JOIN "alexandria_core_document_tags" ON ("alexandria_core_tag"."slug" = "alexandria_core_document_tags"."tag_id") WHERE "alexandria_core_document_tags"."document_id" = \'9336ebf2-5087-d91c-818e-e6e9ec29f8c1\'::uuid', + 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."modified_at", "alexandria_core_tag"."modified_by_user", "alexandria_core_tag"."modified_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" INNER JOIN "alexandria_core_document_tags" ON ("alexandria_core_tag"."slug" = "alexandria_core_document_tags"."tag_id") WHERE "alexandria_core_document_tags"."document_id" = \'9336ebf2-5087-d91c-818e-e6e9ec29f8c1\'::uuid', ], "request": { - "CONTENT_LENGTH": "564", + "CONTENT_LENGTH": "650", "CONTENT_TYPE": "application/vnd.api+json; charset=None", "PATH_INFO": "/api/v1/documents", "QUERY_STRING": "", @@ -393,7 +518,7 @@ "attributes": { "created-at": "2017-05-21T00:00:00Z", "created-by-group": None, - "created-by-user": "admin", + "created-by-user": None, "description": { "de": "", "en": """Morning option program interesting station. First where during teach country talk across. @@ -401,6 +526,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": "admin", + "modified-by-user": "admin", "name": "Pamela Horton", "title": {"de": "", "en": "David Romero", "fr": ""}, }, @@ -418,14 +546,14 @@ "status": 201, } -snapshots["test_api_create[CategoryViewSet] 1"] = { +snapshots["test_api_create[TagViewSet] 1"] = { "queries": [ - "INSERT INTO \"alexandria_core_category\" (\"created_at\", \"created_by_user\", \"created_by_group\", \"meta\", \"slug\", \"name\", \"description\") VALUES ('2017-05-21T00:00:00+00:00'::timestamptz, 'admin', NULL, '{}', '', hstore(ARRAY['en','de','fr'], ARRAY['Jordan Mccarthy','','']), hstore(ARRAY['en','de','fr'], ARRAY['Bit among again across environment long line. Team suggest traditional boy above.','','']))" + "INSERT INTO \"alexandria_core_tag\" (\"created_at\", \"created_by_user\", \"created_by_group\", \"modified_at\", \"modified_by_user\", \"modified_by_group\", \"meta\", \"slug\", \"name\", \"description\") VALUES ('2017-05-21T00:00:00+00:00'::timestamptz, NULL, NULL, '2017-05-21T00:00:00+00:00'::timestamptz, 'admin', 'admin', '{}', '', hstore(ARRAY['en','de','fr'], ARRAY['Jordan Mccarthy','','']), hstore(ARRAY['en','de','fr'], ARRAY['Bit among again across environment long line. Team suggest traditional boy above.','','']))" ], "request": { - "CONTENT_LENGTH": "331", + "CONTENT_LENGTH": "411", "CONTENT_TYPE": "application/vnd.api+json; charset=None", - "PATH_INFO": "/api/v1/categories", + "PATH_INFO": "/api/v1/tags", "QUERY_STRING": "", "REQUEST_METHOD": "POST", "SERVER_PORT": "80", @@ -435,30 +563,33 @@ "attributes": { "created-at": "2017-05-21T00:00:00Z", "created-by-group": None, - "created-by-user": "admin", + "created-by-user": None, "description": { "de": "", "en": "Bit among again across environment long line. Team suggest traditional boy above.", "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": "admin", + "modified-by-user": "admin", "name": {"de": "", "en": "Jordan Mccarthy", "fr": ""}, }, "id": "", - "type": "categories", + "type": "tags", } }, "status": 201, } -snapshots["test_api_create[TagViewSet] 1"] = { +snapshots["test_api_create[CategoryViewSet] 1"] = { "queries": [ - "INSERT INTO \"alexandria_core_tag\" (\"created_at\", \"created_by_user\", \"created_by_group\", \"meta\", \"slug\", \"name\", \"description\") VALUES ('2017-05-21T00:00:00+00:00'::timestamptz, 'admin', NULL, '{}', '', hstore(ARRAY['en','de','fr'], ARRAY['Jordan Mccarthy','','']), hstore(ARRAY['en','de','fr'], ARRAY['Bit among again across environment long line. Team suggest traditional boy above.','','']))" + "INSERT INTO \"alexandria_core_category\" (\"created_at\", \"created_by_user\", \"created_by_group\", \"modified_at\", \"modified_by_user\", \"modified_by_group\", \"meta\", \"slug\", \"name\", \"description\") VALUES ('2017-05-21T00:00:00+00:00'::timestamptz, NULL, NULL, '2017-05-21T00:00:00+00:00'::timestamptz, 'admin', 'admin', '{}', '', hstore(ARRAY['en','de','fr'], ARRAY['Jordan Mccarthy','','']), hstore(ARRAY['en','de','fr'], ARRAY['Bit among again across environment long line. Team suggest traditional boy above.','','']))" ], "request": { - "CONTENT_LENGTH": "325", + "CONTENT_LENGTH": "417", "CONTENT_TYPE": "application/vnd.api+json; charset=None", - "PATH_INFO": "/api/v1/tags", + "PATH_INFO": "/api/v1/categories", "QUERY_STRING": "", "REQUEST_METHOD": "POST", "SERVER_PORT": "80", @@ -468,17 +599,20 @@ "attributes": { "created-at": "2017-05-21T00:00:00Z", "created-by-group": None, - "created-by-user": "admin", + "created-by-user": None, "description": { "de": "", "en": "Bit among again across environment long line. Team suggest traditional boy above.", "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": "admin", + "modified-by-user": "admin", "name": {"de": "", "en": "Jordan Mccarthy", "fr": ""}, }, "id": "", - "type": "tags", + "type": "categories", } }, "status": 201, @@ -486,15 +620,15 @@ snapshots["test_api_patch[DocumentViewSet] 1"] = { "queries": [ - 'SELECT "alexandria_core_document"."created_at", "alexandria_core_document"."created_by_user", "alexandria_core_document"."created_by_group", "alexandria_core_document"."meta", "alexandria_core_document"."id", "alexandria_core_document"."name", "alexandria_core_document"."title", "alexandria_core_document"."description", "alexandria_core_document"."category_id" FROM "alexandria_core_document" WHERE "alexandria_core_document"."id" = \'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid', - 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" WHERE "alexandria_core_tag"."slug" = \'industry-call\'', - """UPDATE "alexandria_core_document" SET "created_at" = \'2017-05-21T00:00:00+00:00\'::timestamptz, "created_by_user" = \'admin\', "created_by_group" = NULL, "meta" = \'{}\', "name" = \'Pamela Horton\', "title" = hstore(ARRAY[\'en\',\'de\',\'fr\'], ARRAY[\'David Romero\',\'\',\'\']), "description" = hstore(ARRAY[\'en\',\'de\',\'fr\'], ARRAY[\'Morning option program interesting station. First where during teach country talk across. + 'SELECT "alexandria_core_document"."created_at", "alexandria_core_document"."created_by_user", "alexandria_core_document"."created_by_group", "alexandria_core_document"."modified_at", "alexandria_core_document"."modified_by_user", "alexandria_core_document"."modified_by_group", "alexandria_core_document"."meta", "alexandria_core_document"."id", "alexandria_core_document"."name", "alexandria_core_document"."title", "alexandria_core_document"."description", "alexandria_core_document"."category_id" FROM "alexandria_core_document" WHERE "alexandria_core_document"."id" = \'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid', + 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."modified_at", "alexandria_core_tag"."modified_by_user", "alexandria_core_tag"."modified_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" WHERE "alexandria_core_tag"."slug" = \'industry-call\'', + """UPDATE "alexandria_core_document" SET "created_at" = \'2017-05-21T00:00:00+00:00\'::timestamptz, "created_by_user" = \'admin\', "created_by_group" = \'admin\', "modified_at" = \'2017-05-21T00:00:00+00:00\'::timestamptz, "modified_by_user" = \'admin\', "modified_by_group" = \'admin\', "meta" = \'{}\', "name" = \'Pamela Horton\', "title" = hstore(ARRAY[\'en\',\'de\',\'fr\'], ARRAY[\'David Romero\',\'\',\'\']), "description" = hstore(ARRAY[\'en\',\'de\',\'fr\'], ARRAY[\'Morning option program interesting station. First where during teach country talk across. Argue move appear catch toward help wind. Material minute ago get.\',\'\',\'\']), "category_id" = NULL WHERE "alexandria_core_document"."id" = \'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid""", 'SELECT "alexandria_core_tag"."slug" FROM "alexandria_core_tag" INNER JOIN "alexandria_core_document_tags" ON ("alexandria_core_tag"."slug" = "alexandria_core_document_tags"."tag_id") WHERE "alexandria_core_document_tags"."document_id" = \'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid', - 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" INNER JOIN "alexandria_core_document_tags" ON ("alexandria_core_tag"."slug" = "alexandria_core_document_tags"."tag_id") WHERE "alexandria_core_document_tags"."document_id" = \'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid', + 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."modified_at", "alexandria_core_tag"."modified_by_user", "alexandria_core_tag"."modified_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" INNER JOIN "alexandria_core_document_tags" ON ("alexandria_core_tag"."slug" = "alexandria_core_document_tags"."tag_id") WHERE "alexandria_core_document_tags"."document_id" = \'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid', ], "request": { - "CONTENT_LENGTH": "564", + "CONTENT_LENGTH": "650", "CONTENT_TYPE": "application/vnd.api+json; charset=None", "PATH_INFO": "/api/v1/documents/9dd4e461-268c-8034-f5c8-564e155c67a6", "QUERY_STRING": "", @@ -505,7 +639,7 @@ "data": { "attributes": { "created-at": "2017-05-21T00:00:00Z", - "created-by-group": None, + "created-by-group": "admin", "created-by-user": "admin", "description": { "de": "", @@ -514,6 +648,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": "admin", + "modified-by-user": "admin", "name": "Pamela Horton", "title": {"de": "", "en": "David Romero", "fr": ""}, }, @@ -531,47 +668,13 @@ "status": 200, } -snapshots["test_api_patch[CategoryViewSet] 1"] = { - "queries": [ - 'SELECT "alexandria_core_category"."created_at", "alexandria_core_category"."created_by_user", "alexandria_core_category"."created_by_group", "alexandria_core_category"."meta", "alexandria_core_category"."slug", "alexandria_core_category"."name", "alexandria_core_category"."description" FROM "alexandria_core_category" WHERE "alexandria_core_category"."slug" = \'mrs-shake-recent\'', - "UPDATE \"alexandria_core_category\" SET \"created_at\" = '2017-05-21T00:00:00+00:00'::timestamptz, \"created_by_user\" = 'admin', \"created_by_group\" = NULL, \"meta\" = '{}', \"name\" = hstore(ARRAY['en','de','fr'], ARRAY['Jordan Mccarthy','','']), \"description\" = hstore(ARRAY['en','de','fr'], ARRAY['Bit among again across environment long line. Team suggest traditional boy above.','','']) WHERE \"alexandria_core_category\".\"slug\" = 'mrs-shake-recent'", - ], - "request": { - "CONTENT_LENGTH": "331", - "CONTENT_TYPE": "application/vnd.api+json; charset=None", - "PATH_INFO": "/api/v1/categories/mrs-shake-recent", - "QUERY_STRING": "", - "REQUEST_METHOD": "PATCH", - "SERVER_PORT": "80", - }, - "response": { - "data": { - "attributes": { - "created-at": "2017-05-21T00:00:00Z", - "created-by-group": None, - "created-by-user": "admin", - "description": { - "de": "", - "en": "Bit among again across environment long line. Team suggest traditional boy above.", - "fr": "", - }, - "meta": {}, - "name": {"de": "", "en": "Jordan Mccarthy", "fr": ""}, - }, - "id": "mrs-shake-recent", - "type": "categories", - } - }, - "status": 200, -} - snapshots["test_api_patch[TagViewSet] 1"] = { "queries": [ - 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" WHERE "alexandria_core_tag"."slug" = \'mrs-shake-recent\'', - "UPDATE \"alexandria_core_tag\" SET \"created_at\" = '2017-05-21T00:00:00+00:00'::timestamptz, \"created_by_user\" = 'admin', \"created_by_group\" = NULL, \"meta\" = '{}', \"name\" = hstore(ARRAY['en','de','fr'], ARRAY['Jordan Mccarthy','','']), \"description\" = hstore(ARRAY['en','de','fr'], ARRAY['Bit among again across environment long line. Team suggest traditional boy above.','','']) WHERE \"alexandria_core_tag\".\"slug\" = 'mrs-shake-recent'", + 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."modified_at", "alexandria_core_tag"."modified_by_user", "alexandria_core_tag"."modified_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" WHERE "alexandria_core_tag"."slug" = \'mrs-shake-recent\'', + "UPDATE \"alexandria_core_tag\" SET \"created_at\" = '2017-05-21T00:00:00+00:00'::timestamptz, \"created_by_user\" = 'admin', \"created_by_group\" = 'admin', \"modified_at\" = '2017-05-21T00:00:00+00:00'::timestamptz, \"modified_by_user\" = 'admin', \"modified_by_group\" = 'admin', \"meta\" = '{}', \"name\" = hstore(ARRAY['en','de','fr'], ARRAY['Jordan Mccarthy','','']), \"description\" = hstore(ARRAY['en','de','fr'], ARRAY['Bit among again across environment long line. Team suggest traditional boy above.','','']) WHERE \"alexandria_core_tag\".\"slug\" = 'mrs-shake-recent'", ], "request": { - "CONTENT_LENGTH": "325", + "CONTENT_LENGTH": "411", "CONTENT_TYPE": "application/vnd.api+json; charset=None", "PATH_INFO": "/api/v1/tags/mrs-shake-recent", "QUERY_STRING": "", @@ -582,7 +685,7 @@ "data": { "attributes": { "created-at": "2017-05-21T00:00:00Z", - "created-by-group": None, + "created-by-group": "admin", "created-by-user": "admin", "description": { "de": "", @@ -590,6 +693,9 @@ "fr": "", }, "meta": {}, + "modified-at": "2017-05-21T00:00:00Z", + "modified-by-group": "admin", + "modified-by-user": "admin", "name": {"de": "", "en": "Jordan Mccarthy", "fr": ""}, }, "id": "mrs-shake-recent", @@ -598,49 +704,3 @@ }, "status": 200, } - -snapshots["test_api_destroy[DocumentViewSet] 1"] = { - "queries": [ - 'SELECT "alexandria_core_document"."created_at", "alexandria_core_document"."created_by_user", "alexandria_core_document"."created_by_group", "alexandria_core_document"."meta", "alexandria_core_document"."id", "alexandria_core_document"."name", "alexandria_core_document"."title", "alexandria_core_document"."description", "alexandria_core_document"."category_id" FROM "alexandria_core_document" WHERE "alexandria_core_document"."id" = \'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid', - 'SELECT "alexandria_core_document_tags"."id", "alexandria_core_document_tags"."document_id", "alexandria_core_document_tags"."tag_id" FROM "alexandria_core_document_tags" WHERE "alexandria_core_document_tags"."document_id" IN (\'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid)', - 'DELETE FROM "alexandria_core_document_tags" WHERE "alexandria_core_document_tags"."id" IN (1)', - 'DELETE FROM "alexandria_core_document" WHERE "alexandria_core_document"."id" IN (\'9dd4e461-268c-8034-f5c8-564e155c67a6\'::uuid)', - ], - "request": { - "PATH_INFO": "/api/v1/documents/9dd4e461-268c-8034-f5c8-564e155c67a6", - "QUERY_STRING": "", - "REQUEST_METHOD": "DELETE", - "SERVER_PORT": "80", - }, - "status": 204, -} - -snapshots["test_api_destroy[CategoryViewSet] 1"] = { - "queries": [ - 'SELECT "alexandria_core_category"."created_at", "alexandria_core_category"."created_by_user", "alexandria_core_category"."created_by_group", "alexandria_core_category"."meta", "alexandria_core_category"."slug", "alexandria_core_category"."name", "alexandria_core_category"."description" FROM "alexandria_core_category" WHERE "alexandria_core_category"."slug" = \'mrs-shake-recent\'', - 'SELECT "alexandria_core_document"."created_at", "alexandria_core_document"."created_by_user", "alexandria_core_document"."created_by_group", "alexandria_core_document"."meta", "alexandria_core_document"."id", "alexandria_core_document"."name", "alexandria_core_document"."title", "alexandria_core_document"."description", "alexandria_core_document"."category_id" FROM "alexandria_core_document" WHERE "alexandria_core_document"."category_id" IN (\'mrs-shake-recent\')', - 'DELETE FROM "alexandria_core_category" WHERE "alexandria_core_category"."slug" IN (\'mrs-shake-recent\')', - ], - "request": { - "PATH_INFO": "/api/v1/categories/mrs-shake-recent", - "QUERY_STRING": "", - "REQUEST_METHOD": "DELETE", - "SERVER_PORT": "80", - }, - "status": 204, -} - -snapshots["test_api_destroy[TagViewSet] 1"] = { - "queries": [ - 'SELECT "alexandria_core_tag"."created_at", "alexandria_core_tag"."created_by_user", "alexandria_core_tag"."created_by_group", "alexandria_core_tag"."meta", "alexandria_core_tag"."slug", "alexandria_core_tag"."name", "alexandria_core_tag"."description" FROM "alexandria_core_tag" WHERE "alexandria_core_tag"."slug" = \'mrs-shake-recent\'', - 'SELECT "alexandria_core_document_tags"."id", "alexandria_core_document_tags"."document_id", "alexandria_core_document_tags"."tag_id" FROM "alexandria_core_document_tags" WHERE "alexandria_core_document_tags"."tag_id" IN (\'mrs-shake-recent\')', - 'DELETE FROM "alexandria_core_tag" WHERE "alexandria_core_tag"."slug" IN (\'mrs-shake-recent\')', - ], - "request": { - "PATH_INFO": "/api/v1/tags/mrs-shake-recent", - "QUERY_STRING": "", - "REQUEST_METHOD": "DELETE", - "SERVER_PORT": "80", - }, - "status": 204, -}