Observateurs de tests unitaires à Magento


14

Comment abordez-vous les observateurs de tests unitaires dans Magento? (en collaboration avec EcomDev_PHPUnit )

Quels types d'affirmations incluent-ils?

  • vérifier si l'événement est distribué ( assertEventDispatched())
  • vérifier la fonction avec des données factices
  • ...

Idéalement, j'aimerais voir l'opinion d'autres développeurs concernant l'approche et les affirmations faites.


Exactement ça. Vérifiez si votre événement est distribué, puis appelez simplement la méthode d'observateur avec des données factices et vérifiez qu'elle est correcte. Idéalement, vous devriez vérifier que l'observateur est configuré pour l'événement correct
Fabian Blechschmidt

Réponses:


5

J'aime également m'assurer que l'observateur est effectivement appelé lors d'une action appropriée, par exemple lorsque vous envoyez un catalog_product_save_after, puis faites quelque chose comme:

// initialize $mock as your observer
$mock->expects($this->once())
     ->method('catalogProductSaveAfter')
     ->will($this->returnSelf()); // the observer usually returns itself
$product = Mage::getModel('catalog/product')->load(4);
// Do action which should dispatch your event once
$product->setName("test")->save();

Cela échouera si votre méthode n'est pas appelée une seule fois.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.