Exercices Projets guidés E-commerce #6 : Simulation de paiement
🎉

Bravo!

Intermédiaire 🧠 Fondamentaux 20 XP 0 personnes ont réussi

E-commerce #6 : Simulation de paiement

En vrai, le paiement passe par une API externe (Stripe, PayPal...). Ici on simule les regles metier de differents moyens de paiement.

Chaque moyen de paiement a ses limites :
- Carte bancaire : maximum 1000 euros
- PayPal : maximum 500 euros
- Virement : pas de limite

Crée une classe ProcesseurPaiement avec :
- __init__(self, mode) : mode peut etre 'carte', 'paypal' ou 'virement'
- payer(montant, commande) -> bool :
- Si montant <= 0 : refuse (retourne False)
- Si carte et montant >= 1000 : refuse
- Si paypal et montant >= 500 : refuse
- Virement : accepte toujours
- Si accepte : met commande.statut = 'payee' et retourne True
- Sinon : retourne False

Exemple :
c = Commande()
pp = ProcesseurPaiement('carte')
pp.payer(Decimal('99'), c) # True, c.statut = 'payee'
pp.payer(Decimal('1500'), c) # False

Tests (2/4)

Carte OK
from decimal import Decimal
c = Commande()
pp = ProcesseurPaiement('carte')
assert pp.payer(Decimal('99'), c) == True
assert c.statut == 'payee'
Carte refusee
from decimal import Decimal
c = Commande()
pp = ProcesseurPaiement('carte')
assert pp.payer(Decimal('1500'), c) == False
assert c.statut != 'payee'

+ 0 tests cachés

Indices (3 disponibles)

solution.py