public static void Assert(this ExpressionToCodeConfiguration config, Expression <Func <bool> > assertion, string msg = null) { var compiled = config.Value.ExpressionCompiler.Compile(assertion); bool ok; try { ok = compiled(); } catch (Exception e) { throw new AssertionFailedException(config.Value.CodeAnnotator.AnnotateExpressionTree(config, assertion.Body, "evaluating assertion aborted due to exception: " + msg, true), e); } if (!ok) { throw new AssertionFailedException(config.Value.CodeAnnotator.AnnotateExpressionTree(config, assertion.Body, msg ?? "assertion failed", true), null); } }
public static string ComplexObjectToPseudoCode(ExpressionToCodeConfiguration config, object val) => ObjectToCodeImpl.ComplexObjectToPseudoCode(config, val, 0);
static Exception Err(ExpressionToCodeConfiguration config, Expression<Func<bool>> assertion, string msg, Exception innerException) { return UnitTestingFailure.AssertionExceptionFactory( config.Value.CodeAnnotator.AnnotateExpressionTree(config, assertion.Body, msg, true), innerException); }
public static string AnnotatedToCode(this ExpressionToCodeConfiguration config, Expression expr) => config.Value.CodeAnnotator.AnnotateExpressionTree(config, expr, null, false);
public static string AnnotatedToCode <T>(this ExpressionToCodeConfiguration config, Expression <Func <T> > e) => AnnotatedToCode(config, (Expression)e);
public static string ToCode(this ExpressionToCodeConfiguration config, Expression e) => config.GetExpressionToCode().ToCode(e);
public static string ToCode <T>(this ExpressionToCodeConfiguration config, Expression <Func <T> > e) => config.GetExpressionToCode().ToCode(e);
public static string ComplexObjectToPseudoCode(this ExpressionToCodeConfiguration config, object?val) => ObjectToCodeImpl.ComplexObjectToPseudoCode(config, val, 0);
public ExpressionToCodeWrapper(ExpressionToCodeConfiguration config) { this.config = config; }