public void When_ListCarbrands_action_is_called_without_parameter_should_return_all_brands() { //arrange var fakeRpdbService = A.Fake<IRpdbService>(); var fakeBrands = new List<Carbrand> { new Carbrand() {CarbrandID = 1, Name = "Mercedes"}, new Carbrand() {CarbrandID = 2, Name = "Fiat"} }; A.CallTo(() => fakeRpdbService.GetAllCarbrands()).Returns(fakeBrands); var proposalsController = new ProposalsController(fakeRpdbService); //act var actual = proposalsController.ListCarbrands(); var result = actual.Data as IEnumerable; //assert A.CallTo( () => fakeRpdbService.GetAllCarbrands()) .MustHaveHappened(Repeated.Exactly.Once); Assert.IsNotEmpty(result); Assert.That(result.OfType<object>().Count(), Is.EqualTo(fakeBrands.Count)); }