forked from pierront/mylibrary-template
72 lines
6.7 KiB
Gherkin
72 lines
6.7 KiB
Gherkin
Feature: Gestion des commandes de livres
|
|
#1€ = 1 pts de fidélité
|
|
#format AAAA-MM-JJ
|
|
Background:
|
|
Given le système contient les commandes suivantes :
|
|
| commandeId | clientId | livreId | quantite | montantTotal | pointsFideliteGagnes | modePaiement | rue | ville | codePostal | pays |
|
|
| cde12345-6789-abcd-ef01-234567890abc | 123e4567-e89b-12d3-a456-426614174000 | 9781234567890 | 1 | 20.50 | 21 | CB | 10 Rue Victor Hugo | Paris | 75001 | France |
|
|
| cde23456-7890-bcde-f012-345678901bcd | 456e7891-a23c-34d5-b678-526714174111 | 9785678901234 | 2 | 17.98 | 18 | PAYPAL | 22 Avenue de la Gare | Lyon | 69002 | France |
|
|
| cde34567-9012-cdef-1234-567890123def | 789e0123-b45d-56e7-c890-626814174222 | 9782253004201 | 1 | 9.90 | 10 | CB | 5 Rue Lafayette | Lille | 59000 | France |
|
|
And les livres suivants :
|
|
| isbn | titre | auteur | editeur | datePublication | prix | stockInitial | categories | description | langue |
|
|
| 9782253004201 | Les Fleurs du Mal | Charles Baudelaire | Garnier-Flammarion | 1857-06-25 | 9.90 | 15 | Poésie, Classique | Recueil de poèmes symbolistes | Français |
|
|
| 9781234567890 | L'Ombre du Vent | Carlos Ruiz Zafón | Actes Sud | 2001-04-01 | 20.50 | 10 | Roman, Drame | Un livre sur les souvenirs | Français |
|
|
| 9785678901234 | Le Petit Prince | Antoine de Saint-Exupéry | Folio | 1943-04-06 | 8.99 | 1 | Jeunesse, Philosophie | Un conte intemporel | Français |
|
|
And les clients suivants :
|
|
| prenom | nom | numeroTelephone | pointsFidelite |
|
|
| Marie | Dupont | 0612345678 | 100 |
|
|
| Jean | Martin | 0687654321 | 50 |
|
|
| Sophie | Dubois | 0698765432 | 0 |
|
|
|
|
Scenario: Passer une nouvelle commande
|
|
When un client passe une commande avec les informations suivantes :
|
|
| clientId | livreId | quantite | modePaiement | rue | ville | codePostal | pays |
|
|
| abc12345-def6-7890-gh12-ijk345678900 | 9782253004201 | 1 | CB | 21 Avenue Paul Eluard | Bobigny | 93000 | France |
|
|
Then une nouvelle commande est enregistrée avec les détails suivants :
|
|
| commandeId | montantTotal | pointsFideliteGagnes |
|
|
| cde45678-0123-def0-2345-678901234efg | 9.90 | 10 |
|
|
|
|
Scenario: Modifier une commande existante
|
|
When l'utilisateur modifie la commande avec l'ID "cde12345-6789-abcd-ef01-234567890abc" en mettant à jour les informations suivantes :
|
|
| quantite | modePaiement |
|
|
| 2 | POINTS_FIDELITE |
|
|
Then la commande avec l'ID "cde12345-6789-abcd-ef01-234567890abc" doit avoir les nouvelles informations suivantes :
|
|
| commandeId | clientId | livreId | quantite | montantTotal | pointsFideliteGagnes | modePaiement | rue | ville | codePostal | pays |
|
|
| cde12345-6789-abcd-ef01-234567890abc | 123e4567-e89b-12d3-a456-426614174000 | 9781234567890 | 2 | 41.00 | 41 | POINTS_FIDELITE | 10 Rue Victor Hugo | Paris | 75001 | France |
|
|
|
|
Scenario: Supprimer une commande
|
|
When l'utilisateur supprime la commande avec l'ID "cde23456-7890-bcde-f012-345678901bcd"
|
|
Then la commande avec l'ID "cde23456-7890-bcde-f012-345678901bcd" ne doit plus exister dans le système
|
|
And la liste des commandes doit être mise à jour comme suit :
|
|
| commandeId | clientId | livreId | quantite | montantTotal | pointsFideliteGagnes | modePaiement | rue | ville | codePostal | pays |
|
|
| cde12345-6789-abcd-ef01-234567890abc | 123e4567-e89b-12d3-a456-426614174000 | 9781234567890 | 1 | 20.50 | 21 | CB | 10 Rue Victor Hugo | Paris | 75001 | France |
|
|
| cde34567-9012-cdef-1234-567890123def | 789e0123-b45d-56e7-c890-626814174222 | 9782253004201 | 1 | 9.90 | 10 | CB | 5 Rue Lafayette | Lille | 59000 | France |
|
|
| cde45678-0123-def0-2345-678901234efg | abc12345-def6-7890-gh12-ijk345678900 | 9782253004201 | 1 | 9.90 | 10 | CB | 21 Avenue Paul Eluard | Bobigny | 93000 | France |
|
|
|
|
#Demander a Maxime : comment faire en sorte de faire le paiement? on regarde les infos du client avec l'uuid ou le num?
|
|
Scenario: Tentative de paiement avec des points de fidélité insuffisants
|
|
When le client "456e7891-a23c-34d5-b678-526714174111" tente de passer une commande avec les informations suivantes :
|
|
| livreId | quantite | modePaiement | rue | ville | codePostal | pays |
|
|
| 9782253004201 | 1 | POINTS_FIDELITE | 30 Boulevard Haussmann | Paris | 75009 | France |
|
|
Then le paiement échoue
|
|
And je reçois un message d'erreur indiquant "Impossible d'utiliser 200 points alors que le solde est de 50 point"
|
|
And le client "456e7891-a23c-34d5-b678-526714174111" possède toujours 50 point de fidélité
|
|
|
|
Scenario: Tentative de paiement avec un moyen de paiement invalide
|
|
When le client "123e4567-e89b-12d3-a456-426614174000" tente de passer une commande avec les informations suivantes :
|
|
| livreId | quantite | modePaiement | rue | ville | codePostal | pays |
|
|
| 9782253004201 | 1 | CRYPTO | 12 Rue des Lilas | Nantes | 44000 | France |
|
|
Then le paiement échoue
|
|
And je reçois un message d'erreur indiquant "Mode de paiement invalide : CRYPTO n'est pas accepté"
|
|
And aucune nouvelle commande n'est enregistrée
|
|
|
|
Scenario: Tentative de commande avec un stock insuffisant
|
|
Given le livre avec l'ISBN "9785678901234" n'a que 1 exemplaire en stock
|
|
When le client "456e7891-a23c-34d5-b678-526714174111" tente de passer une commande avec les informations suivantes :
|
|
| livreId | quantite | modePaiement | rue | ville | codePostal | pays |
|
|
| 9785678901234 | 2 | CB | 18 Place du Capitole | Toulouse | 31000 | France |
|
|
Then la commande échoue
|
|
And je reçois un message d'erreur indiquant "Stock insuffisant : seulement 1 exemplaire disponible"
|
|
And aucune nouvelle commande n'est enregistrée
|
|
|