Je suis en train d'écrire quelques cas de test, et j'ai un cas de test qui utilise des objets Mock. Je dois vérifier si deux méthodes de classe sont appelées d'une autre méthode de classe. Voici ce que je l'ai fait:Problème de simulacre SimpleTest
D'abord, je généré le Mock:
Mock::generate('Parser');
Puis, à l'intérieur de mon test, j'ai appelé:
$P = new MockParser();
$P->expectOnce('loadUrl', array('http://url'));
$P->expectOnce('parse');
$P->fetchAndParse('http://url');
Mon code de mise en œuvre ressemble:
public function fetchAndParse($url) {
$this->loadUrl($url);
$this->parse();
}
Et les méthodes loadUrl et parse() existent certainement. Je reçois deux échecs lors de mes tests, tous les deux me disant "Le nombre d'appels attendu pour [loadUrl] était de [1] [0]". Je n'ai aucune idée de ce qui se passe - les méthodes sont appelées depuis cette fonction!
Merci,
Jamie
C'est vraiment utile - cela signifie que je dois changer un peu de code, mais au moins je sais maintenant ce qui se passe! Merci! –