2012-07-13 9 views
5

Simile a this question about NSubstitute, voglio sapere se uno è in grado di implementare simulazioni parziali utilizzando la libreria FakeItEasy.FakeItEasy supporta l'idea di Mazzi parziali?

FakeItEasy sembra avere una sintassi generale più gradevole di moq (come il modo fortemente tipizzato in cui il primo riguarda i parametri di passaggio a un costruttore di una classe simulata). Sto pensando di passare a FakeItEasy, ma ho davvero bisogno di un parziale supporto simulato.

risposta

6

Yes. Sintassi non è diverso da falso regolare:

var fake = A.Fake<Fake>(); 
A.CallTo(() => fake.SomeMethod()).CallBaseMethod(); 

Oppure, per ignorare tutte le chiamate con le chiamate di base:

var fake = A.Fake<Fake>(); 
A.CallTo(fake).CallBaseMethod(); 

Modifica solo per rendere chiaro: l'oggetto falso deve essere creato su un concreto classe.

+0

Ottimo, grazie. – rsenna

+1

Avevo bisogno di usare var fake = A.Fake (); (l'oggetto concreto invece dell'interfaccia) e rendere SomeMethod virtuale prima che funzionasse (v 1.8.0). – Aligned

+0

@Aligned: hai ragione, l'oggetto falso deve essere creato sulla classe concreta. Modificherò la risposta di jimmy_keen per renderlo chiaro. – rsenna