protected override void Context() { _objectBaseFactory = A.Fake <IObjectBaseFactory>(); _rateObjectPathsRepository = A.Fake <IRateObjectPathsRepository>(); _rateFormulaRepository = A.Fake <IRateFormulaRepository>(); _distributionFactory = A.Fake <IDistributionFormulaFactory>(); _dimensionRepository = A.Fake <IDimensionRepository>(); _timeDimension = A.Fake <IDimension>(); _idGenerator = A.Fake <IIdGenerator>(); A.CallTo(() => _objectBaseFactory.Create <ExplicitFormula>()).Returns(new ExplicitFormula()); A.CallTo(() => _objectBaseFactory.Create <ConstantFormula>()).Returns(new ConstantFormula()); A.CallTo(() => _objectBaseFactory.Create <SumFormula>()).Returns(new SumFormula()); A.CallTo(() => _dimensionRepository.Time).Returns(_timeDimension); _objectPathFactory = new ObjectPathFactoryForSpecs(); _dynamicFormulaCriteriaRepo = A.Fake <IDynamicFormulaCriteriaRepository>(); _dynamicSumFormulaRateKey = new RateKey(CoreConstants.CalculationMethod.DynamicSumFormulas, "SomeFormula"); _sumFormulaCriteria = new DescriptorCriteria(); _sumFormulaCriteria.Add(new MatchTagCondition("xxx")); _sumFormulaCriteria.Add(new NotMatchTagCondition("yyy")); A.CallTo(() => _dynamicFormulaCriteriaRepo.CriteriaFor(_dynamicSumFormulaRateKey)).Returns(_sumFormulaCriteria); A.CallTo(() => _rateFormulaRepository.FormulaFor(_dynamicSumFormulaRateKey)).Returns("P_#i"); sut = new FormulaFactory(_objectBaseFactory, _rateObjectPathsRepository, _rateFormulaRepository, _distributionFactory, _objectPathFactory, _dimensionRepository, _idGenerator, _dynamicFormulaCriteriaRepo); }
protected override void DoStart() { foreach (var flatFormulaCriteria in _flatDynamicFormulaCriteriaRepository.All()) { var rateKey = new RateKey(flatFormulaCriteria.CalculationMethod, flatFormulaCriteria.Rate); DynamicFormulaCriteria criteria; if (_criteria.Contains(rateKey)) { criteria = _criteria[rateKey]; } else { criteria = new DynamicFormulaCriteria(rateKey); _criteria.Add(criteria); } if (flatFormulaCriteria.ShouldHave) { criteria.DescriptorCriteria.Add(new MatchTagCondition(flatFormulaCriteria.Tag)); } else { criteria.DescriptorCriteria.Add(new NotMatchTagCondition(flatFormulaCriteria.Tag)); } } }
public DescriptorCriteria CriteriaFor(RateKey rateKey) { Start(); if (!_criteria.Contains(rateKey)) { return(new DescriptorCriteria()); } return(_criteria[rateKey].DescriptorCriteria); }
protected override void Context() { base.Context(); _rateKey = new RateKey("CM1", "Rate1"); _formulaCache = new FormulaCache(); A.CallTo(() => _rateFormulaRepository.FormulaFor(_rateKey)).Returns("Time * 2"); A.CallTo(() => _objectBaseFactory.Create <ExplicitFormula>()).Returns(new ExplicitFormula()); A.CallTo(() => _rateObjectPathsRepository.ObjectPathsFor(_rateKey)).Returns( new List <IFormulaUsablePath>()); }
protected override void Context() { base.Context(); _rateDefinition = new ParameterRateMetaData { Rate = "toto", CalculationMethod = "tutu" }; var rateKey = new RateKey(_rateDefinition.CalculationMethod, _rateDefinition.Rate); A.CallTo(() => _rateObjectPathsRepository.ObjectPathsFor(rateKey)).Returns(Enumerable.Empty <IFormulaUsablePath>()); _formulaString = "10"; A.CallTo(() => _rateFormulaRepository.FormulaFor(rateKey)).Returns(_formulaString); }
private IRateObjectPaths rateObjectPathsFor(string calculationMethod, string rate) { var rateKey = new RateKey(calculationMethod, rate); if (_rateObjectPaths.Contains(rateKey)) { return(_rateObjectPaths[rateKey]); } var rateObjectPaths = new RateObjectPaths(calculationMethod, rate); _rateObjectPaths.Add(rateKey, rateObjectPaths); return(rateObjectPaths); }
public JsonResult Rate(int courseId, double point) { if (CookiesManage.Logined()) { if (courseId >= 1 && RateKey.Any(point)) { using (var unitofwork = new UnitOfWork(new ELearningDBContext())) { var user = CookiesManage.GetUser(); var course = unitofwork.Courses.FirstOrDefault(x => x.Id == courseId); if (course != null) { var rating = unitofwork.Rating.FirstOrDefault(x => x.CourseId == courseId && x.Username == user.Username); if (rating != null) { rating.Point = point; unitofwork.Rating.Put(rating, rating.Id); } else { var rate = new Rating { CourseId = course.Id, Username = CookiesManage.GetUser().Username, Point = point }; unitofwork.Rating.Add(rate); } unitofwork.Complete(); //xóa thành công return(Json(new { status = true, mess = $"Bạn đã xếp hạng: {point} sao cho khóa học: {course.Name}" })); } else { return(Json(new { status = false, mess = "course không tồn tại" })); } } } else { return(Json(new { status = false, mess = "Lỗi dữ liệu" })); } } else { return(Json(new { status = false, mess = "Vui lòng đăng nhập" })); } }
protected override void DoStart() { foreach (var flatFormulaCriteria in _flatDynamicFormulaCriteriaRepository.All()) { var rateKey = new RateKey(flatFormulaCriteria.CalculationMethod, flatFormulaCriteria.Rate); if (!_criteria.Contains(rateKey)) { _criteria.Add(new DynamicFormulaCriteria(rateKey)); } var criteria = _criteria[rateKey]; criteria.DescriptorCriteria.Add(_descriptorConditionMapper.MapFrom(flatFormulaCriteria.Condition, flatFormulaCriteria.Tag)); } }
public DescriptorCriteria CriteriaFor(RateKey rateKey) { Start(); return(_criteria.Contains(rateKey) ? _criteria[rateKey].DescriptorCriteria : new DescriptorCriteria()); }
public string DimensionNameFor(RateKey rateKey) { Start(); return(_formulaDimensions[rateKey]); }
public string FormulaFor(RateKey rateKey) { Start(); return(_allFormula[rateKey]); }
public IFormulaUsablePath PathWithAlias(RateKey rateKey, string alias) { return(ObjectPathsFor(rateKey).FirstOrDefault(path => string.Equals(path.Alias, alias))); }
public IEnumerable <IFormulaUsablePath> ObjectPathsFor(RateKey rateKey) { Start(); return(_rateObjectPaths[rateKey].ObjectPaths); }
protected override void Context() { sut = new RateKey("GiTract_PKSim", "Param_VolumeGut"); _otherKey = new RateKey("GiTract_PKSim", "Param_VolumeGut"); }
public DynamicFormulaCriteria(RateKey rateKey) { RateKey = rateKey; DescriptorCriteria = new DescriptorCriteria(); }