2012-05-08 11 views
8

Powiel możliwe:
How to mock a method that returns an int with MOQKorzystanie Min do skrótową metoda w interfejs

Oto mój interfejs:

public interface ICalenderService 
    { 
     DateTime Adjust(DateTime dateToAdjust, BusinessDayConvention convention, List<HolidayCity> holidayCities); 
    } 

Robiłem rozeznanie i wydaje się to możliwe drwić to naprawdę łatwo, ale chcę to wyłączyć za pomocą Moq, dzięki czemu mogę przekazać kod pośredniczący do moich innych elementów konstrukcyjnych i niech ten koder cofnie cokolwiek, co chcę, dla tej metody DateTime.

Jaki jest najprostszy sposób to zrobić?

Edytuj: Wiem, że mogę utworzyć swój własny kod w moim projekcie, ale chciałbym napisać mniej kodu i myślę, że Moq pozwoli mi to zrobić, po prostu nie wiem, jak wygląda składnia.

+0

Nie sądzę, aby to pytanie było duplikatem. Przykład w drugim pytaniu zawierał metodę bez parametrów, ale metoda w tym interfejsie ujawnia trzy parametry, które należy wyłudzić. –

Odpowiedz

14

Konfigurowanie niedopałek tak:

var calendarServiceStub = new Mock<ICalenderService>(); 

calendarServiceStub 
    .Setup(c => c.Adjust(It.IsAny<DateTime>(), It.IsAny<BusinessDayConvention>(), It.IsAny<List<HolidayCity>>())) 
    .Returns(theDateTimeResultYouWant); 

przepustkę calendarServiceStub.Object konstruktorowi inna klasa jest.

+0

dziękuję bardzo !! – slandau

Powiązane problemy