34 lines
1.0 KiB
Python
34 lines
1.0 KiB
Python
|
|
from yuxi.knowledge.utils.kb_utils import prepare_item_metadata
|
||
|
|
|
||
|
|
|
||
|
|
async def test_prepare_item_metadata_preserves_uploaded_file_size():
|
||
|
|
item = "minio://knowledgebases/db/upload/demo.txt"
|
||
|
|
params = {
|
||
|
|
"content_hashes": {item: "hash"},
|
||
|
|
"file_sizes": {item: 1234},
|
||
|
|
}
|
||
|
|
|
||
|
|
metadata = await prepare_item_metadata(item, "file", "db", params=params)
|
||
|
|
|
||
|
|
assert metadata["size"] == 1234
|
||
|
|
assert "file_sizes" not in (metadata.get("processing_params") or {})
|
||
|
|
|
||
|
|
|
||
|
|
async def test_prepare_item_metadata_preserves_preprocessed_file_size():
|
||
|
|
item = "minio://knowledgebases/db/upload/page.html"
|
||
|
|
params = {
|
||
|
|
"_preprocessed_map": {
|
||
|
|
item: {
|
||
|
|
"path": item,
|
||
|
|
"content_hash": "hash",
|
||
|
|
"filename": "https://example.com",
|
||
|
|
"file_size": 5678,
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
metadata = await prepare_item_metadata(item, "file", "db", params=params)
|
||
|
|
|
||
|
|
assert metadata["size"] == 5678
|
||
|
|
assert "_preprocessed_map" not in (metadata.get("processing_params") or {})
|