Je suis en train d'écrire un tas de tests autour de certains contrôleurs personnalisés en utilisant Moq en VB. Jusqu'à présent, je n'ai pas eu à faire face aux insuffisances de VB Lambda puisque je n'ai utilisé Moq que pour des propriétés ou des méthodes.
Jusqu'à ce matin où j'ai essayé d'exécuter des tests d'intégration avec Cassini sur mon code. J'avais du code pour ajouter des en-têtes en utilisant Response.Headers.Add. J'ai fait cela pour pouvoir facilement obtenir la collection d'en-têtes dans les tests unitaires en utilisant Moq(Of HttpResponseBase) et un SetupGet pour Headers->NameValueCollection. Bien sûr, le code s'étrangle dans tout ce qui n'est pas IIS7 en mode Integrated Pipeline.
J'ai donc modifié mon code pour utiliser Response.AddHeader, ce qui signifie que mes tests unitaires échouent. Et comme je suis en VB, je ne vois pas comment faire correspondre l'appel à AddHeader à la collection Headers puisque Function() a besoin d'une valeur de retour en VB.
J'ai vu quelques articles sur Moq et VB, mais personne n'a vraiment abordé le problème de la mise en correspondance de Subs avec autre chose dans Moq.
Quelqu'un a-t-il abordé cette situation particulière dans VB en utilisant Moq ?