public async void FindFriends_OnInvalidQuery_BadRequest() { //Arrange var persistenceMock = new Mock <IFriendsPersistence>(); var mapperMock = new Mock <IMapper>(); //Act var controller = new FriendsController(_logger, persistenceMock.Object, mapperMock.Object); var response = await controller.FindUsers(null); //Assert Assert.IsType <BadRequestResult>(response); }
public async void FindFriends_OnAnyFindingMatches_OkWithMatchingUserDto() { //Arrange var requestPhoneNumbers = new List <string> { "123", "456", "789" }; var usersInDb = new List <ApplicationUser> { new ApplicationUser { UserName = "******" }, new ApplicationUser { UserName = "******" } }; var fakeDtos = new List <UserDto>(); usersInDb.ForEach(a => fakeDtos.Add(new UserDto { Username = a.UserName })); var persistenceMock = new Mock <IFriendsPersistence>(); persistenceMock .Setup(r => r.Friends .FindByNameRangeAsync(requestPhoneNumbers)) .ReturnsAsync(usersInDb); var mapperMock = new Mock <IMapper>(); mapperMock .Setup(m => m.Map <IEnumerable <UserDto> >(usersInDb)) .Returns(fakeDtos); //Act var controller = new FriendsController(_logger, persistenceMock.Object, mapperMock.Object); var response = await controller.FindUsers(requestPhoneNumbers); var dtos = ((OkObjectResult)response).Value as IEnumerable <UserDto>; //Assert Assert.IsType <OkObjectResult>(response); Assert.Equal(usersInDb.Count, dtos.Count()); }