Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Permettre d'appeler les routes de la carte autant en rendu HTML qu'en API #1112

Draft
wants to merge 2 commits into
base: main
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .secrets.baseline
Original file line number Diff line number Diff line change
Expand Up @@ -151,7 +151,7 @@
"filename": "core/settings.py",
"hashed_secret": "1ee34e26aeaf89c64ecc2c85efe6a961b75a50e9",
"is_verified": false,
"line_number": 211
"line_number": 212
}
],
"docker-compose.yml": [
Expand Down Expand Up @@ -207,5 +207,5 @@
}
]
},
"generated_at": "2024-12-04T10:44:03Z"
"generated_at": "2024-12-05T16:05:16Z"
}
1 change: 1 addition & 0 deletions core/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@
"qfdmd",
"qfdmo",
"corsheaders",
"rest_framework",
]

# FIXME : check if we can manage django forms templating with jinja2
Expand Down
2 changes: 1 addition & 1 deletion core/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
from qfdmo.models.action import get_directions


def get_direction(request, is_carte=False):
def get_direction(request, is_carte: bool = False) -> str | None:
default_direction = None if is_carte else settings.DEFAULT_ACTION_DIRECTION
direction = request.GET.get("direction", default_direction)
if direction not in [d["code"] for d in get_directions()]:
Expand Down
17 changes: 8 additions & 9 deletions integration_tests/qfdmo/test_adresses_view.py
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ def proposition_service_donner(action_donner, sous_categorie):
@pytest.fixture
def displayed_acteur_reparer(proposition_service_reparer):
displayed_acteur = DisplayedActeurFactory(
exclusivite_de_reprisereparation=True,
exclusivite_de_reprisereparation=False,
location=Point(1, 1),
statut=ActeurStatus.ACTIF,
)
Expand All @@ -86,7 +86,6 @@ def displayed_acteur_reparer(proposition_service_reparer):

@pytest.fixture
def displayed_acteur_reparacteur(displayed_acteur_reparer):

reparacteur = LabelQualiteFactory(code="reparacteur")
displayed_acteur_reparer.labels.add(reparacteur)
return displayed_acteur_reparer
Expand Down Expand Up @@ -171,12 +170,11 @@ def test_filtre_reparacteur_return_0_acteur(
"action_list": [action_reparer.code],
"latitude": [1],
"longitude": [1],
"label_reparacteur": ["true"],
"label_reparacteur": ["on"],
}
)
adresses_view.setup(request)
context = adresses_view.get_context_data()

assert context["acteurs"].count() == 0

def test_filtre_reparacteur_return_1_reparacteur(
Expand All @@ -188,12 +186,11 @@ def test_filtre_reparacteur_return_1_reparacteur(
"action_list": [action_reparer.code],
"latitude": [1],
"longitude": [1],
"label_reparacteur": ["true"],
"label_reparacteur": ["on"],
}
)
adresses_view.setup(request)
context = adresses_view.get_context_data()

assert context["acteurs"].count() == 1

def test_filtre_reparacteur_return_1_noreparacteur(
Expand All @@ -209,7 +206,7 @@ def test_filtre_reparacteur_return_1_noreparacteur(
"action_list": [f"{action_reparer.code}|{action_donner.code}"],
"latitude": [1],
"longitude": [1],
"label_reparacteur": ["true"],
"label_reparacteur": ["on"],
}
)
adresses_view.setup(request)
Expand Down Expand Up @@ -279,13 +276,15 @@ def test_no_action_reparer_excludes_acteurs_avec_exclusivite(
def test_action_reparer_excludes_acteurs_avec_exclusivite_by_default(
self, adresses_view, displayed_acteur_reparer, action_reparer, action_preter
):
displayed_acteur_reparer.exclusivite_de_reprisereparation = True
displayed_acteur_reparer.save()
request = HttpRequest()
request.GET = query_dict_from(
{
"action_list": [f"{action_reparer.code}|{action_preter.code}"],
"latitude": [1],
"longitude": [1],
"pas_exclusivite_reparation": ["true"],
"pas_exclusivite_reparation": ["on"],
}
)
adresses_view.setup(request)
Expand Down Expand Up @@ -355,7 +354,7 @@ def test_action_filters(
"action_list": [f"{action_reparer.code}|{action_preter.code}"],
"latitude": [1],
"longitude": [1],
"sc_id": [sous_categorie.id],
"sc_id": [str(sous_categorie.id)],
"carte": carte,
}
)
Expand Down
10 changes: 5 additions & 5 deletions integration_tests/qfdmo/test_reemploi_solution.py
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,10 @@ class TestInitialValue:
"digital": "0",
"latitude": None,
"longitude": None,
"label_reparacteur": None,
"ess": None,
"bonus": None,
"bounding_box": None,
"label_reparacteur": False,
"ess": False,
"bonus": False,
"bounding_box": "",
"pas_exclusivite_reparation": True,
"action_displayed": (
"preter|emprunter|louer|mettreenlocation|reparer|donner|echanger"
Expand All @@ -39,7 +39,6 @@ class TestInitialValue:
"preter|emprunter|louer|mettreenlocation|reparer|donner|echanger"
"|acheter|revendre"
),
"epci_codes": [],
}

def test_formulaire_without_parameters(self, client):
Expand Down Expand Up @@ -85,4 +84,5 @@ def test_carte_without_parameters(self, client):
"acheter|revendre",
"trier",
],
"epci_codes": [],
}
1 change: 0 additions & 1 deletion qfdmo/models/acteur.py
Original file line number Diff line number Diff line change
Expand Up @@ -229,7 +229,6 @@ def in_bbox(self, bbox):
def from_center(self, longitude, latitude):
reference_point = Point(float(longitude), float(latitude), srid=4326)
distance_in_degrees = settings.DISTANCE_MAX / 111320

return (
self.physical()
.annotate(distance=Distance("location", reference_point))
Expand Down
9 changes: 9 additions & 0 deletions qfdmo/serializers/acteur.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
from rest_framework import serializers

from qfdmo.models.acteur import Acteur


class ActeurSerializer(serializers.ModelSerializer):
class Meta:
model = Acteur
fields = "__all__"
Loading
Loading