fix: don't urljoin empty string (#34516)
This commit is contained in:
@@ -268,6 +268,9 @@ class UploadedFileSerializer(serializers.Serializer):
|
||||
"""
|
||||
Get the representation for SerializerMethodField `downloadUrl`
|
||||
"""
|
||||
if not obj.get("download_url"):
|
||||
return ""
|
||||
|
||||
return urljoin(settings.LMS_ROOT_URL, obj.get("download_url"))
|
||||
|
||||
|
||||
|
||||
@@ -503,6 +503,24 @@ class TestUploadedFileSerializer(TestCase):
|
||||
}
|
||||
assert data == expected_value
|
||||
|
||||
def test_no_download_url(self):
|
||||
"""Test UploadedFileSerializer in the case where a URL was not found"""
|
||||
input_data = {
|
||||
"download_url": "",
|
||||
"description": "Test description",
|
||||
"name": "Test name",
|
||||
"size": 78222,
|
||||
}
|
||||
|
||||
data = UploadedFileSerializer(input_data).data
|
||||
expected_value = {
|
||||
"downloadUrl": "",
|
||||
"description": input_data["description"],
|
||||
"name": input_data["name"],
|
||||
"size": input_data["size"],
|
||||
}
|
||||
assert data == expected_value
|
||||
|
||||
|
||||
@ddt.ddt
|
||||
class TestResponseSerializer(TestCase):
|
||||
|
||||
Reference in New Issue
Block a user