Fix this too

This commit is contained in:
shamoon
2026-01-26 17:23:07 -08:00
parent 517349c3af
commit 7fcadd2887
2 changed files with 20 additions and 11 deletions

View File

@@ -156,6 +156,19 @@ class ShareLinkBundleAPITests(DirectoriesMixin, APITestCase):
self.assertEqual(response.status_code, status.HTTP_202_ACCEPTED)
def test_download_failed_bundle_returns_503(self):
bundle = ShareLinkBundle.objects.create(
slug="failedslug",
file_version=ShareLink.FileVersion.ARCHIVE,
status=ShareLinkBundle.Status.FAILED,
)
bundle.documents.set([self.document])
self.client.logout()
response = self.client.get(f"/share/{bundle.slug}/")
self.assertEqual(response.status_code, status.HTTP_503_SERVICE_UNAVAILABLE)
def test_expired_share_link_redirects(self):
share_link = ShareLink.objects.create(
slug="expiredlink",

View File

@@ -2939,16 +2939,10 @@ class SharedLinkView(View):
if bundle.expiration is not None and bundle.expiration < timezone.now():
return HttpResponseRedirect("/accounts/login/?sharelink_expired=1")
file_path = bundle.absolute_file_path
if (
bundle.status
in {
ShareLinkBundle.Status.PENDING,
ShareLinkBundle.Status.PROCESSING,
}
or file_path is None
):
if bundle.status in {
ShareLinkBundle.Status.PENDING,
ShareLinkBundle.Status.PROCESSING,
}:
return HttpResponse(
_(
"The share link bundle is still being prepared. Please try again later.",
@@ -2956,7 +2950,9 @@ class SharedLinkView(View):
status=status.HTTP_202_ACCEPTED,
)
if bundle.status == ShareLinkBundle.Status.FAILED:
file_path = bundle.absolute_file_path
if bundle.status == ShareLinkBundle.Status.FAILED or file_path is None:
return HttpResponse(
_(
"The share link bundle is unavailable.",