public double MeasureBy(double value,
                                IFormulaExpressionEvaluator formulaExpressionEvaluator)
        {
            string exp = Formula.Replace("a", value.ToString());

            return(formulaExpressionEvaluator.Evaluate(exp));
        }
 public MeasureDimensionCommandHandler(IMeasureDimensionRepository measureDimensionRepository,
                                       IMeasureDimensionArgFactory measureDimensionArgFactory,
                                       IFormulaExpressionEvaluator formulaExpressionEvaluator)
 {
     _measureDimensionRepository = measureDimensionRepository;
     _measureDimensionArgFactory = measureDimensionArgFactory;
     _formulaExpressionEvaluator = formulaExpressionEvaluator;
 }
        public double MeasureUnitsFor(MeasurementArg arg,
                                      IFormulaExpressionEvaluator expressionEvaluator)
        {
            var fromMeasureUnit = this.FindUnitFrom(arg.FromUnitSymbol);
            var toMeasureUnit   = this.FindUnitFrom(arg.ToUnitSymbol);

            var valueFromBasicUnit = fromMeasureUnit.MeasureToBasicUnit(arg.FromValue,
                                                                        expressionEvaluator);
            var result = toMeasureUnit.MeasureFromBasicUnit(valueFromBasicUnit, expressionEvaluator);

            return(result);
        }
 public override double MeasureFromBasicUnit(double value,
                                             IFormulaExpressionEvaluator expressionEvaluator = null)
 {
     return(value / this.RatioFromBasicMeasureUnit.Value);
 }
 public override double MeasureToBasicUnit(double value,
                                           IFormulaExpressionEvaluator expressionEvaluator = null)
 {
     return(value * 1);
 }
 public override double MeasureFromBasicUnit(double value,
                                             IFormulaExpressionEvaluator expressionEvaluator = null)
 {
     return(this.ConvertFormulaFromBasicUnit.MeasureBy(value,
                                                       expressionEvaluator));
 }
示例#7
0
 public abstract double MeasureFromBasicUnit(double value,
                                             IFormulaExpressionEvaluator expressionEvaluator = null);
示例#8
0
 public MeasureDimensionTests()
 {
     _formulaExpressionEvaluator = Substitute.For <IFormulaExpressionEvaluator>();
 }
示例#9
0
 public MeasureDimensionService(IFormulaExpressionEvaluator formulaExpressionEvaluator)
 {
     this._formulaExpressionEvaluator = formulaExpressionEvaluator;
 }