"""Pytest fixtures for the fpcf conformance test suite. A single deterministic vector suite is generated once per test session into a temporary directory; most tests consume it read-only. Tests that need to mutate vectors on disk generate their own copy into a function-scoped ``tmp_path``. """ from __future__ import annotations from pathlib import Path import pytest from fpcf import vectors as fpcf_vectors from helpers import DEFAULT_SEED, load_json @pytest.fixture(scope="session") def vectors_dir(tmp_path_factory) -> Path: out = tmp_path_factory.mktemp("fpcf-vectors") fpcf_vectors.generate_vectors(out, seed=DEFAULT_SEED) return out @pytest.fixture(scope="session") def manifest(vectors_dir: Path) -> dict: return load_json(vectors_dir / "manifest.json")