Ejemplo n.º 1
0
        private void CkeckTypesAndValues(FunRuntime runtime, FuspecTestCase fus)
        {
            TypeAndValuesException outputInputException = new TypeAndValuesException();

            // Check OutputInputsErrors
            outputInputException.AddErrorMessage(CompareInOutTypeAndGetMessageErrorOrNull(fus.InputVarList, runtime.Inputs));
            outputInputException.AddErrorMessage(CompareInOutTypeAndGetMessageErrorOrNull(fus.OutputVarList, runtime.Outputs));

            //check SetCheckErrors
            var numberOfKit = 0;

            foreach (var checkOrSetKit in fus.SetChecks)
            {
                numberOfKit++;
                if (checkOrSetKit is SetData)
                {
                    outputInputException.AddErrorMessage(CompareSetCheckTypesAndGetMessageOrNull(numberOfKit, checkOrSetKit.ValuesKit, runtime.Inputs));
                }
                else
                {
                    outputInputException.AddErrorMessage(CompareSetCheckTypesAndGetMessageOrNull(numberOfKit, checkOrSetKit.ValuesKit, runtime.Outputs));
                }
            }

            // if find some output/input errors
            if (outputInputException.Messages.Any())
            {
                throw outputInputException;
            }
        }
Ejemplo n.º 2
0
        public void Setup()
        {
            var scripts = new Scripts();

            _const_true_runtime = Funny.Hardcore.Build(scripts.ConstTrue);
            _const_Kxb_runtime  = Funny.Hardcore.Build(scripts.ConstKxb);
            _varkxb_runtime     = Funny.Hardcore.Build(scripts.VarKxb);
            var x = _varkxb_runtime.GetVariables().First(v => v.IsReadonly);

            x.SetClrValue(100.0);
        }
Ejemplo n.º 3
0
        private void RunOneTest(FunRuntime runtime, FuspecTestCase fus)
        {
            TypeAndValuesException outputInputException = new TypeAndValuesException();
            var numberOfKit = 0;
            var setKit      = new SetData();

            if (!runtime.Inputs.Any())
            {
                runtime.Calc();
            }

            foreach (var checkOrSetKit in fus.SetChecks)
            {
                numberOfKit++;
                if (checkOrSetKit is SetData)
                {
                    setKit = (SetData)checkOrSetKit;
                    runtime.Calc(setKit.ValuesKit.Select(v => (v.Name, v.Value)).ToArray());
                }

                /*      if (checkOrSetKit is CheckData checkKit)
                 *    {
                 *        CalculationResult results;
                 *        if (!runtime.Inputs.Any())
                 *            results = runtime.Calculate();
                 *        else
                 *            results = runtime.Calculate(setKit.ValuesKit);
                 *
                 *        foreach (var res in results.Results)
                 *        {
                 *            //c��������� ���������� �������� � �heck
                 *        }
                 *    }*/
            }

            if (outputInputException.Messages.Any())
            {
                throw outputInputException;
            }
        }
Ejemplo n.º 4
0
        public void Setup()
        {
            var scripts = new Scripts();

            _const_true_runtime           = Funny.Hardcore.Build(scripts.ConstTrue);
            _const_1_runtime              = Funny.Hardcore.Build(scripts.Const1);
            _const_text_runtime           = Funny.Hardcore.Build(scripts.ConstText);
            _const_boolArray_runtime      = Funny.Hardcore.Build(scripts.ConstBoolArray);
            _const_realArray_runtime      = Funny.Hardcore.Build(scripts.ConstRealArray);
            _const_Kxb_runtime            = Funny.Hardcore.Build(scripts.ConstKxb);
            _const_multiplyArrays_runtime = Funny.Hardcore.Build(scripts.MultiplyArrayItems);
            // _const_sum_1000_runtime  = FunBuilder.Build(scripts.ConstThousandSum);
            _const_dummyBubbleSort_runtime = Funny.Hardcore.Build(scripts.DummyBubbleSort);
            _const_everything_runtime      = Funny.Hardcore.Build(scripts.Everything);

            _varkxb_runtime = Funny.Hardcore.Build(scripts.VarKxb);

            value = ("x", 100);
            Expression <Func <double, double> > ex = x => 10 * x + 1;

            dotnetEx = ex.Compile();
        }
