public void ParseMethodCallsParseDocumentOnMarkupParserAndReturnsResults() { // Arrange var factory = new SpanFactory(); var parser = new RazorParser(); // Act/Assert ParserTestBase.EvaluateResults(parser.Parse(TestRazorSourceDocument.Create("foo @bar baz")), new MarkupBlock( factory.Markup("foo "), new ExpressionBlock( factory.CodeTransition(), factory.Code("bar") .AsImplicitExpression(CSharpCodeParser.DefaultKeywords) .Accepts(AcceptedCharactersInternal.NonWhiteSpace)), factory.Markup(" baz"))); }
public void ParseMethodUsesProvidedParserListenerIfSpecified() { // Arrange var factory = new SpanFactory(); var parser = new RazorParser(); // Act var results = parser.Parse(TestRazorSourceDocument.Create("foo @bar baz")); // Assert ParserTestBase.EvaluateResults(results, new MarkupBlock( factory.Markup("foo "), new ExpressionBlock( factory.CodeTransition(), factory.Code("bar") .AsImplicitExpression(CSharpCodeParser.DefaultKeywords) .Accepts(AcceptedCharactersInternal.NonWhiteSpace)), factory.Markup(" baz"))); }
public void Parse_SyntaxTreeSpansAreLinked() { // Arrange var factory = new SpanFactory(); var parser = new RazorParser(); // Act var results = parser.Parse(TestRazorSourceDocument.Create("foo @bar baz")); // Assert var spans = results.Root.Flatten().ToArray(); for (var i = 0; i < spans.Length - 1; i++) { Assert.Same(spans[i + 1], spans[i].Next); } for (var i = spans.Length - 1; i > 0; i--) { Assert.Same(spans[i - 1], spans[i].Previous); } }