Comment créer un talon avec Moq
Comment puis-je créer un pur tampon à l'aide Moq? Avec Rhino se moque, je l'ai fait comme ceci:
[TestFixture]
public class UrlHelperAssetExtensionsTests
{
private HttpContextBase httpContextBaseStub;
private RequestContext requestContext;
private UrlHelper urlHelper;
private string stylesheetPath = "/Assets/Stylesheets/{0}";
[SetUp]
public void SetUp()
{
httpContextBaseStub = MockRepository.GenerateStub<HttpContextBase>();
requestContext = new RequestContext(httpContextBaseStub, new RouteData());
urlHelper = new UrlHelper(requestContext);
}
[Test]
public void PbeStylesheet_should_return_correct_path_of_stylesheet()
{
//Arrange
string expected = stylesheetPath.FormatWith("stylesheet.css");
//Act
string actual = urlHelper.PbeStylesheet();
//Assert
Assert.AreEqual(expected, actual);
}
}
Comment puis-je créer un stub pour MockRepository.GenerateStub<HttpContextBase>();
à l'aide Moq? Ou devrais-je rester avec Rhino se moque?
source d'informationauteur Brendan Vogt
Vous devez vous connecter pour publier un commentaire.
Voici ma suggestion pour vous:
Ensuite, vous avez à faire l'installation.
Pour plus d'informations, voir page d'accueil du MOQ projet.
Un peu en retard à la fête ici, mais il n'y a pas encore suffisamment de répondre ici à mon avis.
Moq n'a pas explicite stub et se moquent de la génération de la même façon RhinoMocks. Au lieu de cela, tous les réglages des appels, par exemple
mockObject.Setup(x => blah ...)
créer un stub.Toutefois, si vous voulez le même code d'être traitée comme une fantaisie, vous devez appeler
mockObject.Verify(x => blah ...)
d'affirmer que le programme d'installation a fonctionné comme prévu.Si vous appelez
mockObject.VerifyAll()
elle traitera de tout ce que vous avez le programme d'installation comme se moque et c'est peu probable que le comportement que vous souhaitez, c'est à dire tous les stubs traités comme des simulacres.Au lieu de cela, lors de la configuration de la simulation de l'utilisation de la
mockObject.Setup(x => blah ...).Verifiable()
méthode pour marquer la configuration explicitement comme un simulacre. Appelez ensuitemockObject.Verify()
- ce alors seulement affirme les configurations qui ont été marqués avecVerifiable()
.