fix backend tests, schema

This commit is contained in:
shamoon
2026-02-10 18:42:20 -08:00
parent 1d0e80c784
commit 8eb931f6f6
2 changed files with 36 additions and 4 deletions

View File

@@ -984,9 +984,8 @@ class TestPDFActions(DirectoriesMixin, TestCase):
"""
with self.assertLogs("paperless.bulk_edit", level="INFO") as cm:
result = bulk_edit.rotate([self.doc2.id, self.img_doc.id], 90)
output_str = cm.output[1]
expected_str = "Document 4 is not a PDF, skipping rotation"
self.assertIn(expected_str, output_str)
expected_str = f"Document {self.img_doc.id} is not a PDF, skipping rotation"
self.assertTrue(any(expected_str in line for line in cm.output))
self.assertEqual(mock_consume_delay.call_count, 1)
consumable, overrides = mock_consume_delay.call_args[0]
self.assertEqual(consumable.root_document_id, self.doc2.id)

View File

@@ -805,6 +805,15 @@ class DocumentViewSet(
)
return super().get_serializer(*args, **kwargs)
@extend_schema(
operation_id="documents_root",
responses=inline_serializer(
name="DocumentRootResponse",
fields={
"root_id": serializers.IntegerField(),
},
),
)
@action(methods=["get"], detail=True, url_path="root")
def root(self, request, pk=None):
try:
@@ -1494,6 +1503,13 @@ class DocumentViewSet(
"Error emailing documents, check logs for more detail.",
)
@extend_schema(
operation_id="documents_update_version",
request=DocumentVersionSerializer,
responses={
200: OpenApiTypes.STR,
},
)
@action(methods=["post"], detail=True, parser_classes=[parsers.MultiPartParser])
def update_version(self, request, pk=None):
serializer = DocumentVersionSerializer(data=request.data)
@@ -1552,10 +1568,27 @@ class DocumentViewSet(
"Error updating document, check logs for more detail.",
)
@extend_schema(
operation_id="documents_delete_version",
parameters=[
OpenApiParameter(
name="version_id",
type=OpenApiTypes.INT,
location=OpenApiParameter.PATH,
),
],
responses=inline_serializer(
name="DeleteDocumentVersionResult",
fields={
"result": serializers.CharField(),
"current_version_id": serializers.IntegerField(),
},
),
)
@action(
methods=["delete"],
detail=True,
url_path="versions/(?P<version_id>[^/.]+)",
url_path=r"versions/(?P<version_id>\d+)",
)
def delete_version(self, request, pk=None, version_id=None):
try: