Example #1
0
        public async Task AndMonthlyInvestmentIs1000_AndLumpSumIs10000_ThenYear100TotalInvestedIsCorrect()
        {
            //Arrange
            decimal expectedTotalInvestment = 1210000m;

            CalculateRequest request = new ForecastRequestViewModelBuilder()
                                       .WithValidDefaults()
                                       .WithInvestmentTerm(100)
                                       .Build();

            //Act
            Tests.Model.ForecastViewModel actual = await _apiHelper.Calculate(request);

            //Assert
            Assert.IsTrue(actual.Success);

            Assert.AreEqual(expectedTotalInvestment, actual.TotalValue.ElementAt(100));
        }
Example #2
0
        public async Task AndMonthlyInvestmentIs1000_AndLumpSumIs30000_ThenYear0TotalInvestedIsCorrect()
        {
            //Arrange
            decimal expectedTotalInvestment = 30000.00m;

            CalculateRequest request = new ForecastRequestViewModelBuilder()
                                       .WithValidDefaults()
                                       .WithLumpSum(expectedTotalInvestment)
                                       .Build();

            var contents = new StringContent(JsonConvert.SerializeObject(request), Encoding.UTF8, "application/json");

            //Act

            Tests.Model.ForecastViewModel actual = await _apiHelper.Calculate(request);

            //Assert
            Assert.IsTrue(actual.Success);
            Assert.AreEqual(expectedTotalInvestment, actual.TotalValue.ElementAt(0));
        }
Example #3
0
        public async Task AndMonthlyInvestmentIs1000_AndLumpSumIs50000_ThenYear0WideBoundValuesAreCorrect()
        {
            //Arrange
            decimal lumpSum            = 50000.00m;
            decimal expectedLowerBound = 50000.00m;
            decimal expectedUpperBound = 50000.00m;

            CalculateRequest request = new ForecastRequestViewModelBuilder()
                                       .WithValidDefaults()
                                       .WithRiskLevel("medium")
                                       .WithLumpSum(lumpSum)
                                       .Build();

            var contents = new StringContent(JsonConvert.SerializeObject(request), Encoding.UTF8, "application/json");

            //Act

            Tests.Model.ForecastViewModel actual = await _apiHelper.Calculate(request);

            //Assert
            Assert.IsTrue(actual.Success);
            Assert.AreEqual(expectedLowerBound, actual.WideLowerValue.ElementAt(0));
            Assert.AreEqual(expectedUpperBound, actual.WideUpperValue.ElementAt(0));
        }