public void ShouldFindASummaryAndUseTheDeleteStrategy() { // Arrange var mockDeleteVacancyStrategy = new Mock <IDeleteVacancyStrategy>(); var mockVacancySummaryService = new Mock <IVacancySummaryService>(); mockVacancySummaryService.Setup(x => x.GetById(It.IsAny <int>())).Returns(new VacancySummary()); mockDeleteVacancyStrategy.Setup(x => x.Execute(It.IsAny <VacancySummary>())).Returns(new StrategyResult("code")); var sut = new VacancyManagementService(null, mockDeleteVacancyStrategy.Object, mockVacancySummaryService.Object); // Act sut.Delete(1); // Assert mockVacancySummaryService.VerifyAll(); mockDeleteVacancyStrategy.VerifyAll(); }