Issue 3183: Error when uploading an image (as attachment) with a name of 254 chars
parent
54423c29c2
commit
59d05a3d7e
|
@ -54,7 +54,7 @@ def generate_random_hex_color():
|
|||
def get_user_file_path(instance, filename):
|
||||
basename = path.basename(filename).lower()
|
||||
base, ext = path.splitext(basename)
|
||||
base = slugify(unidecode(base))
|
||||
base = slugify(unidecode(base))[0:100]
|
||||
basename = "".join([base, ext])
|
||||
|
||||
hs = hashlib.sha256()
|
||||
|
|
|
@ -175,6 +175,50 @@ def test_cancel_self_user_with_invalid_token(client):
|
|||
assert response.status_code == 400
|
||||
|
||||
|
||||
def test_change_avatar(client):
|
||||
url = reverse('users-change-avatar')
|
||||
|
||||
user = f.UserFactory()
|
||||
client.login(user)
|
||||
|
||||
with NamedTemporaryFile() as avatar:
|
||||
# Test no avatar send
|
||||
post_data = {}
|
||||
response = client.post(url, post_data)
|
||||
assert response.status_code == 400
|
||||
|
||||
# Test invalid file send
|
||||
post_data = {
|
||||
'avatar': avatar
|
||||
}
|
||||
response = client.post(url, post_data)
|
||||
assert response.status_code == 400
|
||||
|
||||
# Test empty valid avatar send
|
||||
avatar.write(DUMMY_BMP_DATA)
|
||||
avatar.seek(0)
|
||||
response = client.post(url, post_data)
|
||||
assert response.status_code == 200
|
||||
|
||||
|
||||
def test_change_avatar_with_long_file_name(client):
|
||||
url = reverse('users-change-avatar')
|
||||
user = f.UserFactory()
|
||||
|
||||
with NamedTemporaryFile(delete=False) as avatar:
|
||||
avatar.name=500*"x"+".bmp"
|
||||
avatar.write(DUMMY_BMP_DATA)
|
||||
avatar.seek(0)
|
||||
|
||||
client.login(user)
|
||||
post_data = {'avatar': avatar}
|
||||
response = client.post(url, post_data)
|
||||
|
||||
print(response.data)
|
||||
|
||||
assert response.status_code == 200
|
||||
|
||||
|
||||
@pytest.mark.django_db(transaction=True)
|
||||
def test_change_avatar_removes_the_old_one(client):
|
||||
url = reverse('users-change-avatar')
|
||||
|
|
Loading…
Reference in New Issue