Ejemplo n.º 5
0
        public ProfileCalculateSet()
        {
            _primitiveConstIntSimpleArithmetics  = Build(Scripts.PrimitiveConstIntSimpleArithmetics);
            _primitiveConstRealSimpleArithmetics = Build(Scripts.PrimitiveConstRealSimpleArithmetics);
            _primitiveConstBoolSimpleArithmetics = Build(Scripts.PrimitiveConstBoolSimpleArithmetics);
            _primitiveCalcReal2Var = Build(Scripts.PrimitiveCalcReal2Var);
            _primitiveCalcInt2Var  = Build(Scripts.PrimitiveCalcInt2Var);

            _calcIntOp          = Build(Scripts.CalcIntOp);
            _calcRealOp         = Build(Scripts.CalcRealOp);
            _calcBoolOp         = Build(Scripts.CalcBoolOp);
            _calcSquareEquation = Build(Scripts.CalcSquareEquation);
            _calcTextOp         = Build(Scripts.CalcTextOp);
            _calcInterpolation  = Build(Scripts.CalcInterpolation);
            _calcGenericFunc    = Build(Scripts.CalcGenericFunc);

            _constTrueRuntime      = Build(Scripts.ConstTrue);
            _const1Runtime         = Build(Scripts.Const1);
            _constTextRuntime      = Build(Scripts.ConstText);
            _constBoolArrayRuntime = Build(Scripts.ConstBoolArray);
            _constRealArrayRuntime = Build(Scripts.ConstRealArray);
            _calcSingleBool        = Build(Scripts.CalcSingleBool);
            _constBool             = Build(Scripts.ConstBoolOp);
            _calcReal                = Build(Scripts.CalcSingleReal);
            _calcText                = Build(Scripts.CalcSingleText);
            _calcKxb                 = Build(Scripts.CalcKxb);
            _calcRealArray           = Build(Scripts.CalcRealArray);
            _calcFourArgs            = Build(Scripts.CalcFourArgs);
            _constMultiplyArrayItems = Build(Scripts.MultiplyArrayItems);
            _constDummyBubbleSort    = Build(Scripts.DummyBubbleSort);
            _constEverything         = Build(Scripts.Everything);

            _constInterpolation  = Build(Scripts.ConstInterpolation);
            _constSquareEquation = Build(Scripts.ConstSquareEquation);
            _constGenericFunc    = Build(Scripts.ConstGenericFunc);
        }
Ejemplo n.º 6
0
        public ProfileUpdateSet()
        {
            _dictionary         = BaseFunctions.DefaultDictionary;
            _calcIntOp          = Build(Scripts.CalcIntOp);
            _calcRealOp         = Build(Scripts.CalcRealOp);
            _calcBoolOp         = Build(Scripts.CalcBoolOp);
            _calcSquareEquation = Build(Scripts.CalcSquareEquation);
            _calcTextOp         = Build(Scripts.CalcTextOp);
            _calcInterpolation  = Build(Scripts.CalcInterpolation);
            _calcGenericFunc    = Build(Scripts.CalcGenericFunc);

            _constTrue               = Build(Scripts.ConstTrue);
            _const1                  = Build(Scripts.Const1);
            _constSingleText         = Build(Scripts.ConstText);
            _constBoolArray          = Build(Scripts.ConstBoolArray);
            _constRealArray          = Build(Scripts.ConstRealArray);
            _calcSingleBool          = Build(Scripts.CalcSingleBool);
            _constBool               = Build(Scripts.ConstBoolOp);
            _calcSingleReal          = Build(Scripts.CalcSingleReal);
            _calcSingleText          = Build(Scripts.CalcSingleText);
            _calcKxb                 = Build(Scripts.CalcKxb);
            _calcRealArray           = Build(Scripts.CalcRealArray);
            _calcFourArgs            = Build(Scripts.CalcFourArgs);
            _constMultiplyArrayItems = Build(Scripts.MultiplyArrayItems);
            _constDummyBubbleSort    = Build(Scripts.DummyBubbleSort);
            _constEverything         = Build(Scripts.Everything);

            _constInterpolation  = Build(Scripts.ConstInterpolation);
            _constSquareEquation = Build(Scripts.ConstSquareEquation);
            _constGenericFunc    = Build(Scripts.ConstGenericFunc);

            _primitiveConstIntSimpleArithmetics  = Build(Scripts.PrimitiveConstIntSimpleArithmetics);
            _primitiveConstRealSimpleArithmetics = Build(Scripts.PrimitiveConstRealSimpleArithmetics);
            _primitiveConstBoolSimpleArithmetics = Build(Scripts.PrimitiveConstBoolSimpleArithmetics);
            _primitiveCalcReal2Var = Build(Scripts.PrimitiveCalcReal2Var);
            _primitiveCalcInt2Var  = Build(Scripts.PrimitiveCalcInt2Var);

            _primitiveCalcReal2Var["a"] = 42.1;
            _primitiveCalcReal2Var["b"] = 24.0;

            _primitiveCalcInt2Var["a"] = 42;
            _primitiveCalcInt2Var["b"] = 24;

            _calcSingleReal["x"]    = 1.0;
            _calcSingleText["x"]    = "foo";
            _calcBoolOp["x"]        = false;
            _calcKxb["x"]           = 42.2;
            _calcRealArray["x"]     = 24.6;
            _calcFourArgs["a"]      = 24.6;
            _calcFourArgs["b"]      = 12.2;
            _calcFourArgs["c"]      = 654.3;
            _calcFourArgs["d"]      = "bbbaaaaa";
            _calcInterpolation["a"] = 2.0;
            _calcInterpolation["b"] = 4.0;

            _calcGenericFunc["a"] = 1.0;
            _calcGenericFunc["b"] = 2.0;
            _calcGenericFunc["c"] = 3.0;

            _calcSquareEquation["a"] = 1.0;
            _calcSquareEquation["b"] = 10.0;
            _calcSquareEquation["c"] = 1.5;

            _calcIntOp ["x"] = 42;
            _calcRealOp["x"] = 42.0;
            _calcBoolOp["x"] = true;
            _calcTextOp["x"] = "vasa";

            _calcInterpolation["a"] = 2.0;
            _calcInterpolation["b"] = 1.0;

            _calcSingleBool["x"] = true;
        }
Ejemplo n.º 7
0
 public void Setup()
 {
     _expression = "(4 * 12 / 7) + ((9 * 2) / 8)";
     _runtime    = Funny.Hardcore.Build(_expression);
     _builder    = Funny.Hardcore;
 }