public void TestRevenueMarkupNoExistingRevenueMarkupFail()
        {
            _iMasterDataRevenueMarkupMock.Setup(x => x.GetList()).Returns(Task.FromResult(new BaseResult <List <RevenueMarkup> > {
                Result = ExistingMasterDataMarkup(), IsError = false
            }));
            _iMarkupDataRevenueMarkupRuleMock.Setup(x => x.GetList()).Returns(Task.FromResult(new BaseResult <List <RevenueMarkupRule> > {
                Result = new List <RevenueMarkupRule>(), IsError = false
            }));

            Models.Request.RevenueMarkup model = RequestModel();
            model.RevenueMarkupRules.Add(new RevenueMarkupRule()
            {
                ChargeTypeId    = 1,
                CityId          = 1,
                CountryId       = 1,
                FromDatekey     = 20180106,
                HotelId         = 1,
                Markup          = 11,
                HotelRoomTypeId = 1,
                Id            = 1,
                IsActive      = true,
                IsDeleted     = false,
                MarkupId      = 1,
                NationalityId = 1,
                SupplierId    = 1,
                ToDatekey     = 20180107
            });

            var result = revenueMarkupControllerMock.Create(model).Result;

            Assert.IsTrue(result is BadRequestObjectResult);
            Assert.AreEqual(((BadRequestObjectResult)result).StatusCode, 400);
        }
        public void TestRevenueMarkUpDuplicateMarkupNameFail()
        {
            _iMasterDataRevenueMarkupMock.Setup(x => x.GetList()).Returns(Task.FromResult(new BaseResult <List <RevenueMarkup> > {
                Result = ExistingMasterDataMarkup(), IsError = false
            }));
            _iMarkupDataRevenueMarkupRuleMock.Setup(x => x.GetList()).Returns(Task.FromResult(new BaseResult <List <RevenueMarkupRule> > {
                Result = ExistingMarkupRules(), IsError = false
            }));

            Models.Request.RevenueMarkup model = RequestModel();
            model.MGRevenueMarkup.Name = "Markup";

            var result = revenueMarkupControllerMock.Create(model).Result;

            Assert.IsTrue(result is BadRequestObjectResult);
            Assert.AreEqual(((BadRequestObjectResult)result).StatusCode, 400);
        }
        public void TestCreateRevenueMarkUpReturnsExistingListThrowsException()
        {
            Models.Request.RevenueMarkup revenueMarkup = new Models.Request.RevenueMarkup
            {
                MGRevenueMarkup = new RevenueMarkup
                {
                    Name      = "RM1",
                    IsActive  = true,
                    IsDeleted = false
                },
                RevenueMarkupRules = new List <RevenueMarkupRule>
                {
                    new RevenueMarkupRule
                    {
                        CityId          = 1,
                        CountryId       = 1,
                        ChargeTypeId    = 1,
                        HotelId         = 1,
                        HotelRoomTypeId = 1,
                        Markup          = 11,
                        MarkupId        = 1,
                        SupplierId      = 1
                    }
                }
            };

            _iMasterDataRevenueMarkupMock.Setup(x => x.GetList())
            .Returns(Task.FromResult(new BaseResult <List <RevenueMarkup> >()
            {
                IsError = true, ExceptionMessage = Common.GetMockException()
            }));

            var result = revenueMarkupControllerMock.Create(revenueMarkup).Result;

            Assert.That(((StatusCodeResult)result).StatusCode is 500);
        }