public async Task TestService_OnErrorFromPersonServiceClient_ShouldDisplayError() { var logger = Mock.Of <ILogger <PeopleInfoConsoleWriter> >(); var peopleServiceMock = new Mock <IPeopleService>(); peopleServiceMock.Setup(arg => arg.FetchAllAsync()).ThrowsAsync(new Exception("Error")); try { var writer = new PeopleInfoConsoleWriter(peopleServiceMock.Object, logger); await writer.Run(); Assert.Fail(); } catch (Exception ex) { Assert.AreEqual("Error", ex.Message); } }
public async Task TestService_OnSuccessResponseFromPeopleServiceClient_ShouldDisplayResult() { var mockResponse = new List <Person>(); var person = new Person(); person.Name = "Bob"; person.Gender = "Male"; person.Age = 2; person.PetCollection = new List <Pet>(); person.PetCollection.Add(new Pet() { Name = "Garfield", Type = "Cat" }); mockResponse.Add(person); var logger = Mock.Of <ILogger <PeopleInfoConsoleWriter> >(); var peopleServiceMock = new Mock <IPeopleService>(); peopleServiceMock.Setup(arg => arg.FetchAllAsync()) .Returns(Task.FromResult(mockResponse.AsEnumerable())); var writer = new PeopleInfoConsoleWriter(peopleServiceMock.Object, logger); await writer.Run(); }