from my.core.structure import match_structure from pathlib import Path structure_data: Path = Path(__file__).parent / "structure_data" gdpr_expected = ("comments", "messages/index.csv", "profile") def test_gdpr_structure_exists() -> None: with match_structure(structure_data, expected=gdpr_expected) as results: assert results == (structure_data / "gdpr_subdirs" / "gdpr_export",) def test_gdpr_unzip() -> None: with match_structure( structure_data / "gdpr_export.zip", expected=gdpr_expected ) as results: assert len(results) == 1 extracted = results[0] index_file = extracted / "messages" / "index.csv" assert index_file.read_text().strip() == "test message" # make sure the temporary directory this created no longer exists assert not extracted.exists()