Ejemplo n.º 1
0
        public async Task ListRates_CallsListRatesMethodFromServicesLayer_WichReturnsAListWithTwoItems()
        {
            Mock <IRateData> data = new Mock <IRateData>();

            data.Setup(m => m.ListRates()).Returns(Task.FromResult(twoCurrencyConvertions));
            IRateBusiness sut = new RateBusiness(data.Object, commonFakes.Mapper);

            List <CurrencyConvertion> result = await sut.ListRates();

            Assert.AreEqual(twoCurrencyConvertions.Count, result.Count);
        }
Ejemplo n.º 2
0
        public async Task ListRates_WithoutParameters_InvokesInsertOrUpdateRatesMethodFromDataLayer()
        {
            Mock <IRateData> data = new Mock <IRateData>();

            data.Setup(m => m.ListRates()).Returns(Task.FromResult(twoCurrencyConvertions));
            data.Setup(m => m.InsertOrUpdateRates(It.IsAny <List <Data.Model.CurrencyConvertion> >()));
            IRateBusiness sut = new RateBusiness(data.Object, commonFakes.Mapper);

            List <CurrencyConvertion> result = await sut.ListRates();

            data.Verify(m => m.InsertOrUpdateRates(It.IsAny <List <Data.Model.CurrencyConvertion> >()), Times.Once());
        }
Ejemplo n.º 3
0
        public async Task ListRates_WithoutParameters_ReturnsARateList()
        {
            Mock <IRateData> data = new Mock <IRateData>();

            data.Setup(m => m.ListRates()).Returns(Task.FromResult(twoCurrencyConvertions));
            data.Setup(m => m.InsertOrUpdateRates(It.IsAny <List <Data.Model.CurrencyConvertion> >()));
            IRateBusiness sut = new RateBusiness(data.Object, commonFakes.Mapper);

            List <CurrencyConvertion> result = await sut.ListRates();

            Assert.IsTrue(result is List <CurrencyConvertion>, "result is not a 'CurrencyConvertion list'");
        }
Ejemplo n.º 4
0
        public async Task ListRates_WithMissingRates_ReturnsAllRates()
        {
            Mock <IRateData> data = new Mock <IRateData>();

            data.Setup(m => m.ListRates()).Returns(Task.FromResult(fourCurrencyConvertions));
            data.Setup(m => m.InsertOrUpdateRates(It.IsAny <List <Data.Model.CurrencyConvertion> >()));
            IRateBusiness sut = new RateBusiness(data.Object, commonFakes.Mapper);

            List <CurrencyConvertion> result = await sut.ListRates();

            Assert.IsTrue(fourCurrencyConvertions.Count < result.Count);
        }
Ejemplo n.º 5
0
        public async Task ListRates_CallsListRatesMethodFromServicesLayer_WichReturnsAnEmptyList()
        {
            Mock <IRateData> data = new Mock <IRateData>();

            data.Setup(m => m.ListRates()).Returns(Task.FromResult(emptyCurrencyConvertions));
            data.Setup(m => m.InsertOrUpdateRates(It.IsAny <List <Data.Model.CurrencyConvertion> >()));
            IRateBusiness sut = new RateBusiness(data.Object, commonFakes.Mapper);

            List <CurrencyConvertion> result = await sut.ListRates();

            Assert.AreEqual(emptyCurrencyConvertions.Count, result.Count);
        }
Ejemplo n.º 6
0
        public async Task ListRates_CallsListRatesMethodFromServicesLayer_WichThrowsAnException()
        {
            Mock <IRateData> data = new Mock <IRateData>();

            data.Setup(m => m.ListRates()).Throws(exception);
            data.Setup(m => m.InsertOrUpdateRates(It.IsAny <List <Data.Model.CurrencyConvertion> >()));
            IRateBusiness sut = new RateBusiness(data.Object, commonFakes.Mapper);

            try
            {
                await sut.ListRates();

                Assert.IsTrue(false, "No exception thrown. Exception exception was expected.");
            }
            catch (Exception result)
            {
                Assert.AreSame(exception, result);
            }
        }