Telerik.Web.Mvc.Infrastructure.Implementation.FunctionNode.Accept C# (CSharp) Method

Accept() public method

public Accept ( IFilterNodeVisitor visitor ) : void
visitor IFilterNodeVisitor
return void
        public void Accept(IFilterNodeVisitor visitor)
        {
            visitor.StartVisit(this);

            foreach (IFilterNode argument in Arguments)
            {
                argument.Accept(visitor);
            }

            visitor.EndVisit();
        }

Usage Example

        public void FunctionNode_should_accept_visitor()
        {
            visitor.Setup(v => v.StartVisit(It.IsAny<FunctionNode>())).Verifiable();
            visitor.Setup(v => v.EndVisit()).Verifiable();

            Mock<IFilterNode> first = new Mock<IFilterNode>();
            first.Setup(f => f.Accept(It.IsAny<IFilterNodeVisitor>())).Verifiable();

            FunctionNode functionNode = new FunctionNode
            {
                Arguments = { first.Object }
            };

            functionNode.Accept(visitor.Object);

            visitor.VerifyAll();
            first.Verify();
        }