There's probably a clever way to support this, but I'm not sure it's worth the time. Here's something that fails:
def get_alliance_stations() -> list[str]:
stations = (1, 2, 3)
if "CI" in os.environ: # pragma: no branch
return [
f"{alliance}{station}"
for alliance in ("Blue", "Red")
for station in stations
]
else: # pragma: no cover
return [f"Blue{random.choice(stations)}", f"Red{random.choice(stations)}"]
@pytest.mark.parametrize("station", get_alliance_stations())
def test_fuzz(control: TestController, station: str) -> None:
...