public void Should_replace_ExtractBody_with_lambda_body_provided_as_static_method_returnvalue() { Expression <Func <MyObject, bool> > expression = o => o.MyProperty == MyObject.GetExpressionFromStaticMethod().ExtractBody(o); var visitedExpression = ExpressionBodyExtractingVisitor.Rewrite(expression); ValidateVisitedExpressions(expression, visitedExpression); }
public void Should_replace_ExtractBody_with_lambda_body_provided_inline() { Expression <Func <MyObject, bool> > expression = o => o.MyProperty == ((Expression <Func <MyObject, string?> >)(i => i.MyOtherProperty)).ExtractBody(o); var visitedExpression = ExpressionBodyExtractingVisitor.Rewrite(expression); ValidateVisitedExpressions(expression, visitedExpression); }
public void Should_return_the_same_expression_if_no_ExtractBody_found() { Expression <Func <MyObject, bool> > expression = o => o.MyProperty == null; var visitedExpression = ExpressionBodyExtractingVisitor.Rewrite(expression); visitedExpression.Should().Be(expression); }
public void Should_replace_ExtractBody_with_lambda_body_provided_as_field() { Expression <Func <MyObject, string?> > extractFromExpression = o => o.MyOtherProperty; Expression <Func <MyObject, bool> > expression = o => o.MyProperty == extractFromExpression.ExtractBody(o); var visitedExpression = ExpressionBodyExtractingVisitor.Rewrite(expression); ValidateVisitedExpressions(expression, visitedExpression); }