J'essaie d'écrire des tests unitaires pour une fonction qui lit un fichier json dans un objet. J'ai lu le fichier avecnœud: se moquer d'une fonction avec un argument de rappel
jsonfile.readFile(filename, function (err, obj) {
//...
});
Pour mes tests unitaires, je veux railler cette fonction de sorte que, plutôt que de lire réellement le fichier, il suffit de retourner un bloc fixe JSON et passer dans le rappel.
Ce qui me pose problème, c'est comment se moquer de la fonction. J'ai vu sinon, qui dit qu'il supporte les fonctions moqueuses, mais je ne trouve rien qui décrive comment définir un comportement personnalisé pour la fonction que je moque. Sinon ressemble à ce qui me permet de définir ce que je veux que la fonction retourne, à quelle fréquence je m'attends à ce qu'il soit appelé, etc., mais ne définisse pas réellement une fonction mockée.
Fondamentalement, je veux quelque chose comme ceci:
mock(jsonfile, 'readFile', function(filename, callback) {
callback(null, {attr1:"foo"});
});
Comment puis-je faire avec sinon?
Ce n'est pas ce que j'essaie de faire. J'essaye de simuler la fonction 'readFile' pour appeler une fonction anonyme que je définis dans mon cas de test (ce que je ferai avec de nombreuses autres fonctions dans le futur, ce n'est qu'un exemple). – ewok