public Expression Bind(Expression expression, Type elementType) { _alias = new Alias(); _finder = new FieldFinder(); _elementType = elementType; return(Visit(expression)); }
public Cache(Type type) { Type = type; Fields = new FieldFinder(this); Properties = new PropertyFinder(this); Methods = new MethodFinder(this); }
public Expression Bind(Expression expression, Type elementType) { _alias = new Alias(); _finder = new FieldFinder(); _elementType = elementType; return Visit(expression); }
public Expression Bind(Expression expression, Type elementType) { _alias = new Alias(); _memberMap = new Dictionary <MemberInfo, Expression>(); _finder = new FieldFinder(_memberMap); _elementType = elementType; return(Visit(expression)); }
public Expression Bind(Expression expression, Type elementType) { _alias = new Alias(); _memberMap = new Dictionary<MemberInfo, Expression>(); _finder = new FieldFinder(_memberMap); _elementType = elementType; return Visit(expression); }
public void Finds_by_exact_text() { var fields = new FieldFinder(Driver, "Some container labeled radio option", Root, DefaultOptions).Find(Options.Exact); Assert.That(fields.Select(e => e.Id).OrderBy(id => id), Is.EquivalentTo(new[] { "containerLabeledRadioFieldExactMatchId" })); }
public void Finds_by_substring_text() { var fields = new FieldFinder(Driver, "Some for labeled radio option", Root, DefaultOptions).Find(Options.Substring); Assert.That(fields.Select(e => e.Id).OrderBy(id => id), Is.EquivalentTo(new[] { "forLabeledRadioFieldExactMatchId", "forLabeledRadioFieldPartialMatchId" })); }
public IXUnitSetupGenerator GetInstance(IClassUnderTestFinder classUnderTestFinder) { var classUnderTestNameFinder = new ClassUnderTestNameFinder(); var constructorParametersExtractor = new ConstructorParametersExtractor(); var fieldFinder = new FieldFinder(); var memberFinder = new MemberFinder(); var constructorGenerator = new ConstructorGenerator(); var expressionStatementGenerator = new ExpressionStatementGenerator(); var fieldNameGenerator = new FieldNameGenerator(); var fieldDeclarationGenerator = new FieldDeclarationGenerator(fieldNameGenerator); var methodGenerator = new MethodGenerator(); var usingDirectivesGenerator = new UsingDirectivesGenerator(); var setupMethodBodyBuilder = new SetupMethodBodyBuilder(constructorParametersExtractor, expressionStatementGenerator, fieldNameGenerator); return(new XUnitSetupGenerator(classUnderTestNameFinder, classUnderTestFinder, constructorParametersExtractor, fieldDeclarationGenerator, setupMethodBodyBuilder, constructorGenerator, usingDirectivesGenerator, memberFinder, fieldFinder)); }
/// <summary> /// Tries to get a mapped field and a constant from the given BinaryExpression. /// </summary> /// <param name="expression"> /// The BinaryExpression to get the field and constant for. /// </param> /// <param name="value"> /// If successful, holds the Expression which defines the constant. /// </param> /// <returns> /// An instance of MappedField. /// </returns> private MappedField GetFieldAndConstant(BinaryExpression expression, out Expression value) { Expression firstMember; Expression secondMember; firstMember = new FieldFinder(Owner).GetField(expression.Left); secondMember = new FieldFinder(Owner).GetField(expression.Right); if (null != firstMember && null != secondMember) { if (IsConstant(secondMember)) { value = expression.Right; return(Owner.GetMappedField(firstMember)); } else if (IsConstant(firstMember)) { value = expression.Left; return(Owner.GetMappedField(secondMember)); } else { throw new NotSupportedException(String.Format( "Queries comparing two members are not supported: {0}.", expression)); } } else if (null != firstMember) { value = expression.Right; return(Owner.GetMappedField(firstMember)); } else if (null != secondMember) { value = expression.Left; return(Owner.GetMappedField(secondMember)); } throw new NotSupportedException(String.Format( "The query is not supported: {0}.", expression)); }
public FieldFinderTests() { _target = new FieldFinder(); }