public void AddTransformation() { var action = new RestApi.CorporateActions.Transformation() { Id = Guid.NewGuid(), Stock = _StockWithoutCorporateActions, ActionDate = new Date(2001, 01, 01), Description = "Transformation", ImplementationDate = new Date(2001, 01, 15), CashComponent = 10.15m, RolloverRefliefApplies = true }; action.ResultingStocks.Add(new RestApi.CorporateActions.Transformation.ResultingStock() { Stock = _StockWithCorporateActions, AquisitionDate = new Date(2001, 04, 01), CostBase = 0.50m, OriginalUnits = 1, NewUnits = 2 }); var result = _Service.AddCorporateAction(_StockWithoutCorporateActions, action); result.Should().HaveOkStatus(); var resultStocks = new TransformationAddedEvent.ResultingStock(_StockWithCorporateActions, 1, 2, 0.50m, new Date(2001, 04, 01)); _Events.Should().BeEquivalentTo(new[] { new TransformationAddedEvent(_StockWithoutCorporateActions, 1, action.Id, new Date(2001, 01, 01), "Transformation", new Date(2001, 01, 15), 10.15m, true, new [] { resultStocks }) }); }
public static RestApi.CorporateActions.Transformation ToResponse(this Domain.CorporateActions.Transformation action) { var response = new RestApi.CorporateActions.Transformation(); PopulateCorporateAction(response, action); response.CashComponent = action.CashComponent; response.RolloverRefliefApplies = action.RolloverRefliefApplies; var resultStocks = action.ResultingStocks.Select(x => new RestApi.CorporateActions.Transformation.ResultingStock() { Stock = x.Stock, OriginalUnits = x.OriginalUnits, NewUnits = x.NewUnits, CostBase = x.CostBasePercentage, AquisitionDate = x.AquisitionDate }); response.ResultingStocks.AddRange(resultStocks); return(response); }
public void AddTransformation() { var mockRepository = new MockRepository(MockBehavior.Strict); var stockId = Guid.NewGuid(); var actionId = Guid.NewGuid(); var action = new RestApi.CorporateActions.Transformation() { Id = actionId }; var service = mockRepository.Create <ICorporateActionService>(); service.Setup(x => x.AddCorporateAction(stockId, It.IsAny <RestApi.CorporateActions.Transformation>())).Returns(ServiceResult.Ok()).Verifiable(); var controller = new CorporateActionController(service.Object); var result = controller.AddCorporateAction(stockId, action); result.Should().BeOkResult(); mockRepository.VerifyAll(); }