public void CreateNewExpressionWithNamedArguments_ArgumentsAlreadyNamedCorrectly() { var innerExpression = new NamedExpression("m0", Expression.Constant(0)); var expression = Expression.New(TypeForNewExpression.GetConstructor(typeof(int)), new[] { innerExpression }); var result = NamedExpression.CreateNewExpressionWithNamedArguments(expression); Assert.That(result, Is.SameAs(expression)); }
public void GenerateSql_VistNewExpression() { var expression = Expression.New( TypeForNewExpression.GetConstructor(typeof(int)), new[] { Expression.Constant(0) }, (MemberInfo)typeof(TypeForNewExpression).GetProperty("A")); SqlGeneratingExpressionVisitor.GenerateSql(expression, _commandBuilder, _stageMock); Assert.That(_commandBuilder.GetCommandText(), Is.EqualTo("@1")); Assert.That(_commandBuilder.GetCommandParameters()[0].Value, Is.EqualTo(0)); }
public void CreateNewExpressionWithNamedArguments_WithPropertyCalledGet() { var innerExpression = Expression.Constant(0); var memberInfo = (MemberInfo)typeof(TypeForNewExpression).GetProperty("get_"); var expression = Expression.New( TypeForNewExpression.GetConstructor(typeof(int)), new[] { innerExpression }, memberInfo); var result = NamedExpression.CreateNewExpressionWithNamedArguments(expression); var expectedResult = Expression.New( TypeForNewExpression.GetConstructor(typeof(int)), new[] { new NamedExpression("get_", innerExpression) }, memberInfo); SqlExpressionTreeComparer.CheckAreEqualTrees(expectedResult, result); }
public void SetUp() { _context = new MappingResolutionContext(); _typeForNewExpressionConstructor = TypeForNewExpression.GetConstructor(typeof(int)); _namedExpressionCombiner = new NamedExpressionCombiner(_context); }