fabi / backend /tests /test_utils.py
Osman2010
Deploy DataLine with Gemini integration to HF Spaces
9470652
import os
from fastapi import UploadFile
from dataline.config import config
from dataline.utils.utils import generate_short_uuid, is_valid_sqlite_file
def test_valid_sqlite_file_validation() -> None:
# Test for valid sqlite file
file_path = config.sample_dvdrental_path
with open(file_path, "rb") as file:
upload_file = UploadFile(file)
assert is_valid_sqlite_file(upload_file) is True
def test_invalid_sqlite_file_validation() -> None:
# Test for invalid sqlite file
# Create new file with random input
file_path = "test.db"
with open(file_path, "wb") as file:
file.write(b"random input here")
with open(file_path, "rb") as file:
upload_file = UploadFile(file)
assert is_valid_sqlite_file(upload_file) is False
# Clean up
os.remove(file_path)
def test_generate_short_uuid() -> None:
short_uuid = generate_short_uuid()
assert len(short_uuid) == 8
assert isinstance(short_uuid, str)
def test_generate_short_uuid_uniqueness() -> None:
short_uuid = generate_short_uuid()
short_uuid2 = generate_short_uuid()
assert short_uuid != short_uuid2