From 888df27dc3ae5096128cdd716b783f9696953f46 Mon Sep 17 00:00:00 2001 From: Mahdi Date: Sat, 12 Jul 2025 03:46:58 +0330 Subject: [PATCH] test: skip image file size validator tests if Pillow is not installed - Remove top-level PIL import from tests/test_validators.py - Conditionally import PIL inside image-related tests and skip them if Pillow is unavailable --- tests/test_validators.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/tests/test_validators.py b/tests/test_validators.py index f583b1ede..029ab68a8 100644 --- a/tests/test_validators.py +++ b/tests/test_validators.py @@ -8,7 +8,6 @@ from django import VERSION as django_version from django.core.files.uploadedfile import SimpleUploadedFile from django.db import DataError, models from django.test import TestCase -from PIL import Image from rest_framework import serializers from rest_framework.exceptions import ValidationError @@ -1186,6 +1185,11 @@ class TestFileSizeValidatorIntegration(TestCase): assert 'min_file_size' in serializer.errors['file'][0].code def test_imagefield_max_size(self): + try: + from PIL import Image + except ImportError: + pytest.skip("PIL not available") + class ImageSerializer(serializers.Serializer): image = serializers.ImageField(validators=[MaxFileSizeValidator(1024)]) @@ -1207,6 +1211,11 @@ class TestFileSizeValidatorIntegration(TestCase): assert 'max_file_size' in serializer.errors['image'][0].code def test_imagefield_min_size(self): + try: + from PIL import Image + except ImportError: + pytest.skip("PIL not available") + class ImageSerializer(serializers.Serializer): image = serializers.ImageField(validators=[MinFileSizeValidator(100)])