Le but de ce test est de réaliser une api pour un site de vente de produits comme LeBonCoin.
Vous commencez le projet avec un symfony skeleton, vous disposez aussi d'un docker-compose.
Ce test à pour but de voir votre logique de code. Il n'y a pas de mauvaise réponse, faites le comme si vous codiez naturellement.
Merci de ne pas utiliser de librairies externes telles que api-platform.
Vous avez deux heures pour effectuer ce test, bien entendu nous ne pourrons pas vérifier si vous y passez 42h ou 30mn, mais ça vous donne une indication. Ne restez pas bloqué trop longtemps sur un sujet, n'hésitez pas à faire ce qui vous semble le plus simple en premier. Il vaut mieux rendre du code qualitatif quitte à ne pas avoir couvert toutes les demandes que de rendre un code bancal.
Avant de commencer, faites un fork du projet. C'est ce fork qui servira de rendu pour ce test.
Un utilisateur pourra ajouter un produit à vendre (/advert) avec ces informations :
- Titre de l'annonce
- Description du produit
- Prix de vente
- Code postal
- Ville de vente
Un utilisateur pourra supprimer une annonce (/advert/{id}).
la suppression rend l'annonce inactive
Un utilisateur pourra modifier les informations d'une annonce (/advert/{id}).
Le titre de l'annonce ne peut pas être modifié.
Un utilisateur pourra récupérer la liste des annonces (/advert).
Un utilisateur pourra récupérer les informations d'une annonces (/advert/{id}) avec son id associé.
Un utilisateur pourra chercher une annonce (/advert/search).
- title
- price min
- price max
Un utilisateur pourra supprimer une annonce (/advert/{id}).
La suppression rend l’annonce inactive
Un utilisateur pourra s'enregistrer (/register) avec au minimum :
- Nom
- Prénom
- Numéro de téléphone
- Mot de passe
lors de la création, l'utilisateur appartient au groupe
USER
Par défaut, l'utilisateur appartiendra au groupe USER.
Un utilisateur pourra se connecter (/login) avec ses identifiants :
- Password
Les routes ne sont accessibles qu'à des utilisateurs connectés