Mam następujący interfejs:FakeItEasy - Czy można przechwycić metodę i zastąpić ją moją własną implementacją?
public interface IOuputDestination
{
void Write(String s);
}
W moim badanej jednostki, ja drwić go tak:
var outputDestination = A.Fake<IOutputDestination>();
Co chcę zrobić, to przechwytujący metody zapisu tak, że używa mój zwyczaj implementacja, którą definiuję w moim teście. Coś takiego:
String output = "";
A.CallTo(() => outputDestination.Write(A<String>.Ignored)).Action(s => output += s);
//Is something like this even possible ? ----^
Tutaj nie istnieje metoda Action
, ale to, co chciałbym się zdarzyć, że każdy parametr przekazany do outputDestination.Write
zostać przekierowany do mojej akcji niestandardowej. Czy jest to możliwe przy użyciu FakeItEasy? Jeśli nie, czy istnieje inna szydercza struktura, która pozwala na takie zachowanie?