Explorar el Código

Fix: check the file name length. (#6083)

### What problem does this PR solve?

#6060

### Type of change

- [x] Bug Fix (non-breaking change which fixes an issue)
tags/v0.18.0
Kevin Hu hace 7 meses
padre
commit
5c8ad6702a
No account linked to committer's email address

+ 9
- 0
api/apps/sdk/doc.py Ver fichero

return get_result( return get_result(
message="No file selected!", code=settings.RetCode.ARGUMENT_ERROR message="No file selected!", code=settings.RetCode.ARGUMENT_ERROR
) )
if len(file_obj.filename.encode("utf-8")) >= 128:
return get_result(
message="File name should be less than 128 bytes.", code=settings.RetCode.ARGUMENT_ERROR
)
''' '''
# total size # total size
total_size = 0 total_size = 0
DocumentService.update_meta_fields(document_id, req["meta_fields"]) DocumentService.update_meta_fields(document_id, req["meta_fields"])


if "name" in req and req["name"] != doc.name: if "name" in req and req["name"] != doc.name:
if len(req["name"].encode("utf-8")) >= 128:
return get_result(
message="The name should be less than 128 bytes.",
code=settings.RetCode.ARGUMENT_ERROR,
)
if ( if (
pathlib.Path(req["name"].lower()).suffix pathlib.Path(req["name"].lower()).suffix
!= pathlib.Path(doc.name.lower()).suffix != pathlib.Path(doc.name.lower()).suffix

+ 2
- 3
sdk/python/test/test_http_api/test_file_management_within_dataset/test_upload_documents.py Ver fichero

# filename_length = 129 # filename_length = 129
fp = create_txt_file(tmp_path / f"{'a' * (DOCUMENT_NAME_LIMIT - 3)}.txt") fp = create_txt_file(tmp_path / f"{'a' * (DOCUMENT_NAME_LIMIT - 3)}.txt")
res = upload_documnets(get_http_api_auth, ids[0], [fp]) res = upload_documnets(get_http_api_auth, ids[0], [fp])
assert res["code"] == 500
assert res["code"] == 101
assert ( assert (
res["message"]
== f"{'a' * (DOCUMENT_NAME_LIMIT - 3)}.txt: Exceed the maximum length of file name!"
res["message"].find("128") >= 0
) )


def test_invalid_dataset_id(self, get_http_api_auth, tmp_path): def test_invalid_dataset_id(self, get_http_api_auth, tmp_path):

Cargando…
Cancelar
Guardar