public void CanAcceptMessageWithoutHeaders()
        {
            var endpointNodeStrategy = new LogicalRoutingNodeStrategy();
            var messageNodeStrategy = new CollapseMessagesToSameReceiverMessageNodeStrategy(endpointNodeStrategy);
            var nodeStrategy = new NodeStrategy(endpointNodeStrategy, messageNodeStrategy);
            var modelBuilder = new ModelBuilder(nodeStrategy);

            var message = new ProcessedMessage
            {
                Headers = new Dictionary<string, string>()
            };

            Assert.DoesNotThrow(
                () => modelBuilder.Accept(message)
            );
        }
        public void CanAcceptMessageWithoutHeaders()
        {
            var endpointNodeStrategy = new LogicalRoutingNodeStrategy();
            var messageNodeStrategy  = new CollapseMessagesToSameReceiverMessageNodeStrategy(endpointNodeStrategy);
            var nodeStrategy         = new NodeStrategy(endpointNodeStrategy, messageNodeStrategy);
            var modelBuilder         = new ModelBuilder(nodeStrategy);

            var message = new ProcessedMessage
            {
                Headers = new Dictionary <string, string>()
            };

            Assert.DoesNotThrow(
                () => modelBuilder.Accept(message)
                );
        }
Beispiel #3
0
        public SyntaxNode(ISyntax xoToken, NodeStrategy xoStrategy, int xiMaxChildCount = -1)
        {
            // Assign object vars
            iMaxChildCount = xiMaxChildCount;
            Comments       = new List <StatusItem>();
            Strategy       = xoStrategy;

            // Add the token according to what was given
            Type oType = xoToken.GetType();

            if (oType == typeof(SyntaxToken))
            {
                Token = (SyntaxToken)xoToken;
            }
            else if (xoToken.IsNode())
            {
                Token = ((SyntaxNode)xoToken).Token;
            }
            else
            {
                // Added trivia or something obscure
                throw new Exception("Invalid object added to SyntaxNode (" + oType.ToString() + ")");
            }
        }
Beispiel #4
0
 public Symbol(ISyntax xoToken, NodeStrategy xoStrategy, int xiMaxChildren) : base(xoToken, xoStrategy, xiMaxChildren)
 {
 }
Beispiel #5
0
 /// <summary>
 ///  This can only have 1 child
 /// </summary>
 /// <param name="xoToken"></param>
 /// <param name="xoStrategy"></param>
 public Symbol(ISyntax xoToken, NodeStrategy xoStrategy) : base(xoToken, xoStrategy, 1)
 {
 }
 public ModelBuilder(NodeStrategy nodeStrategy)
 {
     _model = new Model();
     _nodeStrategy = nodeStrategy;
 }