Skip to content

Commit

Permalink
Add code_liste as query string
Browse files Browse the repository at this point in the history
  • Loading branch information
amandine-sahl committed Oct 26, 2023
1 parent 9b296c3 commit 65f4431
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 1 deletion.
8 changes: 8 additions & 0 deletions apptax/taxonomie/routestaxref.py
Original file line number Diff line number Diff line change
Expand Up @@ -342,6 +342,7 @@ def get_AllTaxrefNameByListe(id_liste=None):
params URL:
- id_liste : identifiant de la liste (si id_liste est null ou = à -1 on ne prend pas de liste)
params GET (facultatifs):
- code_liste : code de la liste à filtrer, n'est pris en compte que si aucune liste est spécifiée
- search_name : nom recherché. Recherche basée sur la fonction
ilike de SQL avec un remplacement des espaces par %
- regne : filtre sur le règne INPN
Expand All @@ -359,6 +360,13 @@ def get_AllTaxrefNameByListe(id_liste=None):
CorNomListe,
and_(CorNomListe.id_nom == BibNoms.id_nom, CorNomListe.id_liste == id_liste),
)
elif request.args.get("code_liste"):
q = (
db.session.query(BibListes.id_liste).filter(
BibListes.code_liste == request.args.get("code_liste")
)
).one()
id_liste = q[0]

search_name = request.args.get("search_name")
if search_name:
Expand Down
12 changes: 11 additions & 1 deletion apptax/tests/test_taxref.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ class TestAPITaxref:
def test_get_allnamebyListe_routes(self):
query_string = {"limit": 10}
response = self.client.get(
url_for("taxref.get_AllTaxrefNameByListe", id_liste="100"), query_string=query_string
url_for("taxref.get_AllTaxrefNameByListe", id_liste=100), query_string=query_string
)
assert response.status_code == 200
data = response.json
Expand All @@ -48,6 +48,16 @@ def test_get_allnamebyListe_routes_without_list(self):
if data:
assert self.schema_allnamebyListe.is_valid(data)

def test_get_allnamebyListe_routes_with_code(self):
query_string = {"limit": 10, "code_list": "100"}
response = self.client.get(
url_for("taxref.get_AllTaxrefNameByListe", id_liste=None), query_string=query_string
)
assert response.status_code == 200
data = response.json
if data:
assert self.schema_allnamebyListe.is_valid(data)

def test_get_distinct_routes(self):
response = self.client.get(url_for("taxref.getDistinctField", field="regne"))
assert response.status_code == 200
Expand Down

0 comments on commit 65f4431

Please sign in to comment.