mirror of
https://github.com/jwinterm/modoboa.git
synced 2026-10-17 05:41:25 +02:00
Improved coverage
This commit is contained in:
@@ -291,6 +291,12 @@ class UserEmailViewSetTestCase(WebmailTestCase):
|
||||
self.assertEqual(response.status_code, 200)
|
||||
self.assertTrue(response.json()["subject"].startswith("Fwd:"))
|
||||
|
||||
def test_attachment(self):
|
||||
self.authenticate()
|
||||
url = reverse("v2:webmail-email-attachment")
|
||||
response = self.client.get(url)
|
||||
self.assertEqual(response.status_code, 404)
|
||||
|
||||
|
||||
class ComposeSessionViewSetTestCase(WebmailTestCase):
|
||||
|
||||
|
||||
@@ -19,21 +19,19 @@ class UserMailboxViewSet(viewsets.GenericViewSet):
|
||||
permission_classes = (IsAuthenticated, HasMailbox)
|
||||
|
||||
def get_serializer_class(self):
|
||||
if self.action == "list":
|
||||
return serializers.UserMailboxesSerializer
|
||||
if self.action == "quota":
|
||||
return serializers.UserMailboxQuotaSerializer
|
||||
if self.action in ["create", "compress", "empty", "delete"]:
|
||||
return serializers.UserMailboxInputSerializer
|
||||
if self.action == "rename":
|
||||
return serializers.UserMailboxUpdateSerializer
|
||||
return serializers.UserMailboxSerializer
|
||||
return serializers.UserMailboxesSerializer
|
||||
|
||||
def list(self, request):
|
||||
parent_mailbox = request.GET.get("mailbox")
|
||||
imapc = lib.get_imapconnector(request)
|
||||
mboxes = imapc.getmboxes(request.user, parent_mailbox)
|
||||
serializer = serializers.UserMailboxesSerializer(
|
||||
serializer = self.get_serializer(
|
||||
{"mailboxes": mboxes, "hdelimiter": imapc.hdelimiter}
|
||||
)
|
||||
return response.Response(serializer.data)
|
||||
@@ -154,7 +152,7 @@ class UserEmailViewSet(viewsets.GenericViewSet):
|
||||
|
||||
def move_selection(self, request, destination: str) -> int:
|
||||
"""Move selected messages to the given mailbox."""
|
||||
serializer = serializers.MoveSelectionSerializer(data=request.data)
|
||||
serializer = self.get_serializer(data=request.data)
|
||||
serializer.is_valid(raise_exception=True)
|
||||
mbc = lib.get_imapconnector(request)
|
||||
mbc.move(
|
||||
@@ -201,7 +199,7 @@ class UserEmailViewSet(viewsets.GenericViewSet):
|
||||
serializer_class=serializers.FlagSelectionSerializer,
|
||||
)
|
||||
def flag(self, request):
|
||||
serializer = serializers.FlagSelectionSerializer(data=request.data)
|
||||
serializer = self.get_serializer(data=request.data)
|
||||
serializer.is_valid(raise_exception=True)
|
||||
imapc = lib.get_imapconnector(request)
|
||||
getattr(imapc, f"mark_messages_{serializer.validated_data['status']}")(
|
||||
|
||||
Reference in New Issue
Block a user