public void NotValidateShareRegistrationData() { //Arrange var clientReposMock = Substitute.For <IClientRepository>(); var sharesReposMock = Substitute.For <ISharesRepository>(); var portfolioReposMock = Substitute.For <IPortfolioRepository>(); var loggerMock = Substitute.For <ILogger>(); var sut = new ValidationService( clientReposMock, sharesReposMock, portfolioReposMock); ShareRegistrationData shareData = new ShareRegistrationData() { ShareType = "754234", SharePrice = 0 }; //Act var isValid = sut.ValidateShareRegistrationData(shareData, loggerMock); //Assert Assert.AreEqual(false, isValid); }
public bool ValidateShareRegistrationData(ShareRegistrationData shareData, ILogger logger) { if (shareData.SharePrice < 1) { logger.WriteWarning("Share can't costs less, than 1 dollar."); return(false); } return(true); }
public void RegisterShare(ShareRegistrationData shareData) { var newShare = new Share() { ShareType = shareData.ShareType, Price = shareData.SharePrice, }; shareRepository.Insert(newShare); shareRepository.SaveChanges(); }
public void RegisterShareTest() { // Arrange var shareRepositoryMock = Substitute.For <ISharesRepository>(); var sut = new SharesService(shareRepositoryMock); ShareRegistrationData share = new ShareRegistrationData { ShareType = "Toyota", SharePrice = (decimal)6021023 }; // Act sut.RegisterShare(share); // Asserts shareRepositoryMock.Received(1).Insert(Arg.Is <Share>(x => x.ShareType == share.ShareType && x.Price == share.SharePrice)); }
public void RegisterShare() { ShareRegistrationData shareData = new ShareRegistrationData(); inputOutputModule.WriteOutput("Write share type:"); shareData.ShareType = inputOutputModule.ReadInput(); inputOutputModule.WriteOutput("Write share price:"); while (true) { try { shareData.SharePrice = Convert.ToDecimal(inputOutputModule.ReadInput()); break; } catch (FormatException) { inputOutputModule.WriteOutput("Please enter valid share price."); } } sharesService.RegisterShare(shareData); }