Closed JEGIR69 closed 1 year ago
J'aurais préféré static vu que ca fait plus de sens pis je retirerais le "throwifinvalid" des noms des fonctions
Validator
-Je passerais l'objet dans la méthode Validate au lieu de passer par le constructeur (Pourrais être pratique si on sort le call de Validate d'Offer (ce qui serait possible avec les repos)
- Je renommerais la classe pour {Object}ParamsValidator et changerais le nom de la fonction pour simplement 'validate'
Tests
Pas besoin de mettre test en avant de chaque fonction de test
- Il faudrait qu'on détermine un standard pour le nommage de fonction de tests
- Utiliser GoogleTruth quand c'est possible (et utile)
- Pour les validations de texte d'erreur, utiliser .Contains au lieu de .isEqualTo et prendre juste le nom du paramètre invalid
Bonnes suggestion de sortir le validateur pour l’inclure dans les repos, on pourrait transformer le validateur en factory comme ca on est sur à 100% que l’objet est valide toute sa vie (sinon on initie un objet possiblement invalide pour ensuite vérifier)
Validator
-Je passerais l'objet dans la méthode Validate au lieu de passer par le constructeur (Pourrais être pratique si on sort le call de Validate d'Offer (ce qui serait possible avec les repos)
- Je renommerais la classe pour {Object}ParamsValidator et changerais le nom de la fonction pour simplement 'validate'
Tests
Pas besoin de mettre test en avant de chaque fonction de test
- Il faudrait qu'on détermine un standard pour le nommage de fonction de tests
- Utiliser GoogleTruth quand c'est possible (et utile)
- Pour les validations de texte d'erreur, utiliser .Contains au lieu de .isEqualTo et prendre juste le nom du paramètre invalid
L'enjeu pour le renommage est que Product ne valide pas seulement ses paramètres, il dispose également d'une méthode pour vérifier si l'offre est éligible avant de l'ajouter à sa liste d'offres.
De plus, je suis en train de mettre toutes les fonctions en statique et d'ajuster leurs tests.
Validator
-Je passerais l'objet dans la méthode Validate au lieu de passer par le constructeur (Pourrais être pratique si on sort le call de Validate d'Offer (ce qui serait possible avec les repos)
- Je renommerais la classe pour {Object}ParamsValidator et changerais le nom de la fonction pour simplement 'validate'
Tests
Pas besoin de mettre test en avant de chaque fonction de test
- Il faudrait qu'on détermine un standard pour le nommage de fonction de tests
- Utiliser GoogleTruth quand c'est possible (et utile)
- Pour les validations de texte d'erreur, utiliser .Contains au lieu de .isEqualTo et prendre juste le nom du paramètre invalid
L'enjeu pour le renommage est que Product ne valide pas seulement ses paramètres, il dispose également d'une méthode pour vérifier si l'offre est éligible avant de l'ajouter à sa liste d'offres.
De plus, je suis en train de mettre toutes les fonctions en statique et d'ajuster leurs tests.
pas obliger de faire static si on fait comme anthony propose ou qu'on le transforme en factory
Added
OfferValidator
SellerValidator
ProductValidator
1) Take care of their respective class validation 2) Package only class 3) None Static class for easier test
Test
SellerTest
,OfferTest
andProductTest
has been updatedSellerValidatorTest
,OfferValidatorTest
andProductValidatorTest
has been added