コード例 #1
0
        public void UpdateLimitOnAccidentsCover()
        {
            using (var _dbContext = new CarInsuranceContextV3())
            {
                var limitRetrieved    = _dbContext.Limit.Where(pk => pk.LimitCoverId.Equals(_testedBrokerGuid)).FirstOrDefault();
                var listOfLimitValues = new List <int>();
                foreach (var limit in limitRetrieved.LimitValues.Split(',', StringSplitOptions.RemoveEmptyEntries))
                {
                    listOfLimitValues.Add(int.Parse(limit));
                }
                listOfLimitValues.Add(2000);

                var newLimitValues = string.Empty;
                foreach (var limit in listOfLimitValues)
                {
                    newLimitValues += limit.ToString() + ",";
                }

                limitRetrieved.LimitValues = newLimitValues;
                _dbContext.SaveChanges();

                var limitRetrieved2 = _dbContext.Limit.Where(pk => pk.LimitCoverId.Equals(_testedBrokerGuid)).FirstOrDefault();

                Assert.AreEqual(limitRetrieved2.LimitValues.Split(',', StringSplitOptions.RemoveEmptyEntries).ToList().Last(), "2000");
            }
        }
コード例 #2
0
ファイル: UnitOfWork.cs プロジェクト: quavoatl/CarInsurance
 public UnitOfWork(CarInsuranceContextV3 db)
 {
     _dbContext = db;
     BrokerPolicyTemplateRepository = new BrokerPolicyTemplateRepository(db);
     CarRepository   = new CarRepository(db);
     CoverRepository = new CoverRepository(db);
 }
コード例 #3
0
 public AccountController(UserManager <AppUser> userManager, SignInManager <AppUser> signInManager, RoleManager <IdentityRole> roleManager, CarInsuranceContextV3 context)
 {
     this._userManager   = userManager;
     this._signInManager = signInManager;
     this._roleManager   = roleManager;
     this._dbContext     = context;
 }
コード例 #4
0
        public void AddLimitRuleForLimit()
        {
            using (var _dbContext = new CarInsuranceContextV3())
            {
                var coverRetrieved = _dbContext.Cover.Where(c => c.CoverBrokerRefId.Equals(_testedBrokerGuid) && c.Type.Equals("theft"))
                                     .Include(l => l.Limit)
                                     .FirstOrDefault();


                var newLimitRule1 = new LimitRule()
                {
                    LimitRuleCoverId = coverRetrieved.Limit.FirstOrDefault().LimitRuleCoverId,
                    Name             = "Equal500",
                    RuleText         = "EqualTo500",
                    Multiplier       = 0.6f,
                };

                var newLimitRule2 = new LimitRule()
                {
                    LimitRuleCoverId = coverRetrieved.Limit.FirstOrDefault().LimitRuleCoverId,
                    Name             = "Equal1000",
                    RuleText         = "EqualTo1000",
                    Multiplier       = 0.8f,
                };

                _dbContext.LimitRule.AddRange(newLimitRule1, newLimitRule2);
                _dbContext.SaveChanges();
            }
        }
コード例 #5
0
 public PolicyTemplateController(UserManager <AppUser> userManager, SignInManager <AppUser> signInManager,
                                 RoleManager <IdentityRole> roleManager, CarInsuranceContextV3 context,
                                 IBrokerService brokerService, IUnitOfWork unitOfWork)
 {
     this.userManager    = userManager;
     this.signInManager  = signInManager;
     this.roleManager    = roleManager;
     this._dbContext     = context;
     this._brokerService = brokerService;
     this._unitOfWork    = unitOfWork;
 }
