from pathlib import Path import pytest from scripts.benchmark_import import UnsafeBenchmarkEnvironment, validate_benchmark_identity def _database(name: str, host: str = "127.0.0.1") -> dict[str, str]: return { "ENGINE": "django.db.backends.postgresql", "NAME": name, "HOST": host, } def test_benchmark_identity_accepts_only_isolated_postgres() -> None: validate_benchmark_identity( _database("vacatureradar_bench_release_0314"), "https://benchmark.invalid" ) @pytest.mark.parametrize( ("database", "public_url"), [ (_database("vacatureradar"), "https://benchmark.invalid"), ( _database("vacatureradar_bench_release", "database.internal"), "https://benchmark.invalid", ), (_database("vacatureradar_bench_release"), "https://vacatureradar.itworx.tech"), ( {"ENGINE": "django.db.backends.sqlite3", "NAME": Path("bench.sqlite3"), "HOST": ""}, "https://benchmark.invalid", ), ], ) def test_benchmark_identity_rejects_unsafe_targets( database: dict[str, object], public_url: str ) -> None: with pytest.raises(UnsafeBenchmarkEnvironment): validate_benchmark_identity(database, public_url)