Exemplo n.º 1
0
 object[] EvalArguments(object obj, Type objType)
 {
     var env = new ObjectEvalEnv (obj, objType);
     var vals = new object[Arguments.Count];
     for (var i = 0; i < vals.Length; i++) {
         var a = Arguments[i];
         vals[i] = CreateObject (a.ValueType, a.ValueString, env);
     }
     return vals;
 }
Exemplo n.º 2
0
        void CheckAsserts(object obj, Type objType)
        {
            if (Result == TestResult.Fail) return;

            if (string.IsNullOrWhiteSpace (AssertString)) return;

            var expr = Expression.Parse (AssertString);

            var oenv = new ObjectEvalEnv (obj, objType);
            var env = new LocalsEvalEnv (oenv);
            env["$"] = Value;

            var val = expr.Eval (env);

            if (val != null && val is bool && (bool)val) {
                Result = TestResult.Pass;
            }
            else {
                Result = TestResult.Fail;
                FailInfo = "Assert Fail";
            }
        }