Example #1
0
        public void RateControllerTests_GetRates(decimal rate, decimal dose, decimal vtbi, decimal expected)
        {
            var ctrl = new RatesController();
            var res  = ctrl.GetRates(rate, dose, vtbi);

            if (vtbi == 0)
            {
                vtbi = expected;
            }
            else
            {
                if (rate == 0)
                {
                    rate = expected;
                }
                else
                {
                    dose = expected;
                }
            }

            var ok = res.ShouldBeOfType <OkObjectResult>();

            var o = (JObject)JToken.FromObject(ok.Value);

            o["vtbi"].Value <decimal>().ShouldBe(vtbi);
            o["rate"].Value <decimal>().ShouldBe(rate);
            o["dose"].Value <decimal>().ShouldBe(dose);
        }
Example #2
0
        public void RateControllerTests_MissingData(decimal rate, decimal dose, decimal vtbi)
        {
            var ctrl = new RatesController();
            var res  = ctrl.GetRates(rate, vtbi, dose);

            res.ShouldBeOfType <BadRequestObjectResult>();
        }
        public async Task GetRates()
        {
            var from     = fixture.Create <string>();
            var response = fixture.Create <RatesResponse>();

            svc.Setup(s => s.GetRates(from)).ReturnsAsync(response);

            var result = await controller.GetRates(from);

            var okResult = (OkObjectResult)result;

            okResult.Value.Should().Be(response);
        }
        public void TestGetAll()
        {
            // Arrange
            var TestController = new RatesController(new RateServiceMock());

            // Execution
            var TestResult = TestController.GetRates().ToList();

            // Assertions
            Assert.True(TestResult.Count == 4, "TestResult should have received 4 rows!");
            Assert.Equal("EUR", TestResult[0].From);
            Assert.Equal("USD", TestResult[0].To);
            Assert.Equal(1.359m, TestResult[0].RateVal);
            Assert.Equal("CAD", TestResult[1].From);
            Assert.Equal("EUR", TestResult[1].To);
            Assert.Equal(0.732m, TestResult[1].RateVal);
            Assert.Equal("USD", TestResult[2].From);
            Assert.Equal("EUR", TestResult[2].To);
            Assert.Equal(0.736m, TestResult[2].RateVal);
            Assert.Equal("EUR", TestResult[3].From);
            Assert.Equal("CAD", TestResult[3].To);
            Assert.Equal(1.366m, TestResult[3].RateVal);
        }