public void Should_Not_Return_List_Of_Trades_Sold_When_List_Of_Trades_Bought_Used()
        {
            // Arrange
            var tradesService = new TradesControllerService(_calculationService);

            List <Trades> actualResults = new List <Trades>
            {
                new Trades
                {
                    Counterparty = new Counterparties {
                        CounterpartyId = 12, CounterpartyName = "Morrison (WM.) Supermarkets PLC"
                    },
                    DealPrice     = 6.3444m,
                    TradeQuantity = 685854,
                    TradeTotal    = 4351307.6417m,
                    Buy           = true
                }
            };

            // Act
            List <TradesModel> results = tradesService.Calculate(actualResults);

            // Assert
            results.Should().BeEmpty();
        }
예제 #2
0
        public void Actual_Results_Should_Be_Equivalent_To_Expected_List_Of_Filtered_Trades()
        {
            // Arrange
            var tradesService = new TradesControllerService();

            List <Trades> actualResults = new List <Trades>
            {
                new Trades
                {
                    Counterparty = new Counterparties {
                        CounterpartyId = 12, CounterpartyName = "Morrison (WM.) Supermarkets PLC"
                    },
                    DealPrice     = 6.3444m,
                    TradeQuantity = 685854,
                    TradeTotal    = 4351307.6417m,
                    Buy           = false,
                    EquityTrade   = new EquityTrades {
                        EquityId = 1
                    }
                }
            };

            // Act

            List <TradesModel> results = tradesService.Filter(actualResults);


            // Assert
            List <TradesModel> expectedResults = new List <TradesModel>
            {
                new TradesModel
                {
                    Counterparty = new Counterparties {
                        CounterpartyId = 12, CounterpartyName = "Morrison (WM.) Supermarkets PLC"
                    },
                    DealPrice     = 6.3444m,
                    TradeQuantity = 685854,
                    TradeTotal    = 4351307.6417m,
                    Buy           = false
                }
            };

            results.Should().BeEquivalentTo(expectedResults);
        }
        public void Should_Return_Calculated_List_Of_Trades_Sold_When_List_Of_Trades_Sold_Used()
        {
            // Arrange
            var tradesService = new TradesControllerService(_calculationService);

            List <Trades> actualResults = new List <Trades>
            {
                new Trades
                {
                    Counterparty = new Counterparties {
                        CounterpartyId = 12, CounterpartyName = "Morrison (WM.) Supermarkets PLC"
                    },
                    DealPrice     = 6.3444m,
                    TradeQuantity = 685854,
                    TradeTotal    = 4351307.6417m,
                    Buy           = false
                }
            };

            // Act

            List <TradesModel> results = tradesService.Calculate(actualResults);


            // Assert
            List <TradesModel> expectedResults = new List <TradesModel>
            {
                new TradesModel
                {
                    Counterparty = new Counterparties {
                        CounterpartyId = 12, CounterpartyName = "Morrison (WM.) Supermarkets PLC"
                    },
                    DealPrice     = 5m,
                    TradeQuantity = 685854,
                    TradeTotal    = 3429270m,
                    OldTradeTotal = 4351307.6417m,
                    ProfitOrLoss  = -9220.376417m,
                    Buy           = false
                }
            };

            results.Should().BeEquivalentTo(expectedResults);
        }