public static void ChildNodesReturnsBlockStartAndBlockEnd() { var start = new StatementBlockStart(default(int)); var end = new BlockEnd(default(int)); var codeBlock = new CodeBlock(start, end); Assert.True(codeBlock.ChildNodes().SequenceEqual(new SyntaxNode[] { start, end })); }
public static void SpanStartsAtBlockStart() { StatementBlockStart start; var codeBlock = new CodeBlock(start = new StatementBlockStart(42), new BlockEnd(100)); Assert.Equal(start.Span.Start, codeBlock.Span.Start); }
public static void AcceptCallsAcceptStatementBlockStartMethodOfSyntaxNodeVisitor() { var visitor = Substitute.For<SyntaxNodeVisitor>(); var node = new StatementBlockStart(default(int)); node.Accept(visitor); visitor.Received().VisitStatementBlockStart(node); }
public static void SpanEndReturnsMaxEndOfChildNodes() { var end = new BlockEnd(40); var start = new StatementBlockStart(4); var target = new Template(end, start); // intentionally reversed Assert.Equal(end.Span.End, target.Span.End); }
public static void ChildNodesReturnsNodesSpecifiedInConstructor() { var start = new StatementBlockStart(0); var end = new BlockEnd(2); var node = new Template(start, end); Assert.Same(start, node.ChildNodes().First()); Assert.Same(end, node.ChildNodes().Last()); }
public static void ChildNodesReturnsBlockStartAndBlockEnd() { var start = new StatementBlockStart(default(int)); var end = new BlockEnd(default(int)); var codeBlock = new CodeBlock(start, end); Assert.True(codeBlock.ChildNodes().SequenceEqual(new SyntaxNode[] { start, end })); }
public static void AcceptCallsAcceptStatementBlockStartMethodOfSyntaxNodeVisitor() { var visitor = Substitute.For <SyntaxNodeVisitor>(); var node = new StatementBlockStart(default(int)); node.Accept(visitor); visitor.Received().VisitStatementBlockStart(node); }
public static void SpanEndReturnsMaxEndOfChildNodes() { var end = new BlockEnd(40); var start = new StatementBlockStart(4); var target = new Template(end, start); // intentionally reversed Assert.Equal(end.Span.End, target.Span.End); }
public static void VisitSyntaxTokenCallsVisitTerminalNodeToAllowProcessingAllTerminalNodesPolymorphically() { var visitor = Substitute.ForPartsOf <SyntaxNodeVisitor>(); var syntaxToken = new StatementBlockStart(0); visitor.VisitSyntaxToken(syntaxToken); visitor.Received().VisitTerminalNode(syntaxToken); Assert.Equal(typeof(TerminalNode), typeof(SyntaxToken).BaseType); }
public static void VisitStatementBlockStartCallsVisitCodeBlockStartToAllowProcessingAllCodeBlockStartsPolymorphically() { var visitor = Substitute.ForPartsOf <SyntaxNodeVisitor>(); var statementBlockStart = new StatementBlockStart(0); visitor.VisitStatementBlockStart(statementBlockStart); visitor.Received().VisitCodeBlockStart(statementBlockStart); Assert.Equal(typeof(CodeBlockStart), typeof(StatementBlockStart).BaseType); }
public static void GetDescriptionReturnsDescriptionOfStatementCodeBlocks() { var target = new StatementBlockStart(0); string description; Span applicableTo; Assert.True(target.TryGetDescription(0, out description, out applicableTo)); Assert.Contains("statement", description, StringComparison.OrdinalIgnoreCase); Assert.Equal(target.Span, applicableTo); }
public static void ChildNodesReturnsNodesSpecifiedInConstructor() { var start = new StatementBlockStart(0); var end = new BlockEnd(2); var node = new Template(start, end); Assert.Same(start, node.ChildNodes().First()); Assert.Same(end, node.ChildNodes().Last()); }
public static void GetDescriptionReturnsDescriptionOfStatementCodeBlocks() { var target = new StatementBlockStart(0); string description; Span applicableTo; Assert.True(target.TryGetDescription(0, out description, out applicableTo)); Assert.Contains("statement", description, StringComparison.OrdinalIgnoreCase); Assert.Equal(target.Span, applicableTo); }
public static void VisitSyntaxTokenCallsVisitTerminalNodeToAllowProcessingAllTerminalNodesPolymorphically() { var visitor = Substitute.ForPartsOf<SyntaxNodeVisitor>(); var syntaxToken = new StatementBlockStart(0); visitor.VisitSyntaxToken(syntaxToken); visitor.Received().VisitTerminalNode(syntaxToken); Assert.Equal(typeof(TerminalNode), typeof(SyntaxToken).BaseType); }
public static void VisitStatementBlockStartCallsVisitCodeBlockStartToAllowProcessingAllCodeBlockStartsPolymorphically() { var visitor = Substitute.ForPartsOf<SyntaxNodeVisitor>(); var statementBlockStart = new StatementBlockStart(0); visitor.VisitStatementBlockStart(statementBlockStart); visitor.Received().VisitCodeBlockStart(statementBlockStart); Assert.Equal(typeof(CodeBlockStart), typeof(StatementBlockStart).BaseType); }
protected internal virtual void VisitStatementBlockStart(StatementBlockStart node) { this.VisitCodeBlockStart(node); }
protected internal virtual void VisitStatementBlockStart(StatementBlockStart node) { this.VisitCodeBlockStart(node); }
public static void SpanStartsAtBlockStart() { StatementBlockStart start; var codeBlock = new CodeBlock(start = new StatementBlockStart(42), new BlockEnd(100)); Assert.Equal(start.Span.Start, codeBlock.Span.Start); }