Pregunta

Tengo un escenario como este:

 form = MockRepository.GenerateMock<IAddAddressForm>();
 mediator = new AddAddressMediator(form);

El mediador es el objeto real bajo prueba y tiene que ser capaz de establecer valores para el objeto "forma".

Sin embargo, la única manera que puedo ver para establecer los valores para el objeto de formulario es la siguiente:

  form.Stub(x=>x.FirstName).Return(item.FirstName)

No quiero estar haciendo eso en mi código real.

Me estoy perdiendo el punto de burla?

¿Fue útil?

Solución

Talones han construido en el soporte para el comportamiento de la propiedad. En los casos en que no esté utilizando talones, puede utilizar el PropertyBehaviour () método para un efecto similar.

Dentro del mediador, usted debe utilizar el objeto form normalmente - no debe saber que se ha entregado un objeto falso.

Este código:

form.Stub(x=>x.FirstName).Return(item.FirstName)

No debe estar en su objeto real, pero puede ser parte de la prueba para establecer las expectativas de cómo va a utilizar el objeto de burla.

Editar

A partir de lo que nos ha facilitado, no puedo juzgar si usted está "perdiendo el punto de burla". El objetivo esencial es proporcionar una manera de probar el código que tiene dependencias en forma aislada de esas dependencias. Echar un vistazo a el ensayo de Martin Fowler " Mocks No están talones de ", y el uso la sección de orientación del burla de Rhino documentación .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top