コード例 #6
0
        //[Ignore("Outdated")]
        public void AddingLimitAndCheckingItBack()
        {
            using (var _dbContext = new CarInsuranceContextV3())
            {
                var brokerTemplate = new BrokerPolicyTemplate()
                {
                    BrokerReferenceId = _testedBrokerGuid,
                    CarBrokerRefId    = _testedBrokerGuid,
                    CoverBrokerRefId  = _testedBrokerGuid,
                    CreationDate      = DateTime.Now,
                    TemplateReady     = false,
                };

                _dbContext.BrokerPolicyTemplate.Add(brokerTemplate);
                _dbContext.SaveChanges();

                var coverAccidents = new Cover()
                {
                    CoverBrokerRefId = _testedBrokerGuid,
                    AdditionDate     = DateTime.Now,
                    LimitCoverId     = _testedBrokerGuid,
                    QuestionCoverId  = _testedBrokerGuid,
                    Type             = "accidents"
                };

                _dbContext.Cover.Add(coverAccidents);
                _dbContext.SaveChanges();

                Limit limit = new Limit
                {
                    LimitCoverId     = _testedBrokerGuid,
                    CoverType        = "accidents",
                    LimitRuleCoverId = _testedBrokerGuid,
                    LimitValues      = "0,100,500,1000",
                    Name             = "AccidentsLimit"
                };

                _dbContext.Limit.Add(limit);
                var res = _dbContext.SaveChanges();

                Assert.AreEqual(res, 1);

                var retrievedLimit = _dbContext.Limit.Where(pk => pk.LimitCoverId.Equals(_testedBrokerGuid)).FirstOrDefault();

                Assert.IsTrue(retrievedLimit.CoverType.Equals("accidents"));
            }
        }
コード例 #7
0
        public void AddGoodCover()
        {
            using (var _dbContext = new CarInsuranceContextV3())
            {
                var testCover = new Cover()
                {
                    CoverBrokerRefId = _testedBrokerGuid,
                    AdditionDate     = DateTime.Now,
                    LimitCoverId     = Guid.NewGuid(),
                    QuestionCoverId  = Guid.NewGuid(),
                    Type             = "theft"
                };

                _dbContext.Cover.Add(testCover);
                var result = _dbContext.SaveChanges();
                Assert.AreEqual(result, 1);
            }
        }
コード例 #8
0
        public void AddLimitForCover()
        {
            using (var _dbContext = new CarInsuranceContextV3())
            {
                var coverRetrieved = _dbContext.Cover.Where(c => c.CoverBrokerRefId.Equals(_testedBrokerGuid) && c.Type.Equals("theft")).FirstOrDefault();

                var newLimit = new Limit()
                {
                    CoverType        = coverRetrieved.Type,
                    LimitCoverId     = coverRetrieved.LimitCoverId,
                    LimitRuleCoverId = Guid.NewGuid(),
                    Name             = "TheftLimit",
                    LimitValues      = "0,100,1000"
                };

                _dbContext.Limit.Add(newLimit);
                _dbContext.SaveChanges();
            }
        }
コード例 #9
0
        public void AddGoodCar()
        {
            using (var _dbContext = new CarInsuranceContextV3())
            {
                var car = new Car()
                {
                    CarBrokerRefId = _testedBrokerGuid,
                    Brand          = "Opel",
                    EngineCC       = 1600,
                    EuroStandard   = "euro4",
                    Model          = "astra",
                    Year           = DateTime.Parse("05/06/2008"),
                    CarRuleCoverId = Guid.NewGuid()
                };

                _dbContext.Car.Add(car);
                var result = _dbContext.SaveChanges();
                Assert.AreEqual(result, 1);
            }
        }
コード例 #10
0
        public void CoverAdditionCoverTypeConstraints()
        {
            using (var _dbContext = new CarInsuranceContextV3())
            {
                var testCover = new Cover()
                {
                    CoverBrokerRefId = _testedBrokerGuid,
                    AdditionDate     = DateTime.Now,
                    LimitCoverId     = Guid.NewGuid(),
                    QuestionCoverId  = Guid.NewGuid(),
                    Type             = "test"
                };

                try
                {
                    _dbContext.Cover.Add(testCover);
                    _dbContext.SaveChanges();
                }
                catch (SqlException ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }
        }
コード例 #11
0
 public CoverRepository(CarInsuranceContextV3 db) : base(db)
 {
     _dbContext = db;
 }
コード例 #12
0
 public Repository(CarInsuranceContextV3 dbContext)
 {
     _dbContext = dbContext;
     dbSet      = _dbContext.Set <T>();
 }
コード例 #13
0
 public DatabaseTesting()
 {
     _dbContext = new CarInsuranceContextV3();
 }
コード例 #14
0
 public BrokerService(CarInsuranceContextV3 db)
 {
     _dbContext = db;
 }
コード例 #15
0
 public IBrokerServiceTesting()
 {
     _dbContext = new CarInsuranceContextV3();
 }
コード例 #16
0
 public BrokerPolicyTemplateRepository(CarInsuranceContextV3 db) : base(db)
 {
     _dbContext = db;
 }