diff --git a/app/filters/circuit.py b/app/filters/circuit.py index 5349fb4d..e2727e43 100644 --- a/app/filters/circuit.py +++ b/app/filters/circuit.py @@ -19,6 +19,7 @@ class CircuitFilterMixin: build_category__in: list[CircuitBuildCategory] | None = None target_simulator: TargetSimulator | None = None + target_simulator__in: list[TargetSimulator] | None = None class NestedCircuitFilter( diff --git a/tests/test_circuit.py b/tests/test_circuit.py index 0259682f..9b5e9b59 100644 --- a/tests/test_circuit.py +++ b/tests/test_circuit.py @@ -396,6 +396,16 @@ def test_filtering(client, root_circuit, models): ).json()["data"] assert len(data) == 2 # 2 of the 6 children use NEURON; root_circuit uses CORENEURON + data = assert_request( + client.get, + url=ROUTE, + params={ + "root_circuit_id": str(root_circuit.id), + "target_simulator__in": [TargetSimulator.neuron, TargetSimulator.brian2], + }, + ).json()["data"] + assert len(data) == 3 # NEURON x2 + Brian2 x1 among the children + data = assert_request( client.get, url=ROUTE,