public IHttpActionResult Post([FromBody] InvestorDto investor) { try { if (investor != null) { return(Ok(personBLL.CreateNewPerson(investor))); } else { return(BadRequest()); } } catch (Exception e) { // LOG ERROR return(InternalServerError(e)); } }
public async Task get_async_returns_mapped_investor_if_it_exists() { //Given var investor = GetDefaultInvestor(); investor.AddToFavouriteCompanies("AAPL"); investor.AddToFavouriteCompanies("MSFN"); var expectedInvestorDto = new InvestorDto() { UserId = investor.UserId, UpdatedAt = investor.UpdatedAt, FavouriteCompanies = new List <string>(investor.FavouriteCompanies) }; var userRepositoryMock = new Mock <IUserRepository>(); var investorRepositoryMock = new Mock <IInvestorRepository>(); investorRepositoryMock.Setup(x => x.GetAsync(investor.UserId)) .Returns(Task.FromResult(investor)); var companyRepositoryMock = new Mock <ICompanyRepository>(); var mapperMock = new Mock <IMapper>(); mapperMock.Setup(x => x.Map <InvestorDto>(It.IsAny <Investor>())) .Returns(expectedInvestorDto); var investorService = new InvestorService(userRepositoryMock.Object, investorRepositoryMock.Object, companyRepositoryMock.Object, mapperMock.Object); //When var occuredInvestorDto = await investorService.GetAsync(investor.UserId); //Then occuredInvestorDto.Should().BeEquivalentTo(expectedInvestorDto); mapperMock.Verify(x => x.Map <InvestorDto>(It.IsAny <Investor>()), Times.Once); }
public async Task get_async_using_mail_returns_mapping_result() { //Given var user = GetDefaultUser(); var investor = new Investor(user); var investorDto = new InvestorDto(); var userRepositoryMock = new Mock <IUserRepository>(); userRepositoryMock.Setup(x => x.GetAsync(user.Email)) .Returns(Task.FromResult(user)); var investorRepositoryMock = new Mock <IInvestorRepository>(); investorRepositoryMock.Setup(x => x.GetAsync(user.Id)) .Returns(Task.FromResult(investor)); var companyRepositoryMock = new Mock <ICompanyRepository>(); var mapperMock = new Mock <IMapper>(); mapperMock.Setup(x => x.Map <InvestorDto>(investor)) .Returns(investorDto); var investorService = new InvestorService(userRepositoryMock.Object, investorRepositoryMock.Object, companyRepositoryMock.Object, mapperMock.Object); //When var returnedInvestorDto = await investorService.GetAsync(user.Email); //Then userRepositoryMock.Verify(x => x.GetAsync(user.Email), Times.Once); investorRepositoryMock.Verify(x => x.GetAsync(user.Id), Times.Once); mapperMock.Verify(x => x.Map <InvestorDto>(investor), Times.Once); returnedInvestorDto.Should().BeSameAs(investorDto); }