public void If_DTO_Pet_Is_Null_Must_Throw_Error() { // // Arrange, act and assert // Assert.Throws <ArgumentNullException>(() => { var mapper = new DtoPetToBusinessPet(); var target = mapper.Map(null); }); }
public void If_The_PetType_Is_Not_Supported_It_Must_Be_Returned_As_None() { // // Arrange // var mapper = new DtoPetToBusinessPet(); // // Act // var target = mapper.Map(new Pet { Name = "some name1", Type = "blah" }); // // Assert // Assert.Equal(PetType.None, target.Type); }
public void If_The_Pet_Data_Are_Valid_Must_Return_A_Valid_Pet() { // // Arrange // var mapper = new DtoPetToBusinessPet(); // // Act // var target = mapper.Map(new Pet { Name = "some pet1", Type = "Dog" }); // // Assert // Assert.Equal("some pet1", target.Name); Assert.Equal(PetType.Dog, target.Type); }
public void If_There_Are_Null_Pets_Must_Throw_Error() { // // Arrange // var petMapper = new DtoPetToBusinessPet(); var mapper = new DtoPersonToBusinessPerson(petMapper); // // Act and assert // Assert.Throws <ArgumentNullException>(() => { var target = mapper.Map(new Person { Name = "some name", Gender = "Male", Pets = new List <Pet>(new Pet[] { null, null }) }); }); }
public async Task If_There_Are_No_Owners_For_The_Requested_PetType_Must_Return_Success_With_Empty_People_List() { // // Arrange // var mockedClient = new Mock <IPeopleAreUsHttpClient>(); mockedClient.Setup(x => x.GetPeopleAsync()).ReturnsAsync(OperationResult <List <Person> > .Success(new List <Person> { new Person { Name = "some name1", Age = 18, Gender = "Male", Pets = new List <Pet> { new Pet { Name = "some dog 1", Type = "Dog" }, new Pet { Name = "some dog 2", Type = "Dog" }, } } })); var petMapper = new DtoPetToBusinessPet(); var personMapper = new DtoPersonToBusinessPerson(petMapper); var specification = new PetTypeSpecification(); var service = new PeopleService(mockedClient.Object, specification, personMapper, Mock.Of <ILogger <PeopleService> >()); // // Act // var operation = await service.GetPetOwnersAsync(new GetPetOwnersRequest(PetType.Cat)); // // Assert // Assert.True(operation.Status); Assert.NotNull(operation.Data); Assert.Empty(operation.Data.People); }