import sys import pathlib test_file = pathlib.Path(__file__) test_dir = test_file.parent project = test_dir.parent sys.path.append(str(project)) import server_source as source from test import test import asyncio import tortoise def prepare_dir() -> pathlib.Path: test = pathlib.Path(__file__).parent resources = test / pathlib.Path("test_resources") if not resources.exists() or not resources.is_dir(): resources.mkdir() for count in resources.iterdir(): if count.is_file(): count.unlink() return resources async def main(): global test_dir modules = { source.model.Meta.app: [ "server_source" ] } await tortoise.Tortoise.init( db_url = "sqlite://:memory:", modules = modules ) await tortoise.Tortoise.generate_schemas() content = "IyBVd1UKICogRmlyc3QgcG9pbnQKICogU2Vjb25kIHBvaW50Cg==" decoded = await source.encoded(content).decode() decoded = decoded.result() proxy = await source.attachments_directory(test_dir).store(decoded, "txt") proxy.set_name("Attach") proxy.set_description("That is it.") result = proxy.result() await result.save() in_file = await source.attachments_directory(test_dir).remove(result) test(in_file, decoded) await tortoise.Tortoise.close_connections() asyncio.run(main())