diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/WhiteSpaceRewriterTest.cs b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/WhiteSpaceRewriterTest.cs index 96531135c3..c1dab94172 100644 --- a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/WhiteSpaceRewriterTest.cs +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/WhiteSpaceRewriterTest.cs @@ -1,40 +1,34 @@ // Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. +using System; using Xunit; namespace Microsoft.AspNetCore.Razor.Language.Legacy { - public class WhiteSpaceRewriterTest + public class WhiteSpaceRewriterTest : CsHtmlMarkupParserTestBase { + public WhiteSpaceRewriterTest() + { + UseBaselineTests = true; + } + [Fact] public void Rewrite_Moves_Whitespace_Preceeding_ExpressionBlock_To_Parent_Block() { // Arrange - var factory = new SpanFactory(); - var start = new MarkupBlock( - factory.Markup("test"), - new ExpressionBlock( - factory.Code(" ").AsExpression(), - factory.CodeTransition(SyntaxConstants.TransitionString), - factory.Code("foo").AsExpression()), - factory.Markup("test")); + var parsed = ParseDocument( + RazorLanguageVersion.Latest, + "test @foo test", + Array.Empty()); + var rewriter = new WhiteSpaceRewriter(); // Act - var rewritten = rewriter.Rewrite(start); - factory.Reset(); + var rewritten = rewriter.Rewrite(parsed.Root); // Assert - ParserTestBase.EvaluateParseTree( - rewritten, - new MarkupBlock( - factory.Markup("test"), - factory.Markup(" "), - new ExpressionBlock( - factory.CodeTransition(SyntaxConstants.TransitionString), - factory.Code("foo").AsExpression()), - factory.Markup("test"))); + BaselineTest(parsed); } } } diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/WhiteSpaceRewriterTest/Rewrite_Moves_Whitespace_Preceeding_ExpressionBlock_To_Parent_Block.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/WhiteSpaceRewriterTest/Rewrite_Moves_Whitespace_Preceeding_ExpressionBlock_To_Parent_Block.syntaxtree.txt new file mode 100644 index 0000000000..4a1cfb5f58 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/WhiteSpaceRewriterTest/Rewrite_Moves_Whitespace_Preceeding_ExpressionBlock_To_Parent_Block.syntaxtree.txt @@ -0,0 +1,12 @@ +Markup block - Gen - 17 - (0:0,0) + Markup span - Gen - [test ] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:2 + HtmlSymbolType.Text;[test]; + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 4 - (8:0,8) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (8:0,8) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [foo] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (9:0,9) - Symbols:1 + CSharpSymbolType.Identifier;[foo]; + Markup span - Gen - [ test] - SpanEditHandler;Accepts:Any - (12:0,12) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[test];