diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/TagHelperBlockRewriterTest.cs b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/TagHelperBlockRewriterTest.cs index 06131ae599..440b9486cd 100644 --- a/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/TagHelperBlockRewriterTest.cs +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/Legacy/TagHelperBlockRewriterTest.cs @@ -3,320 +3,141 @@ using System; using System.Collections.Generic; -using System.Globalization; -using System.Linq; using Xunit; namespace Microsoft.AspNetCore.Razor.Language.Legacy { public class TagHelperBlockRewriterTest : TagHelperRewritingTestBase { - public static TheoryData SymbolBoundAttributeData + public TagHelperBlockRewriterTest() { - get - { - var factory = new SpanFactory(); - - return new TheoryData - { - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("ul", - attributes: new List - { - new TagHelperAttributeNode("bound", null, AttributeStructure.Minimized), - new TagHelperAttributeNode( - "[item]", - factory.CodeMarkup("items").With(new ExpressionChunkGenerator()), - AttributeStructure.SingleQuotes) - })) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("ul", - attributes: new List - { - new TagHelperAttributeNode("bound", null, AttributeStructure.Minimized), - new TagHelperAttributeNode( - "[(item)]", - factory.CodeMarkup("items").With(new ExpressionChunkGenerator()), - AttributeStructure.SingleQuotes) - })) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("button", - attributes: new List - { - new TagHelperAttributeNode("bound", null, AttributeStructure.Minimized), - new TagHelperAttributeNode( - "(click)", - factory.CodeMarkup("doSomething()").With(new ExpressionChunkGenerator()), - AttributeStructure.SingleQuotes) - }, - children: factory.Markup("Click Me"))) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("button", - attributes: new List - { - new TagHelperAttributeNode("bound", null, AttributeStructure.Minimized), - new TagHelperAttributeNode( - "(^click)", - factory.CodeMarkup("doSomething()").With(new ExpressionChunkGenerator()), - AttributeStructure.SingleQuotes) - }, - children: factory.Markup("Click Me"))) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("template", - attributes: new List - { - new TagHelperAttributeNode("bound", null, AttributeStructure.Minimized), - new TagHelperAttributeNode( - "*something", - factory.Markup("value"), - AttributeStructure.SingleQuotes) - })) - }, - { - "
", - new MarkupBlock( - new MarkupTagHelperBlock("div", - attributes: new List - { - new TagHelperAttributeNode("bound", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("#localminimized", null, AttributeStructure.Minimized) - })) - }, - { - "
", - new MarkupBlock( - new MarkupTagHelperBlock("div", - attributes: new List - { - new TagHelperAttributeNode("bound", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("#local", factory.Markup("value"), AttributeStructure.SingleQuotes) - })) - }, - }; - } + UseBaselineTests = true; } - [Theory] - [MemberData(nameof(SymbolBoundAttributeData))] - public void Rewrite_CanHandleSymbolBoundAttributes(string documentContent, object expectedOutput) + public static TagHelperDescriptor[] SymbolBoundAttributes_Descriptors = new[] { - // Arrange - var descriptors = new[] - { - TagHelperDescriptorBuilder.Create("CatchAllTagHelper", "SomeAssembly") - .TagMatchingRuleDescriptor(rule => - rule - .RequireTagName("*") - .RequireAttributeDescriptor(attribute => attribute.Name("bound"))) - .BoundAttributeDescriptor(attribute => - attribute - .Name("[item]") - .PropertyName("ListItems") - .TypeName(typeof(List).Namespace + "List")) - .BoundAttributeDescriptor(attribute => - attribute - .Name("[(item)]") - .PropertyName("ArrayItems") - .TypeName(typeof(string[]).Namespace + "System.String[]")) - .BoundAttributeDescriptor(attribute => - attribute - .Name("(click)") - .PropertyName("Event1") - .TypeName(typeof(Action).FullName)) - .BoundAttributeDescriptor(attribute => - attribute - .Name("(^click)") - .PropertyName("Event2") - .TypeName(typeof(Action).FullName)) - .BoundAttributeDescriptor(attribute => - attribute - .Name("*something") - .PropertyName("StringProperty1") - .TypeName(typeof(string).FullName)) - .BoundAttributeDescriptor(attribute => - attribute - .Name("#local") - .PropertyName("StringProperty2") - .TypeName(typeof(string).FullName)) - .Build() - }; + TagHelperDescriptorBuilder.Create("CatchAllTagHelper", "SomeAssembly") + .TagMatchingRuleDescriptor(rule => + rule + .RequireTagName("*") + .RequireAttributeDescriptor(attribute => attribute.Name("bound"))) + .BoundAttributeDescriptor(attribute => + attribute + .Name("[item]") + .PropertyName("ListItems") + .TypeName(typeof(List).Namespace + "List")) + .BoundAttributeDescriptor(attribute => + attribute + .Name("[(item)]") + .PropertyName("ArrayItems") + .TypeName(typeof(string[]).Namespace + "System.String[]")) + .BoundAttributeDescriptor(attribute => + attribute + .Name("(click)") + .PropertyName("Event1") + .TypeName(typeof(Action).FullName)) + .BoundAttributeDescriptor(attribute => + attribute + .Name("(^click)") + .PropertyName("Event2") + .TypeName(typeof(Action).FullName)) + .BoundAttributeDescriptor(attribute => + attribute + .Name("*something") + .PropertyName("StringProperty1") + .TypeName(typeof(string).FullName)) + .BoundAttributeDescriptor(attribute => + attribute + .Name("#local") + .PropertyName("StringProperty2") + .TypeName(typeof(string).FullName)) + .Build() + }; - // Act & Assert - EvaluateData(descriptors, documentContent, (MarkupBlock)expectedOutput, expectedErrors: new RazorDiagnostic[0]); + [Fact] + public void Rewrite_CanHandleSymbolBoundAttributes1() + { + EvaluateData(SymbolBoundAttributes_Descriptors, "
    "); } - public static TheoryData WithoutEndTagElementData + [Fact] + public void Rewrite_CanHandleSymbolBoundAttributes2() { - get - { - var factory = new SpanFactory(); - var blockFactory = new BlockFactory(factory); - - // documentContent, expectedOutput - return new TheoryData - { - { - "", - new MarkupBlock(new MarkupTagHelperBlock("input", TagMode.StartTagOnly)) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.StartTagOnly, - attributes: new List - { - new TagHelperAttributeNode("type", factory.Markup("text"), AttributeStructure.SingleQuotes) - })) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("input", TagMode.StartTagOnly), - new MarkupTagHelperBlock("input", TagMode.StartTagOnly)) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.StartTagOnly, - attributes: new List - { - new TagHelperAttributeNode("type", factory.Markup("text"), AttributeStructure.SingleQuotes) - }), - new MarkupTagHelperBlock("input", TagMode.StartTagOnly)) - }, - { - "
    ", - new MarkupBlock( - blockFactory.MarkupTagBlock("
    "), - new MarkupTagHelperBlock("input", TagMode.StartTagOnly), - new MarkupTagHelperBlock("input", TagMode.StartTagOnly), - blockFactory.MarkupTagBlock("
    ")) - }, - }; - } + EvaluateData(SymbolBoundAttributes_Descriptors, "
      "); } - [Theory] - [MemberData(nameof(WithoutEndTagElementData))] - public void Rewrite_CanHandleWithoutEndTagTagStructure(string documentContent, object expectedOutput) + [Fact] + public void Rewrite_CanHandleSymbolBoundAttributes3() { - // Arrange - var descriptors = new TagHelperDescriptor[] - { - TagHelperDescriptorBuilder.Create("InputTagHelper", "SomeAssembly") - .TagMatchingRuleDescriptor(rule => - rule - .RequireTagName("input") - .RequireTagStructure(TagStructure.WithoutEndTag)) - .Build() - }; - - // Act & Assert - EvaluateData(descriptors, documentContent, (MarkupBlock)expectedOutput, expectedErrors: new RazorDiagnostic[0]); + EvaluateData(SymbolBoundAttributes_Descriptors, ""); } - public static TheoryData TagStructureCompatibilityData + [Fact] + public void Rewrite_CanHandleSymbolBoundAttributes4() { - get - { - var factory = new SpanFactory(); - var blockFactory = new BlockFactory(factory); - - // documentContent, structure1, structure2, expectedOutput - return new TheoryData - { - { - "", - TagStructure.Unspecified, - TagStructure.Unspecified, - new MarkupBlock(new MarkupTagHelperBlock("input", TagMode.StartTagAndEndTag)) - }, - { - "", - TagStructure.Unspecified, - TagStructure.Unspecified, - new MarkupBlock(new MarkupTagHelperBlock("input", TagMode.SelfClosing)) - }, - { - "", - TagStructure.Unspecified, - TagStructure.WithoutEndTag, - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.StartTagOnly, - attributes: new List - { - new TagHelperAttributeNode("type", factory.Markup("text"), AttributeStructure.SingleQuotes) - })) - }, - { - "", - TagStructure.WithoutEndTag, - TagStructure.WithoutEndTag, - new MarkupBlock( - new MarkupTagHelperBlock("input", TagMode.StartTagOnly), - new MarkupTagHelperBlock("input", TagMode.StartTagOnly)) - }, - { - "", - TagStructure.Unspecified, - TagStructure.NormalOrSelfClosing, - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.StartTagAndEndTag, - attributes: new List - { - new TagHelperAttributeNode("type", factory.Markup("text"), AttributeStructure.SingleQuotes) - })) - }, - { - "", - TagStructure.Unspecified, - TagStructure.WithoutEndTag, - new MarkupBlock(new MarkupTagHelperBlock("input", TagMode.SelfClosing)) - }, - - { - "", - TagStructure.NormalOrSelfClosing, - TagStructure.Unspecified, - new MarkupBlock(new MarkupTagHelperBlock("input", TagMode.SelfClosing)) - }, - }; - } + EvaluateData(SymbolBoundAttributes_Descriptors, ""); } - [Theory] - [MemberData(nameof(TagStructureCompatibilityData))] - public void Rewrite_AllowsCompatibleTagStructures( - string documentContent, - TagStructure structure1, - TagStructure structure2, - object expectedOutput) + [Fact] + public void Rewrite_CanHandleSymbolBoundAttributes5() + { + EvaluateData(SymbolBoundAttributes_Descriptors, ""); + } + + [Fact] + public void Rewrite_CanHandleSymbolBoundAttributes6() + { + EvaluateData(SymbolBoundAttributes_Descriptors, "
      "); + } + + [Fact] + public void Rewrite_CanHandleSymbolBoundAttributes7() + { + EvaluateData(SymbolBoundAttributes_Descriptors, "
      "); + } + + public static TagHelperDescriptor[] WithoutEndTag_Descriptors = new TagHelperDescriptor[] + { + TagHelperDescriptorBuilder.Create("InputTagHelper", "SomeAssembly") + .TagMatchingRuleDescriptor(rule => + rule + .RequireTagName("input") + .RequireTagStructure(TagStructure.WithoutEndTag)) + .Build() + }; + + [Fact] + public void Rewrite_CanHandleWithoutEndTagTagStructure1() + { + EvaluateData(WithoutEndTag_Descriptors, ""); + } + + [Fact] + public void Rewrite_CanHandleWithoutEndTagTagStructure2() + { + EvaluateData(WithoutEndTag_Descriptors, ""); + } + + [Fact] + public void Rewrite_CanHandleWithoutEndTagTagStructure3() + { + EvaluateData(WithoutEndTag_Descriptors, ""); + } + + [Fact] + public void Rewrite_CanHandleWithoutEndTagTagStructure4() + { + EvaluateData(WithoutEndTag_Descriptors, ""); + } + + [Fact] + public void Rewrite_CanHandleWithoutEndTagTagStructure5() + { + EvaluateData(WithoutEndTag_Descriptors, "
      "); + } + + public static TagHelperDescriptor[] GetTagStructureCompatibilityDescriptors(TagStructure structure1, TagStructure structure2) { - // Arrange - var factory = new SpanFactory(); - var blockFactory = new BlockFactory(factory); var descriptors = new TagHelperDescriptor[] { TagHelperDescriptorBuilder.Create("InputTagHelper1", "SomeAssembly") @@ -333,3576 +154,1933 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy .Build() }; - // Act & Assert - EvaluateData(descriptors, documentContent, (MarkupBlock)expectedOutput, expectedErrors: new RazorDiagnostic[0]); + return descriptors; } - public static TheoryData MalformedTagHelperAttributeBlockData - { - get - { - var factory = new SpanFactory(); - var blockFactory = new BlockFactory(factory); - Func createInvalidDoBlock = extraCode => - { - return new MarkupBlock( - new MarkupBlock( - new DynamicAttributeBlockChunkGenerator( - new LocationTagged( - string.Empty, - new SourceLocation(10, 0, 10)), - new SourceLocation(10, 0, 10)), - new StatementBlock( - factory.CodeTransition(), - factory.Code("do {" + extraCode).AsStatement()))); - }; - - return new TheoryData - { - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode( - "bar", - new MarkupBlock(factory.Markup("false"), factory.Markup(" ")), - AttributeStructure.SingleQuotes) - })), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p") - } - }, - { - "

      - { - new TagHelperAttributeNode( - "bar", - new MarkupBlock( - factory.Markup("false"), - factory.Markup(" - { - new TagHelperAttributeNode( - "bar", - factory.Markup("false"), - AttributeStructure.NoQuotes) - })), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperAttributeListMustBeWellFormed( - new SourceSpan(12, 0, 12, 1)) - } - }, - { - "

      - { - new TagHelperAttributeNode( - "bar", - factory.Markup("false'")) - })), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p") - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode( - "bar", - new MarkupBlock( - factory.Markup("false'"), - factory.Markup(" >

      "))) - })), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p") - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("foo", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("bar", null, AttributeStructure.Minimized) - }, - new MarkupTagHelperBlock("strong"))), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(11, 0, 11), contentLength: 6), "strong"), - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup("btn"), AttributeStructure.NoQuotes) - })), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p") - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup("btn"), AttributeStructure.NoQuotes) - })), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p") - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode( - "class", - new MarkupBlock(factory.Markup("btn"), factory.Markup(" bar="))), - new TagHelperAttributeNode("foo", null, AttributeStructure.Minimized) - }, - new MarkupTagHelperBlock("strong"))), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(24, 0, 24), contentLength: 6), "strong") - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode( - "class", - new MarkupBlock(factory.Markup("btn"), factory.Markup(" bar="))), - new TagHelperAttributeNode("foo", null, AttributeStructure.Minimized), - })), - new RazorDiagnostic[0] - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p")), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelpersCannotHaveCSharpInTagDeclaration(new SourceSpan(3, 0, 3, 13), "p") - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p")), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelpersCannotHaveCSharpInTagDeclaration(new SourceSpan(3, 0, 3, 13), "p") - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode( - "class", - new MarkupBlock( - new MarkupBlock( - new DynamicAttributeBlockChunkGenerator( - new LocationTagged( - string.Empty, - new SourceLocation(9, 0, 9)), - new SourceLocation(9, 0, 9)), - new ExpressionBlock( - factory.CodeTransition(), - factory.Code("DateTime.Now") - .AsImplicitExpression(CSharpCodeParser.DefaultKeywords) - .Accepts(AcceptedCharactersInternal.NonWhiteSpace)))), - AttributeStructure.DoubleQuotes) - })), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p") - } - }, - { - "

      - { - new TagHelperAttributeNode( - "class", - createInvalidDoBlock(string.Empty)) - })), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_ExpectedEndOfBlockBeforeEOF( - new SourceSpan(new SourceLocation(11, 0, 11), contentLength: 1), "do", "}", "{"), - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", createInvalidDoBlock("\">

      ")) - })), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_ExpectedEndOfBlockBeforeEOF( - new SourceSpan(new SourceLocation(11, 0, 11), contentLength: 1), "do", "}", "{"), - RazorDiagnosticFactory.CreateParsing_UnterminatedStringLiteral( - new SourceSpan(filePath: null, absoluteIndex: 15, lineIndex: 0, characterIndex: 15, length: 1)) - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p")), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelpersCannotHaveCSharpInTagDeclaration(new SourceSpan(3, 0, 3, 30), "p"), - RazorDiagnosticFactory.CreateParsing_ExpectedEndOfBlockBeforeEOF( - new SourceSpan(new SourceLocation(4, 0, 4), contentLength: 1), "do", "}", "{"), - RazorDiagnosticFactory.CreateParsing_UnexpectedEndTag( - new SourceSpan(filePath: null, absoluteIndex: 31, lineIndex: 0, characterIndex: 31, length: 1), "p") - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup("some"), AttributeStructure.NoQuotes) - })), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperAttributeListMustBeWellFormed(new SourceSpan(13, 0, 13, 13)) - } - }, - }; - } - } - - [Theory] - [MemberData(nameof(MalformedTagHelperAttributeBlockData))] - public void Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes( - string documentContent, - object expectedOutput, - object expectedErrors) - { - RunParseTreeRewriterTest(documentContent, (MarkupBlock)expectedOutput, (RazorDiagnostic[])expectedErrors, "strong", "p"); - } - - public static TheoryData MalformedTagHelperBlockData - { - get - { - var factory = new SpanFactory(); - var blockFactory = new BlockFactory(factory); - - return new TheoryData - { - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("strong", - new MarkupTagHelperBlock("p"))), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 6), "strong"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 6), "strong"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(9, 0, 9), contentLength: 1), "p") - } - }, - { - " <

      ", - new MarkupBlock( - blockFactory.MarkupTagBlock("<"), - blockFactory.MarkupTagBlock("<"), - blockFactory.MarkupTagBlock(""), - factory.Markup(" "), - blockFactory.MarkupTagBlock("<"), - new MarkupTagHelperBlock("p")), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(4, 0, 4), contentLength: 6), "strong"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(14, 0, 14), contentLength: 1), "p") - } - }, - { - "<<> <<>>", - new MarkupBlock( - blockFactory.MarkupTagBlock("<"), - blockFactory.MarkupTagBlock("<"), - new MarkupTagHelperBlock("strong", - factory.Markup("> "), - blockFactory.MarkupTagBlock("<"), - blockFactory.MarkupTagBlock("<>"), - factory.Markup(">"))), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(3, 0, 3), contentLength: 6), "strong") - } - }, - { - "

      ", - new MarkupBlock( - blockFactory.MarkupTagBlock(""))), - new [] - { - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(14, 0, 14), contentLength: 1), "p") - } - } - }; - } - } - - [Theory] - [MemberData(nameof(MalformedTagHelperBlockData))] - public void Rewrite_CreatesErrorForMalformedTagHelper( - string documentContent, - object expectedOutput, - object expectedErrors) - { - RunParseTreeRewriterTest(documentContent, (MarkupBlock)expectedOutput, (RazorDiagnostic[])expectedErrors, "strong", "p"); - } - - public static TheoryData CodeTagHelperAttributesData - { - get - { - var factory = new SpanFactory(); - var dateTimeNow = new MarkupBlock( - factory.Markup(" "), - new ExpressionBlock( - factory.CodeTransition(), - factory.Code("DateTime.Now") - .AsImplicitExpression(CSharpCodeParser.DefaultKeywords) - .Accepts(AcceptedCharactersInternal.NonWhiteSpace))); - - return new TheoryData - { - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("person", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("age", factory.CodeMarkup("12").With(new ExpressionChunkGenerator())) - })) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("person", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "birthday", - factory.CodeMarkup("DateTime.Now").With(new ExpressionChunkGenerator())) - })) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("person", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "age", - new MarkupBlock( - new MarkupBlock( - new ExpressionBlock( - factory.CodeTransition(), - factory - .CSharpCodeMarkup("DateTime.Now.Year") - .With(new ExpressionChunkGenerator()))))) - })) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("person", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "age", - new MarkupBlock( - new MarkupBlock( - factory.CodeMarkup(" ").With(new ExpressionChunkGenerator()), - new ExpressionBlock( - factory.CSharpCodeMarkup("@").With(new ExpressionChunkGenerator()), - factory - .CSharpCodeMarkup("DateTime.Now.Year") - .With(new ExpressionChunkGenerator()))))) - })) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("person", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("name", factory.Markup("John")) - })) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("person", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "name", - new MarkupBlock(factory.Markup("Time:"), dateTimeNow)) - })) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("person", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "age", - new MarkupBlock( - factory.CodeMarkup("1").With(new ExpressionChunkGenerator()), - factory.CodeMarkup(" +").With(new ExpressionChunkGenerator()), - new MarkupBlock( - factory.CodeMarkup(" ").With(new ExpressionChunkGenerator()), - new ExpressionBlock( - factory.CSharpCodeMarkup("@").With(new ExpressionChunkGenerator()), - factory.CSharpCodeMarkup("value") - .With(new ExpressionChunkGenerator()))), - factory.CodeMarkup(" +").With(new ExpressionChunkGenerator()), - factory.CodeMarkup(" 2").With(new ExpressionChunkGenerator()))), - new TagHelperAttributeNode( - "birthday", - new MarkupBlock( - factory.CodeMarkup("(bool)").With(new ExpressionChunkGenerator()), - new MarkupBlock( - new ExpressionBlock( - factory.CSharpCodeMarkup("@").With(new ExpressionChunkGenerator()), - factory - .CSharpCodeMarkup("Bag[\"val\"]") - .With(new ExpressionChunkGenerator()))), - factory.CodeMarkup(" ?").With(new ExpressionChunkGenerator()), - new MarkupBlock( - factory.CodeMarkup(" @").With(new ExpressionChunkGenerator()) - .As(SpanKindInternal.Code), - factory.CodeMarkup("@").With(SpanChunkGenerator.Null) - .As(SpanKindInternal.Code)), - factory.CodeMarkup("DateTime").With(new ExpressionChunkGenerator()), - factory.CodeMarkup(" :").With(new ExpressionChunkGenerator()), - new MarkupBlock( - factory.CodeMarkup(" ").With(new ExpressionChunkGenerator()), - new ExpressionBlock( - factory.CSharpCodeMarkup("@").With(new ExpressionChunkGenerator()), - factory - .CSharpCodeMarkup("DateTime.Now") - .With(new ExpressionChunkGenerator())))), - AttributeStructure.SingleQuotes) - })) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("person", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("age", factory.CodeMarkup("12").With(new ExpressionChunkGenerator())), - new TagHelperAttributeNode( - "birthday", - factory.CodeMarkup("DateTime.Now").With(new ExpressionChunkGenerator())), - new TagHelperAttributeNode( - "name", - new MarkupBlock(factory.Markup("Time:"), dateTimeNow)) - })) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("person", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("age", factory.CodeMarkup("12").With(new ExpressionChunkGenerator())), - new TagHelperAttributeNode( - "birthday", - factory.CodeMarkup("DateTime.Now").With(new ExpressionChunkGenerator())), - new TagHelperAttributeNode( - "name", - new MarkupBlock( - factory.Markup("Time:"), - new MarkupBlock( - factory.Markup(" @").Accepts(AcceptedCharactersInternal.None), - factory.Markup("@") - .With(SpanChunkGenerator.Null) - .Accepts(AcceptedCharactersInternal.None)), - dateTimeNow)) - })) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("person", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("age", factory.CodeMarkup("12").With(new ExpressionChunkGenerator())), - new TagHelperAttributeNode( - "birthday", - factory.CodeMarkup("DateTime.Now").With(new ExpressionChunkGenerator())), - new TagHelperAttributeNode( - "name", - new MarkupBlock( - new MarkupBlock( - factory.Markup("@").Accepts(AcceptedCharactersInternal.None), - factory.Markup("@") - .With(SpanChunkGenerator.Null) - .Accepts(AcceptedCharactersInternal.None)), - factory.Markup("BoundStringAttribute"))) - })) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("person", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "age", - new MarkupBlock( - new MarkupBlock( - factory.CodeMarkup("@").With(new ExpressionChunkGenerator()), - factory.CodeMarkup("@").With(SpanChunkGenerator.Null)), - new MarkupBlock( - factory.EmptyHtml() - .AsCodeMarkup().With(new ExpressionChunkGenerator()) - .As(SpanKindInternal.Code), - new ExpressionBlock( - factory.CSharpCodeMarkup("@").With(new ExpressionChunkGenerator()), - factory.CSharpCodeMarkup("(").With(new ExpressionChunkGenerator()), - factory.CSharpCodeMarkup("11+1") - .With(new ExpressionChunkGenerator()), - factory.CSharpCodeMarkup(")").With(new ExpressionChunkGenerator()))))), - new TagHelperAttributeNode( - "birthday", - factory.CodeMarkup("DateTime.Now").With(new ExpressionChunkGenerator())), - new TagHelperAttributeNode( - "name", - new MarkupBlock(factory.Markup("Time:"), dateTimeNow)) - })) - }, - }; - } - } - - [Theory] - [MemberData(nameof(CodeTagHelperAttributesData))] - public void Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes( - string documentContent, - object expectedOutput) + [Fact] + public void Rewrite_AllowsCompatibleTagStructures1() { // Arrange - var descriptors = new TagHelperDescriptor[] - { - TagHelperDescriptorBuilder.Create("PersonTagHelper", "personAssembly") - .TagMatchingRuleDescriptor(rule => rule.RequireTagName("person")) - .BoundAttributeDescriptor(attribute => - attribute - .Name("age") - .PropertyName("Age") - .TypeName(typeof(int).FullName)) - .BoundAttributeDescriptor(attribute => - attribute - .Name("birthday") - .PropertyName("BirthDay") - .TypeName(typeof(DateTime).FullName)) - .BoundAttributeDescriptor(attribute => - attribute - .Name("name") - .PropertyName("Name") - .TypeName(typeof(string).FullName)) - .Build() - }; + var descriptors = GetTagStructureCompatibilityDescriptors(TagStructure.Unspecified, TagStructure.Unspecified); // Act & Assert - EvaluateData( - descriptors, - documentContent, - (MarkupBlock)expectedOutput, - expectedErrors: Enumerable.Empty()); + EvaluateData(descriptors, ""); } - public static IEnumerable IncompleteHelperBlockData - { - get - { - var factory = new SpanFactory(); - var blockFactory = new BlockFactory(factory); - - yield return new object[] - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup("foo"), AttributeStructure.NoQuotes), - new TagHelperAttributeNode( - "dynamic", - new MarkupBlock( - new MarkupBlock( - new DynamicAttributeBlockChunkGenerator( - new LocationTagged( - string.Empty, - new SourceLocation(21, 0, 21)), - new SourceLocation(21, 0, 21)), - new ExpressionBlock( - factory.CodeTransition(), - factory.Code("DateTime.Now") - .AsImplicitExpression(CSharpCodeParser.DefaultKeywords) - .Accepts(AcceptedCharactersInternal.NonWhiteSpace)))), - AttributeStructure.DoubleQuotes), - new TagHelperAttributeNode("style", factory.Markup("color:red;"), AttributeStructure.NoQuotes) - }, - new MarkupTagHelperBlock("strong")), - blockFactory.MarkupTagBlock("
      ")), - new RazorDiagnostic[] - { - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(absoluteIndex: 53, lineIndex: 0, characterIndex: 53, length: 6), "strong"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(absoluteIndex: 66, lineIndex: 0, characterIndex: 66, length: 6), "strong") - } - }; - yield return new object[] - { - "

      Hello World

      ", - new MarkupBlock( - blockFactory.MarkupTagBlock("
      "), - new MarkupTagHelperBlock("p", - factory.Markup("Hello "), - new MarkupTagHelperBlock("strong", - factory.Markup("World")), - blockFactory.MarkupTagBlock("
      "))), - new RazorDiagnostic[] - { - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(absoluteIndex: 6, lineIndex: 0, characterIndex: 6, length: 1), "p") - } - }; - yield return new object[] - { - "

      Hello World

      ", - new MarkupBlock( - blockFactory.MarkupTagBlock("
      "), - new MarkupTagHelperBlock("p", - factory.Markup("Hello "), - new MarkupTagHelperBlock("strong", - factory.Markup("World"), - blockFactory.MarkupTagBlock("
      ")))), - new RazorDiagnostic[] - { - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(absoluteIndex: 6, lineIndex: 0, characterIndex: 6, length: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(absoluteIndex: 15, lineIndex: 0, characterIndex: 15, length: 6), "strong") - } - }; - yield return new object[] - { - "

      Hello

      World

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup("foo")) - }, - factory.Markup("Hello "), - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("style", factory.Markup("color:red;")) - }, - factory.Markup("World")))), - new RazorDiagnostic[] - { - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p") - } - }; - } - } - - [Theory] - [MemberData(nameof(IncompleteHelperBlockData))] - public void TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper( - string documentContent, - object expectedOutput, - object expectedErrors) - { - RunParseTreeRewriterTest(documentContent, (MarkupBlock)expectedOutput, (RazorDiagnostic[])expectedErrors, "strong", "p"); - } - - - public static IEnumerable OddlySpacedBlockData - { - get - { - var factory = new SpanFactory(); - - yield return new object[] - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup(" foo")), - new TagHelperAttributeNode( - "style", - new MarkupBlock( - factory.Markup(" color"), - factory.Markup(" :"), - factory.Markup(" red"), - factory.Markup(" ;"), - factory.Markup(" "))) - })) - }; - yield return new object[] - { - "

      Hello World

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup(" foo")), - new TagHelperAttributeNode( - "style", - new MarkupBlock( - factory.Markup(" color"), - factory.Markup(" :"), - factory.Markup(" red"), - factory.Markup(" ;"), - factory.Markup(" "))) - }, - factory.Markup("Hello World"))) - }; - yield return new object[] - { - "

      Hello

      World

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode( - "class", - new MarkupBlock(factory.Markup(" foo"), factory.Markup(" "))) - }, - factory.Markup("Hello")), - factory.Markup(" "), - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode( - "style", - new MarkupBlock(factory.Markup(" color:red;"), factory.Markup(" "))) - }, - factory.Markup("World"))) - }; - } - } - - [Theory] - [MemberData(nameof(OddlySpacedBlockData))] - public void TagHelperParseTreeRewriter_RewritesOddlySpacedTagHelperTagBlocks( - string documentContent, - object expectedOutput) - { - RunParseTreeRewriterTest(documentContent, (MarkupBlock)expectedOutput, "p"); - } - - public static IEnumerable ComplexAttributeTagHelperBlockData - { - get - { - var factory = new SpanFactory(); - var blockFactory = new BlockFactory(factory); - var dateTimeNowString = "@DateTime.Now"; - var dateTimeNow = new Func(index => - new MarkupBlock( - new MarkupBlock( - new DynamicAttributeBlockChunkGenerator( - new LocationTagged( - string.Empty, - new SourceLocation(index, 0, index)), - new SourceLocation(index, 0, index)), - new ExpressionBlock( - factory.CodeTransition(), - factory.Code("DateTime.Now") - .AsImplicitExpression(CSharpCodeParser.DefaultKeywords) - .Accepts(AcceptedCharactersInternal.NonWhiteSpace))))); - var doWhileString = "@do { var foo = bar; Foo foo++; } while (foo);"; - var doWhile = new Func(index => - new MarkupBlock( - new MarkupBlock( - new DynamicAttributeBlockChunkGenerator( - new LocationTagged( - string.Empty, - new SourceLocation(index, 0, index)), - new SourceLocation(index, 0, index)), - new StatementBlock( - factory.CodeTransition(), - factory.Code("do { var foo = bar; ").AsStatement(), - new MarkupBlock( - new MarkupTagBlock( - factory.MarkupTransition("")), - factory.Markup("Foo").Accepts(AcceptedCharactersInternal.None), - new MarkupTagBlock( - factory.MarkupTransition(""))), - factory - .Code(" foo++; } while (foo);") - .AsStatement() - .Accepts(AcceptedCharactersInternal.None))))); - - var currentFormattedString = "

      "; - yield return new object[] - { - string.Format(currentFormattedString, dateTimeNowString), - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", dateTimeNow(10)), - new TagHelperAttributeNode("style", dateTimeNow(32), AttributeStructure.SingleQuotes) - })) - }; - yield return new object[] - { - string.Format(currentFormattedString, doWhileString), - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", doWhile(10)), - new TagHelperAttributeNode("style", doWhile(83), AttributeStructure.SingleQuotes) - })) - }; - - currentFormattedString = "

      Hello World

      "; - yield return new object[] - { - string.Format(currentFormattedString, dateTimeNowString), - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", dateTimeNow(10)), - new TagHelperAttributeNode("style", dateTimeNow(32), AttributeStructure.SingleQuotes) - }, - factory.Markup("Hello World"))) - }; - yield return new object[] - { - string.Format(currentFormattedString, doWhileString), - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", doWhile(10)), - new TagHelperAttributeNode("style", doWhile(83), AttributeStructure.SingleQuotes) - }, - factory.Markup("Hello World"))) - }; - - currentFormattedString = "

      Hello

      World

      "; - yield return new object[] - { - string.Format(currentFormattedString, dateTimeNowString), - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", dateTimeNow(10)) - }, - factory.Markup("Hello")), - factory.Markup(" "), - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("style", dateTimeNow(45), AttributeStructure.SingleQuotes) - }, - factory.Markup("World"))) - }; - yield return new object[] - { - string.Format(currentFormattedString, doWhileString), - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", doWhile(10)) - }, - factory.Markup("Hello")), - factory.Markup(" "), - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("style", doWhile(96), AttributeStructure.SingleQuotes) - }, - factory.Markup("World"))) - }; - - currentFormattedString = - "

      Hello World inside of strong tag

      "; - yield return new object[] - { - string.Format(currentFormattedString, dateTimeNowString), - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", dateTimeNow(10)), - new TagHelperAttributeNode("style", dateTimeNow(32), AttributeStructure.SingleQuotes) - }, - factory.Markup("Hello World "), - new MarkupTagBlock( - factory.Markup("(" class=\"", 66, 0, 66), - suffix: new LocationTagged("\"", 87, 0, 87)), - factory.Markup(" class=\"").With(SpanChunkGenerator.Null), - new MarkupBlock( - new DynamicAttributeBlockChunkGenerator( - new LocationTagged(string.Empty, 74, 0, 74), 74, 0, 74), - new ExpressionBlock( - factory.CodeTransition(), - factory.Code("DateTime.Now") - .AsImplicitExpression(CSharpCodeParser.DefaultKeywords) - .Accepts(AcceptedCharactersInternal.NonWhiteSpace))), - factory.Markup("\"").With(SpanChunkGenerator.Null)), - factory.Markup(">")), - factory.Markup("inside of strong tag"), - blockFactory.MarkupTagBlock("
      "))) - }; - } - } - - [Theory] - [MemberData(nameof(ComplexAttributeTagHelperBlockData))] - public void TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks( - string documentContent, - object expectedOutput) - { - RunParseTreeRewriterTest(documentContent, (MarkupBlock)expectedOutput, "p"); - } - - public static IEnumerable ComplexTagHelperBlockData - { - get - { - var factory = new SpanFactory(); - var blockFactory = new BlockFactory(factory); - var dateTimeNowString = "@DateTime.Now"; - var dateTimeNow = new ExpressionBlock( - factory.CodeTransition(), - factory.Code("DateTime.Now") - .AsImplicitExpression(CSharpCodeParser.DefaultKeywords) - .Accepts(AcceptedCharactersInternal.NonWhiteSpace)); - var doWhileString = "@do { var foo = bar;

      Foo

      foo++; } while (foo);"; - var doWhile = new StatementBlock( - factory.CodeTransition(), - factory.Code("do { var foo = bar;").AsStatement(), - new MarkupBlock( - factory.Markup(" "), - new MarkupTagHelperBlock("p", - factory.Markup("Foo")), - factory.Markup(" ").Accepts(AcceptedCharactersInternal.None)), - factory.Code("foo++; } while (foo);") - .AsStatement() - .Accepts(AcceptedCharactersInternal.None)); - - var currentFormattedString = "

      {0}

      "; - yield return new object[] - { - string.Format(currentFormattedString, dateTimeNowString), - new MarkupBlock( - new MarkupTagHelperBlock("p", dateTimeNow)) - }; - yield return new object[] - { - string.Format(currentFormattedString, doWhileString), - new MarkupBlock( - new MarkupTagHelperBlock("p", doWhile)) - }; - - currentFormattedString = "

      Hello World {0}

      "; - yield return new object[] - { - string.Format(currentFormattedString, dateTimeNowString), - new MarkupBlock( - new MarkupTagHelperBlock("p", - factory.Markup("Hello World "), - dateTimeNow)) - }; - yield return new object[] - { - string.Format(currentFormattedString, doWhileString), - new MarkupBlock( - new MarkupTagHelperBlock("p", - factory.Markup("Hello World "), - doWhile)) - }; - - currentFormattedString = "

      {0}

      {0}

      "; - yield return new object[] - { - string.Format(currentFormattedString, dateTimeNowString), - new MarkupBlock( - new MarkupTagHelperBlock("p", dateTimeNow), - factory.Markup(" "), - new MarkupTagHelperBlock("p", dateTimeNow)) - }; - yield return new object[] - { - string.Format(currentFormattedString, doWhileString), - new MarkupBlock( - new MarkupTagHelperBlock("p", doWhile), - factory.Markup(" "), - new MarkupTagHelperBlock("p", doWhile)) - }; - - currentFormattedString = "

      Hello {0}inside of {0} strong tag

      "; - yield return new object[] - { - string.Format(currentFormattedString, dateTimeNowString), - new MarkupBlock( - new MarkupTagHelperBlock("p", - factory.Markup("Hello "), - dateTimeNow, - blockFactory.MarkupTagBlock(""), - factory.Markup("inside of "), - dateTimeNow, - factory.Markup(" strong tag"), - blockFactory.MarkupTagBlock(""))) - }; - yield return new object[] - { - string.Format(currentFormattedString, doWhileString), - new MarkupBlock( - new MarkupTagHelperBlock("p", - factory.Markup("Hello "), - doWhile, - blockFactory.MarkupTagBlock(""), - factory.Markup("inside of "), - doWhile, - factory.Markup(" strong tag"), - blockFactory.MarkupTagBlock(""))) - }; - } - } - - [Theory] - [MemberData(nameof(ComplexTagHelperBlockData))] - public void TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks( - string documentContent, - object expectedOutput) - { - RunParseTreeRewriterTest(documentContent, (MarkupBlock)expectedOutput, "p"); - } - - - public static TheoryData InvalidHtmlBlockData - { - get - { - var factory = new SpanFactory(); - var blockFactory = new BlockFactory(factory); - var dateTimeNow = new ExpressionBlock( - factory.CodeTransition(), - factory.Code("DateTime.Now") - .AsImplicitExpression(CSharpCodeParser.DefaultKeywords) - .Accepts(AcceptedCharactersInternal.NonWhiteSpace)); - - return new TheoryData - { - { - "<<

      >>

      ", - new MarkupBlock( - blockFactory.MarkupTagBlock("<"), - blockFactory.MarkupTagBlock("<"), - new MarkupTagHelperBlock("p", - factory.Markup(">>"))) - }, - { - "<

      ", - new MarkupBlock( - blockFactory.MarkupTagBlock("<"), - new MarkupTagHelperBlock("p", TagMode.SelfClosing)) - }, - { - "< p />", - new MarkupBlock( - new MarkupTagBlock( - factory.Markup("<"), - new MarkupBlock( - factory.Markup(" p")), - factory.Markup(" />"))) - }, - { - "", - new MarkupBlock( - blockFactory.MarkupTagBlock("", - new MarkupBlock( - new MarkupTagBlock( - factory.Markup("<"), - new MarkupBlock( - new AttributeBlockChunkGenerator( - name: "class", - prefix: new LocationTagged(" class=\"", 1, 0, 1), - suffix: new LocationTagged("\"", 12, 0, 12)), - factory.Markup(" class=\"").With(SpanChunkGenerator.Null), - factory.Markup("foo").With(new LiteralAttributeChunkGenerator( - prefix: new LocationTagged(string.Empty, 9, 0, 9), - value: new LocationTagged("foo", 9, 0, 9))), - factory.Markup("\"").With(SpanChunkGenerator.Null)), - factory.Markup(" ")), - new MarkupTagHelperBlock("p", TagMode.SelfClosing)) - }, - { - "/>

      >", - new MarkupBlock( - blockFactory.MarkupTagBlock("")), - factory.Markup(">")) - }, - { - "/>

      >", - new MarkupBlock( - blockFactory.MarkupTagBlock(""), - blockFactory.MarkupTagBlock("")), - factory.Markup(">")) - }, - { - "@DateTime.Now/>

      >", - new MarkupBlock( - blockFactory.MarkupTagBlock(""), - blockFactory.MarkupTagBlock("")), - factory.Markup(">")) - }, - { - "

      @DateTime.Now / >

      ", - new MarkupBlock( - blockFactory.MarkupTagBlock(""), - new MarkupTagHelperBlock("p", - dateTimeNow, - factory.Markup(" / >"), - blockFactory.MarkupTagBlock("")), - blockFactory.MarkupTagBlock("")) - }, - { - "

      < @DateTime.Now >

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new MarkupTagBlock( - factory.Markup("< "), - dateTimeNow, - factory.Markup(" >")), - blockFactory.MarkupTagBlock(""))) - } - }; - } - } - - [Theory] - [MemberData(nameof(InvalidHtmlBlockData))] - public void TagHelperParseTreeRewriter_AllowsInvalidHtml(string documentContent, object expectedOutput) - { - RunParseTreeRewriterTest(documentContent, (MarkupBlock)expectedOutput, "p"); - } - - public static TheoryData EmptyAttributeTagHelperData - { - get - { - var factory = new SpanFactory(); - - // documentContent, expectedOutput - return new TheoryData - { - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", new MarkupBlock()) - })) - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", new MarkupBlock(), AttributeStructure.SingleQuotes) - })) - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - // We expected a markup node here because attribute values without quotes can only ever - // be a single item, hence don't need to be enclosed by a block. - new TagHelperAttributeNode( - "class", - factory.Markup("").With(SpanChunkGenerator.Null), - AttributeStructure.DoubleQuotes), - })) - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("class1", new MarkupBlock(), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode( - "class2", - factory.Markup(string.Empty).With(SpanChunkGenerator.Null), - AttributeStructure.DoubleQuotes), - new TagHelperAttributeNode("class3", new MarkupBlock()), - })) - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("class1", new MarkupBlock(), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("class2", new MarkupBlock()), - new TagHelperAttributeNode( - "class3", - factory.Markup(string.Empty).With(SpanChunkGenerator.Null), - AttributeStructure.DoubleQuotes), - })) - }, - }; - } - } - - [Theory] - [MemberData(nameof(EmptyAttributeTagHelperData))] - public void Rewrite_UnderstandsEmptyAttributeTagHelpers(string documentContent, object expectedOutput) - { - RunParseTreeRewriterTest(documentContent, (MarkupBlock)expectedOutput, new RazorDiagnostic[0], "p"); - } - - public static TheoryData EmptyTagHelperBoundAttributeData - { - get - { - var factory = new SpanFactory(); - var boolTypeName = typeof(bool).FullName; - - // documentContent, expectedOutput, expectedErrors - return new TheoryData - { - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "myth", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("bound", new MarkupBlock(), AttributeStructure.SingleQuotes) - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(6, 0, 6, 5), - "bound", - "myth", - boolTypeName) - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "myth", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "bound", - factory.CodeMarkup(" true").With(new ExpressionChunkGenerator()), - AttributeStructure.SingleQuotes) - })), - new RazorDiagnostic[0] - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "myth", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "bound", - factory.CodeMarkup(" ").With(new ExpressionChunkGenerator()), - AttributeStructure.SingleQuotes) - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(6, 0, 6, 5), - "bound", - "myth", - boolTypeName), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "myth", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("bound", new MarkupBlock(), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("bound", new MarkupBlock()) - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(6, 0, 6, 5), - "bound", - "myth", - boolTypeName), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(16, 0, 16, 5), - "bound", - "myth", - boolTypeName), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "myth", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "bound", - factory.CodeMarkup(" ").With(new ExpressionChunkGenerator()), - AttributeStructure.SingleQuotes), - new TagHelperAttributeNode( - "bound", - factory.CodeMarkup(" ")) - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(6, 0, 6, 5), - "bound", - "myth", - boolTypeName), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(17, 0, 17, 5), - "bound", - "myth", - boolTypeName), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "myth", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "bound", - factory.CodeMarkup("true").With(new ExpressionChunkGenerator()), - AttributeStructure.SingleQuotes), - new TagHelperAttributeNode( - "bound", - factory.CodeMarkup(string.Empty).With(SpanChunkGenerator.Null), - AttributeStructure.DoubleQuotes) - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(19, 0, 19, 5), - "bound", - "myth", - boolTypeName), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "myth", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "bound", - factory.CodeMarkup(string.Empty).With(SpanChunkGenerator.Null), - AttributeStructure.DoubleQuotes), - new TagHelperAttributeNode("name", new MarkupBlock(), AttributeStructure.SingleQuotes) - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(6, 0, 6, 5), - "bound", - "myth", - boolTypeName), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "myth", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "bound", - factory.CodeMarkup(string.Empty).With(SpanChunkGenerator.Null), - AttributeStructure.DoubleQuotes), - new TagHelperAttributeNode("name", factory.Markup(" "), AttributeStructure.SingleQuotes) - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(6, 0, 6, 5), - "bound", - "myth", - boolTypeName), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "myth", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "bound", - factory.CodeMarkup("true").With(new ExpressionChunkGenerator()), - AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("name", factory.Markup("john"), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode( - "bound", - factory.CodeMarkup(string.Empty).With(SpanChunkGenerator.Null), - AttributeStructure.DoubleQuotes), - new TagHelperAttributeNode( - "name", - factory.Markup(string.Empty).With(SpanChunkGenerator.Null), - AttributeStructure.DoubleQuotes) - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(31, 0, 31, 5), - "bound", - "myth", - boolTypeName), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "myth", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("BouND", new MarkupBlock(), AttributeStructure.SingleQuotes) - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(6, 0, 6, 5), - "BouND", - "myth", - boolTypeName), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "myth", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("BOUND", new MarkupBlock(), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("bOUnd", new MarkupBlock()) - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(6, 0, 6, 5), - "BOUND", - "myth", - boolTypeName), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(18, 0, 18, 5), - "bOUnd", - "myth", - boolTypeName), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "myth", - new List - { - new TagHelperAttributeNode( - "BOUND", - factory.CodeMarkup(string.Empty).With(SpanChunkGenerator.Null), - AttributeStructure.DoubleQuotes), - new TagHelperAttributeNode("nAMe", factory.Markup("john"), AttributeStructure.SingleQuotes) - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(6, 0, 6, 5), - "BOUND", - "myth", - boolTypeName), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "myth", - TagMode.SelfClosing, - attributes: new List - { - { - new TagHelperAttributeNode( - "bound", - new MarkupBlock( - new MarkupBlock( - factory.CodeMarkup(" ").With(new ExpressionChunkGenerator()), - new ExpressionBlock( - factory.CSharpCodeMarkup("@").With(new ExpressionChunkGenerator()), - factory.CSharpCodeMarkup("true") - .With(new ExpressionChunkGenerator()))), - factory.CodeMarkup(" ").With(new ExpressionChunkGenerator())), - AttributeStructure.SingleQuotes) - } - })), - new RazorDiagnostic[0] - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "myth", - TagMode.SelfClosing, - attributes: new List - { - { - new TagHelperAttributeNode( - "bound", - new MarkupBlock( - new MarkupBlock( - factory.CodeMarkup(" ").With(new ExpressionChunkGenerator()), - new ExpressionBlock( - factory.CSharpCodeMarkup("@").With(new ExpressionChunkGenerator()), - factory.CSharpCodeMarkup("(").With(new ExpressionChunkGenerator()), - factory.CSharpCodeMarkup("true") - .With(new ExpressionChunkGenerator()), - factory.CSharpCodeMarkup(")").With(new ExpressionChunkGenerator()))), - factory.CodeMarkup(" ").With(new ExpressionChunkGenerator())), - AttributeStructure.SingleQuotes) - } - })), - new RazorDiagnostic[0] - }, - }; - } - } - - [Theory] - [MemberData(nameof(EmptyTagHelperBoundAttributeData))] - public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes( - string documentContent, - object expectedOutput, - object expectedErrors) + [Fact] + public void Rewrite_AllowsCompatibleTagStructures2() { // Arrange - var descriptors = new TagHelperDescriptor[] - { - TagHelperDescriptorBuilder.Create("mythTagHelper", "SomeAssembly") - .TagMatchingRuleDescriptor(rule => rule.RequireTagName("myth")) - .BoundAttributeDescriptor(attribute => - attribute - .Name("bound") - .PropertyName("Bound") - .TypeName(typeof(bool).FullName)) - .BoundAttributeDescriptor(attribute => - attribute - .Name("name") - .PropertyName("Name") - .TypeName(typeof(string).FullName)) - .Build() - }; + var descriptors = GetTagStructureCompatibilityDescriptors(TagStructure.Unspecified, TagStructure.Unspecified); // Act & Assert - EvaluateData(descriptors, documentContent, (MarkupBlock)expectedOutput, (RazorDiagnostic[])expectedErrors); + EvaluateData(descriptors, ""); } - public static IEnumerable ScriptBlockData - { - get - { - var factory = new SpanFactory(); - - yield return new object[] - { - "", - new MarkupBlock( - new MarkupTagHelperBlock("script", - factory.Markup("", - new MarkupBlock( - new MarkupTagHelperBlock("script", - factory.Markup("Hello World

      "))) - }; - yield return new object[] - { - "

      World

      ", - new MarkupBlock( - new MarkupTagHelperBlock("script", - factory.Markup("Hel

      lo

      ")), - factory.Markup(" "), - new MarkupTagHelperBlock("p", - new MarkupTagHelperBlock("div", - factory.Markup("World")))) - }; - yield return new object[] - { - " ", - new MarkupBlock( - new MarkupTagHelperBlock("script", - factory.Markup("Hello")), - factory.Markup(" "), - new MarkupTagHelperBlock("script", - factory.Markup("World"))) - }; - yield return new object[] - { - " World

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - factory.Markup("Hello "), - new MarkupTagHelperBlock("script", - new List - { - new TagHelperAttributeNode("class", factory.Markup("foo")), - new TagHelperAttributeNode("style", factory.Markup("color:red;")) - }), - factory.Markup(" World"))) - }; - yield return new object[] - { - "

      Hello World

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - factory.Markup("Hello "), - new MarkupTagHelperBlock("script", - new List - { - new TagHelperAttributeNode( - "class", - new MarkupBlock( - new MarkupBlock( - factory.Markup("@").Accepts(AcceptedCharactersInternal.None), - factory.Markup("@").With(SpanChunkGenerator.Null).Accepts(AcceptedCharactersInternal.None)), - factory.Markup("foo@bar.com"))), - new TagHelperAttributeNode("style", factory.Markup("color:red;")) - }), - factory.Markup(" World"))) - }; - } - } - - [Theory] - [MemberData(nameof(ScriptBlockData))] - public void TagHelperParseTreeRewriter_RewritesScriptTagHelpers( - string documentContent, - object expectedOutput) - { - RunParseTreeRewriterTest(documentContent, (MarkupBlock)expectedOutput, "p", "div", "script"); - } - - public static IEnumerable SelfClosingBlockData - { - get - { - var factory = new SpanFactory(); - - yield return new object[] - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("class", factory.Markup("foo")), - new TagHelperAttributeNode("style", factory.Markup("color:red;")) - })) - }; - yield return new object[] - { - "

      Hello

      World

      ", - new MarkupBlock( - new MarkupTagHelperBlock( - "p", - TagMode.StartTagAndEndTag, - children: new SyntaxTreeNode[] - { - factory.Markup("Hello "), - new MarkupTagHelperBlock( - "p", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("class", factory.Markup("foo")), - new TagHelperAttributeNode( - "style", - factory.Markup("color:red;")) - }), - factory.Markup(" World") - })) - }; - yield return new object[] - { - "Hello

      World", - new MarkupBlock( - factory.Markup("Hello"), - new MarkupTagHelperBlock("p", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("class", factory.Markup("foo")) - }), - factory.Markup(" "), - new MarkupTagHelperBlock("p", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("style", factory.Markup("color:red;")) - }), - factory.Markup("World")) - }; - } - } - - [Theory] - [MemberData(nameof(SelfClosingBlockData))] - public void TagHelperParseTreeRewriter_RewritesSelfClosingTagHelpers( - string documentContent, - object expectedOutput) - { - RunParseTreeRewriterTest(documentContent, (MarkupBlock)expectedOutput, "p"); - } - - public static IEnumerable QuotelessAttributeBlockData - { - get - { - var factory = new SpanFactory(); - var blockFactory = new BlockFactory(factory); - var dateTimeNow = new Func(index => - new MarkupBlock( - new MarkupBlock( - new DynamicAttributeBlockChunkGenerator( - new LocationTagged( - string.Empty, - new SourceLocation(index, 0, index)), - new SourceLocation(index, 0, index)), - new ExpressionBlock( - factory.CodeTransition(), - factory.Code("DateTime.Now") - .AsImplicitExpression(CSharpCodeParser.DefaultKeywords) - .Accepts(AcceptedCharactersInternal.NonWhiteSpace))))); - - yield return new object[] - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup("foo"), AttributeStructure.NoQuotes), - new TagHelperAttributeNode("dynamic", dateTimeNow(21)), - new TagHelperAttributeNode("style", factory.Markup("color:red;"), AttributeStructure.NoQuotes) - })) - }; - yield return new object[] - { - "

      Hello World

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup("foo"), AttributeStructure.NoQuotes), - new TagHelperAttributeNode("dynamic", dateTimeNow(21)), - new TagHelperAttributeNode("style", factory.Markup("color:red;"), AttributeStructure.NoQuotes) - }, - factory.Markup("Hello World"))) - }; - yield return new object[] - { - "

      Hello World

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup("foo"), AttributeStructure.NoQuotes), - new TagHelperAttributeNode("dynamic", dateTimeNow(21)), - new TagHelperAttributeNode( - "style", - new MarkupBlock( - factory.Markup("color"), - new MarkupBlock( - factory.Markup("@").Accepts(AcceptedCharactersInternal.None), - factory.Markup("@").With(SpanChunkGenerator.Null).Accepts(AcceptedCharactersInternal.None)), - factory.Markup(":red;")), - AttributeStructure.DoubleQuotes) - }, - factory.Markup("Hello World"))) - }; - yield return new object[] - { - "

      Hello

      World

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup("foo"), AttributeStructure.NoQuotes), - new TagHelperAttributeNode("dynamic", dateTimeNow(21)) - }, - factory.Markup("Hello")), - factory.Markup(" "), - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("style", factory.Markup("color:red;"), AttributeStructure.NoQuotes), - new TagHelperAttributeNode("dynamic", dateTimeNow(73)) - }, - factory.Markup("World"))) - }; - yield return new object[] - { - "

      Hello World inside of strong tag

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup("foo"), AttributeStructure.NoQuotes), - new TagHelperAttributeNode("dynamic", dateTimeNow(21)), - new TagHelperAttributeNode("style", factory.Markup("color:red;"), AttributeStructure.NoQuotes) - }, - factory.Markup("Hello World "), - new MarkupTagBlock( - factory.Markup("(" class=\"", 71, 0, 71), - suffix: new LocationTagged("\"", 82, 0, 82)), - factory.Markup(" class=\"").With(SpanChunkGenerator.Null), - factory.Markup("foo").With(new LiteralAttributeChunkGenerator(prefix: new LocationTagged(string.Empty, 79, 0, 79), - value: new LocationTagged("foo", 79, 0, 79))), - factory.Markup("\"").With(SpanChunkGenerator.Null)), - factory.Markup(">")), - factory.Markup("inside of strong tag"), - blockFactory.MarkupTagBlock("
      "))) - }; - } - } - - [Theory] - [MemberData(nameof(QuotelessAttributeBlockData))] - public void TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes( - string documentContent, - object expectedOutput) - { - RunParseTreeRewriterTest(documentContent, (MarkupBlock)expectedOutput, "p"); - } - - public static IEnumerable PlainAttributeBlockData - { - get - { - var factory = new SpanFactory(); - var blockFactory = new BlockFactory(factory); - - yield return new object[] - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup("foo")), - new TagHelperAttributeNode("style", factory.Markup("color:red;")) - })) - }; - yield return new object[] - { - "

      Hello World

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup("foo")), - new TagHelperAttributeNode("style", factory.Markup("color:red;")) - }, - factory.Markup("Hello World"))) - }; - yield return new object[] - { - "

      Hello

      World

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup("foo")) - }, - factory.Markup("Hello")), - factory.Markup(" "), - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("style", factory.Markup("color:red;")) - }, - factory.Markup("World"))) - }; - yield return new object[] - { - "

      Hello World inside of strong tag

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - new List - { - new TagHelperAttributeNode("class", factory.Markup("foo")), - new TagHelperAttributeNode("style", factory.Markup("color:red;")) - }, - factory.Markup("Hello World "), - new MarkupTagBlock( - factory.Markup("(" class=\"", 53, 0, 53), - suffix: new LocationTagged("\"", 64, 0, 64)), - factory.Markup(" class=\"").With(SpanChunkGenerator.Null), - factory.Markup("foo").With(new LiteralAttributeChunkGenerator(prefix: new LocationTagged(string.Empty, 61, 0, 61), - value: new LocationTagged("foo", 61, 0, 61))), - factory.Markup("\"").With(SpanChunkGenerator.Null)), - factory.Markup(">")), - factory.Markup("inside of strong tag"), - blockFactory.MarkupTagBlock("
      "))) - }; - } - } - - [Theory] - [MemberData(nameof(PlainAttributeBlockData))] - public void TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes( - string documentContent, - object expectedOutput) - { - RunParseTreeRewriterTest(documentContent, (MarkupBlock)expectedOutput, "p"); - } - - public static IEnumerable PlainBlockData - { - get - { - var factory = new SpanFactory(); - var blockFactory = new BlockFactory(factory); - - yield return new object[] - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p")) - }; - yield return new object[] - { - "

      Hello World

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - factory.Markup("Hello World"))) - }; - yield return new object[] - { - "

      Hello

      World

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - factory.Markup("Hello")), - factory.Markup(" "), - new MarkupTagHelperBlock("p", - factory.Markup("World"))) - }; - yield return new object[] - { - "

      Hello World inside of strong tag

      ", - new MarkupBlock( - new MarkupTagHelperBlock("p", - factory.Markup("Hello World "), - blockFactory.MarkupTagBlock(""), - factory.Markup("inside of strong tag"), - blockFactory.MarkupTagBlock(""))) - }; - } - } - - [Theory] - [MemberData(nameof(PlainBlockData))] - public void TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks( - string documentContent, - object expectedOutput) - { - RunParseTreeRewriterTest(documentContent, (MarkupBlock)expectedOutput, "p"); - } - - public static TheoryData DataDashAttributeData_Document - { - get - { - var factory = new SpanFactory(); - var dateTimeNowString = "@DateTime.Now"; - var dateTimeNow = new ExpressionBlock( - factory.CodeTransition(), - factory.Code("DateTime.Now") - .AsImplicitExpression(CSharpCodeParser.DefaultKeywords) - .Accepts(AcceptedCharactersInternal.NonWhiteSpace)); - - // documentContent, expectedOutput - return new TheoryData - { - { - $"", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode( - "data-required", - new MarkupBlock(dateTimeNow), - AttributeStructure.SingleQuotes), - })) - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("data-required", factory.Markup("value"), AttributeStructure.SingleQuotes), - })) - }, - { - $"", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode( - "data-required", - new MarkupBlock(factory.Markup("prefix "), dateTimeNow), - AttributeStructure.SingleQuotes), - })) - }, - { - $"", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode( - "data-required", - new MarkupBlock(dateTimeNow, factory.Markup(" suffix")), - AttributeStructure.SingleQuotes), - })) - }, - { - $"", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode( - "data-required", - new MarkupBlock( - factory.Markup("prefix "), - dateTimeNow, - factory.Markup(" suffix")), - AttributeStructure.SingleQuotes), - })) - }, - { - $"", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("pre-attribute", value: null, attributeStructure: AttributeStructure.Minimized), - new TagHelperAttributeNode( - "data-required", - new MarkupBlock( - factory.Markup("prefix "), - dateTimeNow, - factory.Markup(" suffix")), - AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("post-attribute", value: null, attributeStructure: AttributeStructure.Minimized), - })) - }, - { - $"", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode( - "data-required", - new MarkupBlock( - dateTimeNow, - factory.Markup(" middle "), - dateTimeNow), - AttributeStructure.SingleQuotes), - })) - }, - }; - } - } - - public static TheoryData DataDashAttributeData_CSharpBlock - { - get - { - var factory = new SpanFactory(); - var documentData = DataDashAttributeData_Document; - Func, MarkupBlock> buildStatementBlock = (insideBuilder) => - { - return new MarkupBlock( - factory.EmptyHtml(), - new StatementBlock( - factory.CodeTransition(), - factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None), - insideBuilder(), - factory.EmptyCSharp().AsStatement(), - factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)), - factory.EmptyHtml()); - }; - - foreach (var data in documentData) - { - data[0] = $"@{{{data[0]}}}"; - data[1] = buildStatementBlock(() => data[1] as MarkupBlock); - } - - return documentData; - } - } - - [Theory] - [MemberData(nameof(DataDashAttributeData_Document))] - [MemberData(nameof(DataDashAttributeData_CSharpBlock))] - public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes( - string documentContent, - object expectedOutput) - { - // Act & Assert - RunParseTreeRewriterTest(documentContent, (MarkupBlock)expectedOutput, Enumerable.Empty(), "input"); - } - - public static TheoryData MinimizedAttributeData_Document - { - get - { - var factory = new SpanFactory(); - var noErrors = new RazorDiagnostic[0]; - var stringType = typeof(string).FullName; - var intType = typeof(int).FullName; - var expressionString = "@DateTime.Now + 1"; - var expression = new Func(index => - new MarkupBlock( - new MarkupBlock( - new DynamicAttributeBlockChunkGenerator( - new LocationTagged( - string.Empty, - new SourceLocation(index, 0, index)), - new SourceLocation(index, 0, index)), - new ExpressionBlock( - factory.CodeTransition(), - factory.Code("DateTime.Now") - .AsImplicitExpression(CSharpCodeParser.DefaultKeywords) - .Accepts(AcceptedCharactersInternal.NonWhiteSpace))), - factory.Markup(" +") - .With(new LiteralAttributeChunkGenerator( - prefix: new LocationTagged(" ", index + 13, 0, index + 13), - value: new LocationTagged("+", index + 14, 0, index + 14))), - factory.Markup(" 1") - .With(new LiteralAttributeChunkGenerator( - prefix: new LocationTagged(" ", index + 15, 0, index + 15), - value: new LocationTagged("1", index + 16, 0, index + 16))))); - - // documentContent, expectedOutput, expectedErrors - return new TheoryData - { - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("unbound-required", null, AttributeStructure.Minimized), - })), - noErrors - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock( - "p", - TagMode.StartTagAndEndTag, - attributes: new List() - { - new TagHelperAttributeNode("bound-string", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(3, 0, 3, 12), - "bound-string", - "p", - stringType), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("bound-required-string", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 21), - "bound-required-string", - "input", - stringType), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("bound-required-int", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 18), - "bound-required-int", - "input", - intType), - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock( - "p", - TagMode.StartTagAndEndTag, - attributes: new List() - { - new TagHelperAttributeNode("bound-int", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(3, 0, 3, 9), - "bound-int", - "p", - intType), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("int-dictionary", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 14), - "int-dictionary", - "input", - typeof(IDictionary).Namespace + ".IDictionary"), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("string-dictionary", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 17), - "string-dictionary", - "input", - typeof(IDictionary).Namespace + ".IDictionary"), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("int-prefix-", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 11), - "int-prefix-", - "input", - intType), - RazorDiagnosticFactory.CreateParsing_TagHelperIndexerAttributeNameMustIncludeKey( - new SourceSpan(7, 0, 7, 11), - "int-prefix-", - "input"), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("string-prefix-", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 14), - "string-prefix-", - "input", - stringType), - RazorDiagnosticFactory.CreateParsing_TagHelperIndexerAttributeNameMustIncludeKey( - new SourceSpan(7, 0, 7, 14), - "string-prefix-", - "input"), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("int-prefix-value", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 16), - "int-prefix-value", - "input", - intType), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("string-prefix-value", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 19), - "string-prefix-value", - "input", - stringType), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("int-prefix-value", new MarkupBlock(), AttributeStructure.SingleQuotes), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 16), - "int-prefix-value", - "input", - intType), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode("string-prefix-value", new MarkupBlock(), AttributeStructure.SingleQuotes), - })), - new RazorDiagnostic[0] - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "int-prefix-value", - factory.CodeMarkup("3").With(new ExpressionChunkGenerator()), - AttributeStructure.SingleQuotes), - })), - new RazorDiagnostic[0] - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List - { - new TagHelperAttributeNode( - "string-prefix-value", - new MarkupBlock( - factory.Markup("some"), - factory.Markup(" string")), - AttributeStructure.SingleQuotes), - })), - new RazorDiagnostic[0] - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("unbound-required", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("bound-required-string", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(24, 0, 24, 21), - "bound-required-string", - "input", - stringType), - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock( - "p", - TagMode.StartTagAndEndTag, - attributes: new List() - { - new TagHelperAttributeNode("bound-int", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("bound-string", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(3, 0, 3, 9), - "bound-int", - "p", - intType), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(13, 0, 13, 12), - "bound-string", - "p", - stringType), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("bound-required-int", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("unbound-required", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("bound-required-string", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 18), - "bound-required-int", - "input", - intType), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(43, 0, 43, 21), - "bound-required-string", - "input", - stringType), - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock( - "p", - TagMode.StartTagAndEndTag, - attributes: new List() - { - new TagHelperAttributeNode("bound-int", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("bound-string", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("bound-string", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(3, 0, 3, 9), - "bound-int", - "p", - intType), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(13, 0, 13, 12), - "bound-string", - "p", - stringType), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(26, 0, 26, 12), - "bound-string", - "p", - stringType), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("unbound-required", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("class", factory.Markup("btn"), AttributeStructure.SingleQuotes), - })), - noErrors - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock( - "p", - TagMode.StartTagAndEndTag, - attributes: new List() - { - new TagHelperAttributeNode("bound-string", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("class", factory.Markup("btn"), AttributeStructure.SingleQuotes), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(3, 0, 3, 12), - "bound-string", - "p", - stringType), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("class", factory.Markup("btn"), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("unbound-required", null, AttributeStructure.Minimized), - })), - noErrors - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock( - "p", - TagMode.StartTagAndEndTag, - attributes: new List() - { - new TagHelperAttributeNode("class", factory.Markup("btn"), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("bound-string", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(15, 0, 15, 12), - "bound-string", - "p", - stringType), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("bound-required-string", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("class", factory.Markup("btn"), AttributeStructure.SingleQuotes), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 21), - "bound-required-string", - "input", - stringType), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("class", factory.Markup("btn"), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("bound-required-string", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(19, 0, 19, 21), - "bound-required-string", - "input", - stringType), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("bound-required-int", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("class", factory.Markup("btn"), AttributeStructure.SingleQuotes), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 18), - "bound-required-int", - "input", - intType), - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock( - "p", - TagMode.StartTagAndEndTag, - attributes: new List() - { - new TagHelperAttributeNode("bound-int", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("class", factory.Markup("btn"), AttributeStructure.SingleQuotes), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(3, 0, 3, 9), - "bound-int", - "p", - intType), - } - }, - { - "", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("class", factory.Markup("btn"), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("bound-required-int", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(19, 0, 19, 18), - "bound-required-int", - "input", - intType), - } - }, - { - "

      ", - new MarkupBlock( - new MarkupTagHelperBlock( - "p", - TagMode.StartTagAndEndTag, - attributes: new List() - { - new TagHelperAttributeNode("class", factory.Markup("btn"), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("bound-int", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(15, 0, 15, 9), - "bound-int", - "p", - intType), - } - }, - { - $"", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("class", expression(14), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("bound-required-int", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(33, 0, 33, 18), - "bound-required-int", - "input", - intType), - } - }, - { - $"

      ", - new MarkupBlock( - new MarkupTagHelperBlock( - "p", - TagMode.StartTagAndEndTag, - attributes: new List() - { - new TagHelperAttributeNode("class", expression(10), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("bound-int", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(29, 0, 29, 9), - "bound-int", - "p", - intType), - } - }, - { - $"", - new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("bound-required-int", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("class", expression(36), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("bound-required-string", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("class", expression(86), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("unbound-required", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(10, 0, 10, 18), - "bound-required-int", - "input", - intType), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(57, 0, 57, 21), - "bound-required-string", - "input", - stringType), - } - }, - { - $"

      ", - new MarkupBlock( - new MarkupTagHelperBlock( - "p", - TagMode.StartTagAndEndTag, - attributes: new List() - { - new TagHelperAttributeNode("bound-int", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("class", expression(23), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("bound-string", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("class", expression(64), AttributeStructure.SingleQuotes), - new TagHelperAttributeNode("bound-string", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(6, 0, 6, 9), - "bound-int", - "p", - intType), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(44, 0, 44, 12), - "bound-string", - "p", - stringType), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(84, 0, 84, 12), - "bound-string", - "p", - stringType), - } - }, - }; - } - } - - public static TheoryData MinimizedAttributeData_CSharpBlock - { - get - { - var factory = new SpanFactory(); - var documentData = MinimizedAttributeData_Document; - Func, MarkupBlock> buildStatementBlock = (insideBuilder) => - { - return new MarkupBlock( - factory.EmptyHtml(), - new StatementBlock( - factory.CodeTransition(), - factory.MetaCode("{").Accepts(AcceptedCharactersInternal.None), - insideBuilder(), - factory.EmptyCSharp().AsStatement(), - factory.MetaCode("}").Accepts(AcceptedCharactersInternal.None)), - factory.EmptyHtml()); - }; - Action updateDynamicChunkGenerators = (block) => - { - var tagHelperBlock = block.Children.First() as MarkupTagHelperBlock; - - for (var i = 0; i < tagHelperBlock.Attributes.Count; i++) - { - var attribute = tagHelperBlock.Attributes[i]; - var holderBlock = attribute.Value as Block; - - if (holderBlock == null) - { - continue; - } - - var valueBlock = holderBlock.Children.FirstOrDefault() as Block; - if (valueBlock != null) - { - var chunkGenerator = valueBlock.ChunkGenerator as DynamicAttributeBlockChunkGenerator; - - if (chunkGenerator != null) - { - var blockBuilder = new BlockBuilder(holderBlock); - var expressionBlockBuilder = new BlockBuilder(valueBlock); - var newChunkGenerator = new DynamicAttributeBlockChunkGenerator( - new LocationTagged( - chunkGenerator.Prefix.Value, - new SourceLocation( - chunkGenerator.Prefix.Location.AbsoluteIndex + 2, - chunkGenerator.Prefix.Location.LineIndex, - chunkGenerator.Prefix.Location.CharacterIndex + 2)), - new SourceLocation( - chunkGenerator.ValueStart.AbsoluteIndex + 2, - chunkGenerator.ValueStart.LineIndex, - chunkGenerator.ValueStart.CharacterIndex + 2)); - - expressionBlockBuilder.ChunkGenerator = newChunkGenerator; - blockBuilder.Children[0] = expressionBlockBuilder.Build(); - - for (var j = 1; j < blockBuilder.Children.Count; j++) - { - var span = blockBuilder.Children[j] as Span; - if (span != null) - { - var literalChunkGenerator = - span.ChunkGenerator as LiteralAttributeChunkGenerator; - - var spanBuilder = new SpanBuilder(span); - spanBuilder.ChunkGenerator = new LiteralAttributeChunkGenerator( - prefix: new LocationTagged( - literalChunkGenerator.Prefix.Value, - new SourceLocation( - literalChunkGenerator.Prefix.Location.AbsoluteIndex + 2, - literalChunkGenerator.Prefix.Location.LineIndex, - literalChunkGenerator.Prefix.Location.CharacterIndex + 2)), - value: new LocationTagged( - literalChunkGenerator.Value.Value, - new SourceLocation( - literalChunkGenerator.Value.Location.AbsoluteIndex + 2, - literalChunkGenerator.Value.Location.LineIndex, - literalChunkGenerator.Value.Location.CharacterIndex + 2))); - - blockBuilder.Children[j] = spanBuilder.Build(); - } - } - - tagHelperBlock.Attributes[i] = new TagHelperAttributeNode( - attribute.Name, - blockBuilder.Build(), - attribute.AttributeStructure); - } - } - } - }; - - foreach (var data in documentData) - { - data[0] = $"@{{{data[0]}}}"; - - updateDynamicChunkGenerators(data[1] as MarkupBlock); - - data[1] = buildStatementBlock(() => data[1] as MarkupBlock); - - var errors = data[2] as RazorDiagnostic[]; - - for (var i = 0; i < errors.Length; i++) - { - var error = errors[i] as DefaultRazorDiagnostic; - var currentErrorLocation = new SourceLocation(error.Span.AbsoluteIndex, error.Span.LineIndex, error.Span.CharacterIndex); - var newErrorLocation = SourceLocationTracker.Advance(currentErrorLocation, "@{"); - var copiedDiagnostic = new DefaultRazorDiagnostic(error.Descriptor, new SourceSpan(newErrorLocation, error.Span.Length), error.Args); - errors[i] = copiedDiagnostic; - } - } - - return documentData; - } - } - - public static TheoryData MinimizedAttributeData_PartialTags - { - get - { - var factory = new SpanFactory(); - var noErrors = new RazorDiagnostic[0]; - var stringType = typeof(string).FullName; - var intType = typeof(int).FullName; - - // documentContent, expectedOutput, expectedErrors - return new TheoryData - { - { - "() - { - new TagHelperAttributeNode("unbound-required", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 5), "input"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 5), "input"), - } - }, - { - "() - { - new TagHelperAttributeNode("bound-required-string", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 5), "input"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 5), "input"), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 21), - "bound-required-string", - "input", - stringType), - } - }, - { - "() - { - new TagHelperAttributeNode("bound-required-int", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 5), "input"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 5), "input"), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 18), - "bound-required-int", - "input", - intType), - } - }, - { - "() - { - new TagHelperAttributeNode("bound-required-int", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("unbound-required", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("bound-required-string", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 5), "input"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 5), "input"), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 18), - "bound-required-int", - "input", - intType), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(43, 0, 43, 21), - "bound-required-string", - "input", - stringType), - } - }, - { - "

      () - { - new TagHelperAttributeNode("bound-string", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(3, 0, 3, 12), - "bound-string", - "p", - stringType), - } - }, - { - "

      () - { - new TagHelperAttributeNode("bound-int", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(3, 0, 3, 9), - "bound-int", - "p", - intType), - } - }, - { - "

      () - { - new TagHelperAttributeNode("bound-int", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("bound-string", null, AttributeStructure.Minimized), - })), - new[] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(3, 0, 3, 9), - "bound-int", - "p", - intType), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(13, 0, 13, 12), - "bound-string", - "p", - stringType), - } - }, - { - "() - { - new TagHelperAttributeNode("bound-required-int", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("unbound-required", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("bound-required-string", null, AttributeStructure.Minimized), - }, - children: new MarkupTagHelperBlock( - "p", - TagMode.StartTagAndEndTag, - attributes: new List() - { - new TagHelperAttributeNode("bound-int", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("bound-string", null, AttributeStructure.Minimized), - }))), - new[] - { - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 5), "input"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(1, 0, 1), contentLength: 5), "input"), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 18), - "bound-required-int", - "input", - intType), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(43, 0, 43, 21), - "bound-required-string", - "input", - stringType), - RazorDiagnosticFactory.CreateParsing_TagHelperMissingCloseAngle( - new SourceSpan(new SourceLocation(65, 0, 65), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateParsing_TagHelperFoundMalformedTagHelper( - new SourceSpan(new SourceLocation(65, 0, 65), contentLength: 1), "p"), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(67, 0, 67, 9), - "bound-int", - "p", - intType), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(77, 0, 77, 12), - "bound-string", - "p", - stringType), - } - }, - }; - } - } - - [Theory] - [MemberData(nameof(MinimizedAttributeData_Document))] - [MemberData(nameof(MinimizedAttributeData_CSharpBlock))] - [MemberData(nameof(MinimizedAttributeData_PartialTags))] - public void Rewrite_UnderstandsMinimizedAttributes( - string documentContent, - object expectedOutput, - object expectedErrors) + [Fact] + public void Rewrite_AllowsCompatibleTagStructures3() { // Arrange - var descriptors = new TagHelperDescriptor[] - { - TagHelperDescriptorBuilder.Create("InputTagHelper1", "SomeAssembly") - .TagMatchingRuleDescriptor(rule => - rule - .RequireTagName("input") - .RequireAttributeDescriptor(attribute => attribute.Name("unbound-required"))) - .TagMatchingRuleDescriptor(rule => - rule - .RequireTagName("input") - .RequireAttributeDescriptor(attribute => attribute.Name("bound-required-string"))) - .BoundAttributeDescriptor(attribute => - attribute - .Name("bound-required-string") - .PropertyName("BoundRequiredString") - .TypeName(typeof(string).FullName)) - .Build(), - TagHelperDescriptorBuilder.Create("InputTagHelper2", "SomeAssembly") - .TagMatchingRuleDescriptor(rule => - rule - .RequireTagName("input") - .RequireAttributeDescriptor(attribute => attribute.Name("bound-required-int"))) - .BoundAttributeDescriptor(attribute => - attribute - .Name("bound-required-int") - .PropertyName("BoundRequiredInt") - .TypeName(typeof(int).FullName)) - .Build(), - TagHelperDescriptorBuilder.Create("InputTagHelper3", "SomeAssembly") - .TagMatchingRuleDescriptor(rule => rule.RequireTagName("input")) - .BoundAttributeDescriptor(attribute => - attribute - .Name("int-dictionary") - .PropertyName("DictionaryOfIntProperty") - .TypeName(typeof(IDictionary).Namespace + ".IDictionary") - .AsDictionaryAttribute("int-prefix-", typeof(int).FullName)) - .BoundAttributeDescriptor(attribute => - attribute - .Name("string-dictionary") - .PropertyName("DictionaryOfStringProperty") - .TypeName(typeof(IDictionary).Namespace + ".IDictionary") - .AsDictionaryAttribute("string-prefix-", typeof(string).FullName)) - .Build(), - TagHelperDescriptorBuilder.Create("PTagHelper", "SomeAssembly") - .TagMatchingRuleDescriptor(rule => rule.RequireTagName("p")) - .BoundAttributeDescriptor(attribute => - attribute - .Name("bound-string") - .PropertyName("BoundRequiredString") - .TypeName(typeof(string).FullName)) - .BoundAttributeDescriptor(attribute => - attribute - .Name("bound-int") - .PropertyName("BoundRequiredString") - .TypeName(typeof(int).FullName)) - .Build(), - }; + var descriptors = GetTagStructureCompatibilityDescriptors(TagStructure.Unspecified, TagStructure.WithoutEndTag); // Act & Assert - EvaluateData(descriptors, documentContent, (MarkupBlock)expectedOutput, (RazorDiagnostic[])expectedErrors); + EvaluateData(descriptors, ""); + } + + [Fact] + public void Rewrite_AllowsCompatibleTagStructures4() + { + // Arrange + var descriptors = GetTagStructureCompatibilityDescriptors(TagStructure.WithoutEndTag, TagStructure.WithoutEndTag); + + // Act & Assert + EvaluateData(descriptors, ""); + } + + [Fact] + public void Rewrite_AllowsCompatibleTagStructures5() + { + // Arrange + var descriptors = GetTagStructureCompatibilityDescriptors(TagStructure.Unspecified, TagStructure.NormalOrSelfClosing); + + // Act & Assert + EvaluateData(descriptors, ""); + } + + [Fact] + public void Rewrite_AllowsCompatibleTagStructures6() + { + // Arrange + var descriptors = GetTagStructureCompatibilityDescriptors(TagStructure.Unspecified, TagStructure.WithoutEndTag); + + // Act & Assert + EvaluateData(descriptors, ""); + } + + [Fact] + public void Rewrite_AllowsCompatibleTagStructures7() + { + // Arrange + var descriptors = GetTagStructureCompatibilityDescriptors(TagStructure.NormalOrSelfClosing, TagStructure.Unspecified); + + // Act & Assert + EvaluateData(descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes1() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes4() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes8() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes9() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes10() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes11() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes12() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes13() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes14() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes15() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes16() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes18() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes19() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelper1() + { + RunParseTreeRewriterTest("", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelper5() + { + RunParseTreeRewriterTest(" <

      ", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelper7() + { + RunParseTreeRewriterTest("<<> <<>>", "strong", "p"); + } + + [Fact] + public void Rewrite_CreatesErrorForMalformedTagHelper8() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + public static TagHelperDescriptor[] CodeTagHelperAttributes_Descriptors = new TagHelperDescriptor[] + { + TagHelperDescriptorBuilder.Create("PersonTagHelper", "personAssembly") + .TagMatchingRuleDescriptor(rule => rule.RequireTagName("person")) + .BoundAttributeDescriptor(attribute => + attribute + .Name("age") + .PropertyName("Age") + .TypeName(typeof(int).FullName)) + .BoundAttributeDescriptor(attribute => + attribute + .Name("birthday") + .PropertyName("BirthDay") + .TypeName(typeof(DateTime).FullName)) + .BoundAttributeDescriptor(attribute => + attribute + .Name("name") + .PropertyName("Name") + .TypeName(typeof(string).FullName)) + .Build() + }; + + [Fact] + public void Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes1() + { + EvaluateData(CodeTagHelperAttributes_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes2() + { + EvaluateData(CodeTagHelperAttributes_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes3() + { + EvaluateData(CodeTagHelperAttributes_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes4() + { + EvaluateData(CodeTagHelperAttributes_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes5() + { + EvaluateData(CodeTagHelperAttributes_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes6() + { + EvaluateData(CodeTagHelperAttributes_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes7() + { + EvaluateData(CodeTagHelperAttributes_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes8() + { + EvaluateData(CodeTagHelperAttributes_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes9() + { + EvaluateData(CodeTagHelperAttributes_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes10() + { + EvaluateData(CodeTagHelperAttributes_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes11() + { + EvaluateData(CodeTagHelperAttributes_Descriptors, ""); + } + + [Fact] + public void TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper1() + { + RunParseTreeRewriterTest("

      ", "strong", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper2() + { + RunParseTreeRewriterTest("

      Hello World

      ", "strong", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper3() + { + RunParseTreeRewriterTest("

      Hello World

      ", "strong", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper4() + { + RunParseTreeRewriterTest("

      Hello

      World

      ", "strong", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesOddlySpacedTagHelperTagBlocks1() + { + RunParseTreeRewriterTest("

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesOddlySpacedTagHelperTagBlocks2() + { + RunParseTreeRewriterTest("

      Hello World

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesOddlySpacedTagHelperTagBlocks3() + { + RunParseTreeRewriterTest("

      Hello

      World

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks1() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var currentFormattedString = "

      "; + var document = string.Format(currentFormattedString, dateTimeNowString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks2() + { + // Arrange + var doWhileString = "@do { var foo = bar; Foo foo++; } while (foo);"; + var currentFormattedString = "

      "; + var document = string.Format(currentFormattedString, doWhileString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks3() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var currentFormattedString = "

      Hello World

      "; + var document = string.Format(currentFormattedString, dateTimeNowString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks4() + { + // Arrange + var doWhileString = "@do { var foo = bar; Foo foo++; } while (foo);"; + var currentFormattedString = "

      Hello World

      "; + var document = string.Format(currentFormattedString, doWhileString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks5() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var currentFormattedString = "

      Hello

      World

      "; + var document = string.Format(currentFormattedString, dateTimeNowString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks6() + { + // Arrange + var doWhileString = "@do { var foo = bar; Foo foo++; } while (foo);"; + var currentFormattedString = "

      Hello

      World

      "; + var document = string.Format(currentFormattedString, doWhileString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks7() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var currentFormattedString = "

      Hello World inside of strong tag

      "; + var document = string.Format(currentFormattedString, dateTimeNowString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks1() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var currentFormattedString = "

      {0}

      "; + var document = string.Format(currentFormattedString, dateTimeNowString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks2() + { + // Arrange + var doWhileString = "@do { var foo = bar;

      Foo

      foo++; } while (foo);"; + var currentFormattedString = "

      {0}

      "; + var document = string.Format(currentFormattedString, doWhileString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks3() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var currentFormattedString = "

      Hello World {0}

      "; + var document = string.Format(currentFormattedString, dateTimeNowString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks4() + { + // Arrange + var doWhileString = "@do { var foo = bar;

      Foo

      foo++; } while (foo);"; + var currentFormattedString = "

      Hello World {0}

      "; + var document = string.Format(currentFormattedString, doWhileString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks5() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var currentFormattedString = "

      {0}

      {0}

      "; + var document = string.Format(currentFormattedString, dateTimeNowString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks6() + { + // Arrange + var doWhileString = "@do { var foo = bar;

      Foo

      foo++; } while (foo);"; + var currentFormattedString = "

      {0}

      {0}

      "; + var document = string.Format(currentFormattedString, doWhileString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks7() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var currentFormattedString = "

      Hello {0}inside of {0} strong tag

      "; + var document = string.Format(currentFormattedString, dateTimeNowString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks8() + { + // Arrange + var doWhileString = "@do { var foo = bar;

      Foo

      foo++; } while (foo);"; + var currentFormattedString = "

      Hello {0}inside of {0} strong tag

      "; + var document = string.Format(currentFormattedString, doWhileString); + + // Act & Assert + RunParseTreeRewriterTest(document, "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_AllowsInvalidHtml1() + { + RunParseTreeRewriterTest("<<

      >>

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_AllowsInvalidHtml2() + { + RunParseTreeRewriterTest("<

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_AllowsInvalidHtml3() + { + RunParseTreeRewriterTest("< p />", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_AllowsInvalidHtml4() + { + RunParseTreeRewriterTest("", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_AllowsInvalidHtml5() + { + RunParseTreeRewriterTest("< class=\"foo\"

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_AllowsInvalidHtml6() + { + RunParseTreeRewriterTest("/>

      >", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_AllowsInvalidHtml7() + { + RunParseTreeRewriterTest("/>

      >", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_AllowsInvalidHtml8() + { + RunParseTreeRewriterTest("@DateTime.Now/>

      >", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_AllowsInvalidHtml9() + { + RunParseTreeRewriterTest("

      @DateTime.Now / >

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_AllowsInvalidHtml10() + { + RunParseTreeRewriterTest("

      < @DateTime.Now >

      ", "p"); + } + + [Fact] + public void Rewrite_UnderstandsEmptyAttributeTagHelpers1() + { + RunParseTreeRewriterTest("

      ", "p"); + } + + [Fact] + public void Rewrite_UnderstandsEmptyAttributeTagHelpers2() + { + RunParseTreeRewriterTest("

      ", "p"); + } + + [Fact] + public void Rewrite_UnderstandsEmptyAttributeTagHelpers3() + { + RunParseTreeRewriterTest("

      ", "p"); + } + + [Fact] + public void Rewrite_UnderstandsEmptyAttributeTagHelpers4() + { + RunParseTreeRewriterTest("

      ", "p"); + } + + [Fact] + public void Rewrite_UnderstandsEmptyAttributeTagHelpers5() + { + RunParseTreeRewriterTest("

      ", "p"); + } + + public static TagHelperDescriptor[] EmptyTagHelperBoundAttribute_Descriptors = new TagHelperDescriptor[] + { + TagHelperDescriptorBuilder.Create("mythTagHelper", "SomeAssembly") + .TagMatchingRuleDescriptor(rule => rule.RequireTagName("myth")) + .BoundAttributeDescriptor(attribute => + attribute + .Name("bound") + .PropertyName("Bound") + .TypeName(typeof(bool).FullName)) + .BoundAttributeDescriptor(attribute => + attribute + .Name("name") + .PropertyName("Name") + .TypeName(typeof(string).FullName)) + .Build() + }; + + [Fact] + public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes1() + { + EvaluateData(EmptyTagHelperBoundAttribute_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes2() + { + EvaluateData(EmptyTagHelperBoundAttribute_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes3() + { + EvaluateData(EmptyTagHelperBoundAttribute_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes4() + { + EvaluateData(EmptyTagHelperBoundAttribute_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes5() + { + EvaluateData(EmptyTagHelperBoundAttribute_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes6() + { + EvaluateData(EmptyTagHelperBoundAttribute_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes7() + { + EvaluateData(EmptyTagHelperBoundAttribute_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes8() + { + EvaluateData(EmptyTagHelperBoundAttribute_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes9() + { + EvaluateData(EmptyTagHelperBoundAttribute_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes10() + { + EvaluateData(EmptyTagHelperBoundAttribute_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes11() + { + EvaluateData(EmptyTagHelperBoundAttribute_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes12() + { + EvaluateData(EmptyTagHelperBoundAttribute_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes13() + { + EvaluateData(EmptyTagHelperBoundAttribute_Descriptors, ""); + } + + [Fact] + public void Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes14() + { + EvaluateData(EmptyTagHelperBoundAttribute_Descriptors, ""); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesScriptTagHelpers1() + { + RunParseTreeRewriterTest("", "p", "div", "script"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesScriptTagHelpers2() + { + RunParseTreeRewriterTest("", "p", "div", "script"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesScriptTagHelpers3() + { + RunParseTreeRewriterTest("

      World

      ", "p", "div", "script"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesScriptTagHelpers4() + { + RunParseTreeRewriterTest(" ", "p", "div", "script"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesScriptTagHelpers5() + { + RunParseTreeRewriterTest(" World

      ", "p", "div", "script"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesScriptTagHelpers7() + { + RunParseTreeRewriterTest("

      Hello World

      ", "p", "div", "script"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesSelfClosingTagHelpers1() + { + RunParseTreeRewriterTest("

      ", "p"); + } + + + [Fact] + public void TagHelperParseTreeRewriter_RewritesSelfClosingTagHelpers2() + { + RunParseTreeRewriterTest("

      Hello

      World

      ", "p"); + } + + + [Fact] + public void TagHelperParseTreeRewriter_RewritesSelfClosingTagHelpers3() + { + RunParseTreeRewriterTest("Hello

      World", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes1() + { + RunParseTreeRewriterTest("

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes2() + { + RunParseTreeRewriterTest("

      Hello World

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes3() + { + RunParseTreeRewriterTest("

      Hello World

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes4() + { + RunParseTreeRewriterTest("

      Hello

      World

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes5() + { + RunParseTreeRewriterTest("

      Hello World inside of strong tag

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes1() + { + RunParseTreeRewriterTest("

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes2() + { + RunParseTreeRewriterTest("

      Hello World

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes3() + { + RunParseTreeRewriterTest("

      Hello

      World

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes4() + { + RunParseTreeRewriterTest("

      Hello World inside of strong tag

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks1() + { + RunParseTreeRewriterTest("

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks2() + { + RunParseTreeRewriterTest("

      Hello World

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks3() + { + RunParseTreeRewriterTest("

      Hello

      World

      ", "p"); + } + + [Fact] + public void TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks4() + { + RunParseTreeRewriterTest("

      Hello World inside of strong tag

      ", "p"); + } + + [Fact] + public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document1() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var document = $""; + + // Act & Assert + RunParseTreeRewriterTest(document, "input"); + } + + [Fact] + public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document2() + { + // Arrange + var document = ""; + + // Act & Assert + RunParseTreeRewriterTest(document, "input"); + } + + [Fact] + public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document3() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var document = $""; + + // Act & Assert + RunParseTreeRewriterTest(document, "input"); + } + + [Fact] + public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document4() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var document = $""; + + // Act & Assert + RunParseTreeRewriterTest(document, "input"); + } + + [Fact] + public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document5() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var document = $""; + + // Act & Assert + RunParseTreeRewriterTest(document, "input"); + } + + [Fact] + public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document6() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var document = $""; + + // Act & Assert + RunParseTreeRewriterTest(document, "input"); + } + + [Fact] + public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document7() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var document = $""; + + // Act & Assert + RunParseTreeRewriterTest(document, "input"); + } + + [Fact] + public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block1() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var document = $""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + RunParseTreeRewriterTest(document, "input"); + } + + [Fact] + public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block2() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + RunParseTreeRewriterTest(document, "input"); + } + + [Fact] + public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block3() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var document = $""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + RunParseTreeRewriterTest(document, "input"); + } + + [Fact] + public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block4() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var document = $""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + RunParseTreeRewriterTest(document, "input"); + } + + [Fact] + public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block5() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var document = $""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + RunParseTreeRewriterTest(document, "input"); + } + + [Fact] + public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block6() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var document = $""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + RunParseTreeRewriterTest(document, "input"); + } + + [Fact] + public void Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block7() + { + // Arrange + var dateTimeNowString = "@DateTime.Now"; + var document = $""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + RunParseTreeRewriterTest(document, "input"); + } + + public static TagHelperDescriptor[] MinimizedAttribute_Descriptors = new TagHelperDescriptor[] + { + TagHelperDescriptorBuilder.Create("InputTagHelper1", "SomeAssembly") + .TagMatchingRuleDescriptor(rule => + rule + .RequireTagName("input") + .RequireAttributeDescriptor(attribute => attribute.Name("unbound-required"))) + .TagMatchingRuleDescriptor(rule => + rule + .RequireTagName("input") + .RequireAttributeDescriptor(attribute => attribute.Name("bound-required-string"))) + .BoundAttributeDescriptor(attribute => + attribute + .Name("bound-required-string") + .PropertyName("BoundRequiredString") + .TypeName(typeof(string).FullName)) + .Build(), + TagHelperDescriptorBuilder.Create("InputTagHelper2", "SomeAssembly") + .TagMatchingRuleDescriptor(rule => + rule + .RequireTagName("input") + .RequireAttributeDescriptor(attribute => attribute.Name("bound-required-int"))) + .BoundAttributeDescriptor(attribute => + attribute + .Name("bound-required-int") + .PropertyName("BoundRequiredInt") + .TypeName(typeof(int).FullName)) + .Build(), + TagHelperDescriptorBuilder.Create("InputTagHelper3", "SomeAssembly") + .TagMatchingRuleDescriptor(rule => rule.RequireTagName("input")) + .BoundAttributeDescriptor(attribute => + attribute + .Name("int-dictionary") + .PropertyName("DictionaryOfIntProperty") + .TypeName(typeof(IDictionary).Namespace + ".IDictionary") + .AsDictionaryAttribute("int-prefix-", typeof(int).FullName)) + .BoundAttributeDescriptor(attribute => + attribute + .Name("string-dictionary") + .PropertyName("DictionaryOfStringProperty") + .TypeName(typeof(IDictionary).Namespace + ".IDictionary") + .AsDictionaryAttribute("string-prefix-", typeof(string).FullName)) + .Build(), + TagHelperDescriptorBuilder.Create("PTagHelper", "SomeAssembly") + .TagMatchingRuleDescriptor(rule => rule.RequireTagName("p")) + .BoundAttributeDescriptor(attribute => + attribute + .Name("bound-string") + .PropertyName("BoundRequiredString") + .TypeName(typeof(string).FullName)) + .BoundAttributeDescriptor(attribute => + attribute + .Name("bound-int") + .PropertyName("BoundRequiredString") + .TypeName(typeof(int).FullName)) + .Build(), + }; + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document1() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document2() + { + // Arrange + var document = "

      "; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document3() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document4() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document5() + { + // Arrange + var document = "

      "; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document6() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document7() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document8() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document9() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document10() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document11() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document12() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document13() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document14() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document15() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document16() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document17() + { + // Arrange + var document = "

      "; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document18() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document19() + { + // Arrange + var document = "

      "; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document20() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document21() + { + // Arrange + var document = "

      "; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document22() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document23() + { + // Arrange + var document = "

      "; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document24() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document25() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document26() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document27() + { + // Arrange + var document = "

      "; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document28() + { + // Arrange + var document = ""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document29() + { + // Arrange + var document = "

      "; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document30() + { + // Arrange + var expressionString = "@DateTime.Now + 1"; + var document = $""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document31() + { + // Arrange + var expressionString = "@DateTime.Now + 1"; + var document = $"

      "; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document32() + { + // Arrange + var expressionString = "@DateTime.Now + 1"; + var document = $""; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Document33() + { + // Arrange + var expressionString = "@DateTime.Now + 1"; + var document = $"

      "; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block1() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block2() + { + // Arrange + var document = "

      "; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block3() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block4() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block5() + { + // Arrange + var document = "

      "; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block6() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block7() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block8() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block9() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block10() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block11() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block12() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block13() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block14() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block15() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block16() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block17() + { + // Arrange + var document = "

      "; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block18() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block19() + { + // Arrange + var document = "

      "; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block20() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block21() + { + // Arrange + var document = "

      "; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block22() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block23() + { + // Arrange + var document = "

      "; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block24() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block25() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block26() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block27() + { + // Arrange + var document = "

      "; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block28() + { + // Arrange + var document = ""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block29() + { + // Arrange + var document = "

      "; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block30() + { + // Arrange + var expressionString = "@DateTime.Now + 1"; + var document = $""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block31() + { + // Arrange + var expressionString = "@DateTime.Now + 1"; + var document = $"

      "; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block32() + { + // Arrange + var expressionString = "@DateTime.Now + 1"; + var document = $""; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_Block33() + { + // Arrange + var expressionString = "@DateTime.Now + 1"; + var document = $"

      "; + + // Wrap in a CSharp block + document = $"@{{{document}}}"; + + // Act & Assert + EvaluateData(MinimizedAttribute_Descriptors, document); + } + + [Fact] + public void Rewrite_UnderstandsMinimizedAttributes_PartialTags1() + { + EvaluateData(MinimizedAttribute_Descriptors, "() - { - new TagHelperAttributeNode("boundbool", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("boundbooldict-key", null, AttributeStructure.Minimized), - })); - // Act & Assert - EvaluateData(descriptors, documentContent, expectedOutput, new RazorDiagnostic[] { }); + EvaluateData(descriptors, document); } [Fact] public void Rewrite_FeatureDisabled_AddsErrorForMinimizedBooleanBoundAttributes() { // Arrange - var documentContent = ""; + var document = ""; var descriptors = new TagHelperDescriptor[] { TagHelperDescriptorBuilder.Create("InputTagHelper", "SomeAssembly") @@ -3964,32 +2132,8 @@ namespace Microsoft.AspNetCore.Razor.Language.Legacy var featureFlags = new TestRazorParserFeatureFlags(); - var expectedOutput = new MarkupBlock( - new MarkupTagHelperBlock( - "input", - TagMode.SelfClosing, - attributes: new List() - { - new TagHelperAttributeNode("boundbool", null, AttributeStructure.Minimized), - new TagHelperAttributeNode("boundbooldict-key", null, AttributeStructure.Minimized), - })); - - var expectedErrors = new[] - { - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(7, 0, 7, 9), - "boundbool", - "input", - "System.Boolean"), - RazorDiagnosticFactory.CreateTagHelper_EmptyBoundAttribute( - new SourceSpan(17, 0, 17, 17), - "boundbooldict-key", - "input", - "System.Boolean"), - }; - // Act & Assert - EvaluateData(descriptors, documentContent, expectedOutput, expectedErrors, featureFlags: featureFlags); + EvaluateData(descriptors, document, featureFlags: featureFlags); } private class TestRazorParserFeatureFlags : RazorParserFeatureFlags diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures1.syntaxtree.txt new file mode 100644 index 0000000000..4dbeb051ae --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures1.syntaxtree.txt @@ -0,0 +1,3 @@ +Markup block - Gen - 15 - (0:0,0) + Tag block - Gen - 15 - (0:0,0) - input - InputTagHelper1 - InputTagHelper2 + StartTagAndEndTag - ... diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures2.syntaxtree.txt new file mode 100644 index 0000000000..b44a4b21d3 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures2.syntaxtree.txt @@ -0,0 +1,3 @@ +Markup block - Gen - 9 - (0:0,0) + Tag block - Gen - 9 - (0:0,0) - input - InputTagHelper1 - InputTagHelper2 + SelfClosing - diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures3.syntaxtree.txt new file mode 100644 index 0000000000..86f4c28f35 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures3.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 19 - (0:0,0) + Tag block - Gen - 19 - (0:0,0) - input - InputTagHelper1 - InputTagHelper2 + StartTagOnly - + type - SingleQuotes + Markup span - Gen - [text] - SpanEditHandler;Accepts:Any - (13:0,13) - Symbols:1 + HtmlSymbolType.Text;[text]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures4.syntaxtree.txt new file mode 100644 index 0000000000..ebca51245c --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures4.syntaxtree.txt @@ -0,0 +1,5 @@ +Markup block - Gen - 14 - (0:0,0) + Tag block - Gen - 7 - (0:0,0) - input - InputTagHelper1 - InputTagHelper2 + StartTagOnly - + Tag block - Gen - 7 - (7:0,7) - input - InputTagHelper1 - InputTagHelper2 + StartTagOnly - diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures5.syntaxtree.txt new file mode 100644 index 0000000000..33854029d0 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures5.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 27 - (0:0,0) + Tag block - Gen - 27 - (0:0,0) - input - InputTagHelper1 - InputTagHelper2 + StartTagAndEndTag - ... + type - SingleQuotes + Markup span - Gen - [text] - SpanEditHandler;Accepts:Any - (13:0,13) - Symbols:1 + HtmlSymbolType.Text;[text]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures6.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures6.syntaxtree.txt new file mode 100644 index 0000000000..b44a4b21d3 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures6.syntaxtree.txt @@ -0,0 +1,3 @@ +Markup block - Gen - 9 - (0:0,0) + Tag block - Gen - 9 - (0:0,0) - input - InputTagHelper1 - InputTagHelper2 + SelfClosing - diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures7.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures7.syntaxtree.txt new file mode 100644 index 0000000000..b44a4b21d3 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_AllowsCompatibleTagStructures7.syntaxtree.txt @@ -0,0 +1,3 @@ +Markup block - Gen - 9 - (0:0,0) + Tag block - Gen - 9 - (0:0,0) - input - InputTagHelper1 - InputTagHelper2 + SelfClosing - diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes1.syntaxtree.txt new file mode 100644 index 0000000000..1f5a3adbca --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes1.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 30 - (0:0,0) + Tag block - Gen - 30 - (0:0,0) - ul - CatchAllTagHelper + StartTagAndEndTag -
        ...
      + bound - Minimized + [item] - SingleQuotes + Code span - Gen - [items] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (18:0,18) - Symbols:1 + HtmlSymbolType.Text;[items]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes2.syntaxtree.txt new file mode 100644 index 0000000000..1f15204f1b --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes2.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 32 - (0:0,0) + Tag block - Gen - 32 - (0:0,0) - ul - CatchAllTagHelper + StartTagAndEndTag -
        ...
      + bound - Minimized + [(item)] - SingleQuotes + Code span - Gen - [items] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (20:0,20) - Symbols:1 + HtmlSymbolType.Text;[items]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes3.syntaxtree.txt new file mode 100644 index 0000000000..104b190dd9 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes3.syntaxtree.txt @@ -0,0 +1,11 @@ +Markup block - Gen - 55 - (0:0,0) + Tag block - Gen - 55 - (0:0,0) - button - CatchAllTagHelper + StartTagAndEndTag - + bound - Minimized + (click) - SingleQuotes + Code span - Gen - [doSomething()] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (23:0,23) - Symbols:1 + HtmlSymbolType.Text;[doSomething()]; + Markup span - Gen - [Click Me] - SpanEditHandler;Accepts:Any - (38:0,38) - Symbols:3 + HtmlSymbolType.Text;[Click]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[Me]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes4.syntaxtree.txt new file mode 100644 index 0000000000..0aec87b6c9 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes4.syntaxtree.txt @@ -0,0 +1,11 @@ +Markup block - Gen - 56 - (0:0,0) + Tag block - Gen - 56 - (0:0,0) - button - CatchAllTagHelper + StartTagAndEndTag - + bound - Minimized + (^click) - SingleQuotes + Code span - Gen - [doSomething()] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (24:0,24) - Symbols:1 + HtmlSymbolType.Text;[doSomething()]; + Markup span - Gen - [Click Me] - SpanEditHandler;Accepts:Any - (39:0,39) - Symbols:3 + HtmlSymbolType.Text;[Click]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[Me]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes5.syntaxtree.txt new file mode 100644 index 0000000000..812f458bf8 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes5.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 46 - (0:0,0) + Tag block - Gen - 46 - (0:0,0) - template - CatchAllTagHelper + StartTagAndEndTag - + bound - Minimized + *something - SingleQuotes + Markup span - Gen - [value] - SpanEditHandler;Accepts:Any - (28:0,28) - Symbols:1 + HtmlSymbolType.Text;[value]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes6.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes6.syntaxtree.txt new file mode 100644 index 0000000000..011d30b1d9 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes6.syntaxtree.txt @@ -0,0 +1,5 @@ +Markup block - Gen - 33 - (0:0,0) + Tag block - Gen - 33 - (0:0,0) - div - CatchAllTagHelper + StartTagAndEndTag -
      ...
      + bound - Minimized + #localminimized - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes7.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes7.syntaxtree.txt new file mode 100644 index 0000000000..5113b8d2c1 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleSymbolBoundAttributes7.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 32 - (0:0,0) + Tag block - Gen - 32 - (0:0,0) - div - CatchAllTagHelper + StartTagAndEndTag -
      ...
      + bound - Minimized + #local - SingleQuotes + Markup span - Gen - [value] - SpanEditHandler;Accepts:Any - (19:0,19) - Symbols:1 + HtmlSymbolType.Text;[value]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure1.syntaxtree.txt new file mode 100644 index 0000000000..64f951bb83 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure1.syntaxtree.txt @@ -0,0 +1,3 @@ +Markup block - Gen - 7 - (0:0,0) + Tag block - Gen - 7 - (0:0,0) - input - InputTagHelper + StartTagOnly - diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure2.syntaxtree.txt new file mode 100644 index 0000000000..bb47a46930 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure2.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 19 - (0:0,0) + Tag block - Gen - 19 - (0:0,0) - input - InputTagHelper + StartTagOnly - + type - SingleQuotes + Markup span - Gen - [text] - SpanEditHandler;Accepts:Any - (13:0,13) - Symbols:1 + HtmlSymbolType.Text;[text]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure3.syntaxtree.txt new file mode 100644 index 0000000000..5940efaad7 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure3.syntaxtree.txt @@ -0,0 +1,5 @@ +Markup block - Gen - 14 - (0:0,0) + Tag block - Gen - 7 - (0:0,0) - input - InputTagHelper + StartTagOnly - + Tag block - Gen - 7 - (7:0,7) - input - InputTagHelper + StartTagOnly - diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure4.syntaxtree.txt new file mode 100644 index 0000000000..c0c7e5a5df --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure4.syntaxtree.txt @@ -0,0 +1,8 @@ +Markup block - Gen - 26 - (0:0,0) + Tag block - Gen - 19 - (0:0,0) - input - InputTagHelper + StartTagOnly - + type - SingleQuotes + Markup span - Gen - [text] - SpanEditHandler;Accepts:Any - (13:0,13) - Symbols:1 + HtmlSymbolType.Text;[text]; + Tag block - Gen - 7 - (19:0,19) - input - InputTagHelper + StartTagOnly - diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure5.syntaxtree.txt new file mode 100644 index 0000000000..0ab4f0e967 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CanHandleWithoutEndTagTagStructure5.syntaxtree.txt @@ -0,0 +1,16 @@ +Markup block - Gen - 25 - (0:0,0) + Tag block - Gen - 5 - (0:0,0) + Markup span - Gen - [
      ] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[div]; + HtmlSymbolType.CloseAngle;[>]; + Tag block - Gen - 7 - (5:0,5) - input - InputTagHelper + StartTagOnly - + Tag block - Gen - 7 - (12:0,12) - input - InputTagHelper + StartTagOnly - + Tag block - Gen - 6 - (19:0,19) + Markup span - Gen - [
      ] - SpanEditHandler;Accepts:Any - (19:0,19) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[div]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes1.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes1.diagnostics.txt new file mode 100644 index 0000000000..c11ff99be0 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes1.diagnostics.txt @@ -0,0 +1 @@ +(1,7): Error RZ2008: Attribute 'bound' on tag helper element 'myth' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes1.syntaxtree.txt new file mode 100644 index 0000000000..94077ed99f --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes1.syntaxtree.txt @@ -0,0 +1,5 @@ +Markup block - Gen - 17 - (0:0,0) + Tag block - Gen - 17 - (0:0,0) - myth - mythTagHelper + SelfClosing - + bound - SingleQuotes + Markup block - Gen - 0 - (0:0,0) diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes10.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes10.diagnostics.txt new file mode 100644 index 0000000000..d57ce479b5 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes10.diagnostics.txt @@ -0,0 +1 @@ +(1,7): Error RZ2008: Attribute 'BouND' on tag helper element 'myth' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes10.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes10.syntaxtree.txt new file mode 100644 index 0000000000..1e5707cb20 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes10.syntaxtree.txt @@ -0,0 +1,5 @@ +Markup block - Gen - 17 - (0:0,0) + Tag block - Gen - 17 - (0:0,0) - myth - mythTagHelper + SelfClosing - + BouND - SingleQuotes + Markup block - Gen - 0 - (0:0,0) diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes11.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes11.diagnostics.txt new file mode 100644 index 0000000000..9739cf1558 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes11.diagnostics.txt @@ -0,0 +1,2 @@ +(1,7): Error RZ2008: Attribute 'BOUND' on tag helper element 'myth' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. +(1,19): Error RZ2008: Attribute 'bOUnd' on tag helper element 'myth' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes11.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes11.syntaxtree.txt new file mode 100644 index 0000000000..895d34342c --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes11.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 29 - (0:0,0) + Tag block - Gen - 29 - (0:0,0) - myth - mythTagHelper + SelfClosing - + BOUND - SingleQuotes + Markup block - Gen - 0 - (0:0,0) + bOUnd - DoubleQuotes + Markup block - Gen - 0 - (0:0,0) diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes12.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes12.diagnostics.txt new file mode 100644 index 0000000000..52810ad2c0 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes12.diagnostics.txt @@ -0,0 +1 @@ +(1,7): Error RZ2008: Attribute 'BOUND' on tag helper element 'myth' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes12.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes12.syntaxtree.txt new file mode 100644 index 0000000000..74bb0ae96b --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes12.syntaxtree.txt @@ -0,0 +1,8 @@ +Markup block - Gen - 32 - (0:0,0) + Tag block - Gen - 32 - (0:0,0) - myth - mythTagHelper + StartTagAndEndTag - ... + BOUND - DoubleQuotes + Code span - Gen - [] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (12:0,12) - Symbols:0 + nAMe - SingleQuotes + Markup span - Gen - [john] - SpanEditHandler;Accepts:Any - (19:0,19) - Symbols:1 + HtmlSymbolType.Text;[john]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes13.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes13.syntaxtree.txt new file mode 100644 index 0000000000..d72cfac82c --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes13.syntaxtree.txt @@ -0,0 +1,15 @@ +Markup block - Gen - 28 - (0:0,0) + Tag block - Gen - 28 - (0:0,0) - myth - mythTagHelper + SelfClosing - + bound - SingleQuotes + Markup block - Gen - 11 - (13:0,13) + Markup block - Gen - 9 - (13:0,13) + Code span - Gen - [ ] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (13:0,13) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 5 - (17:0,17) + Code span - Gen - [@] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (17:0,17) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [true] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (18:0,18) - Symbols:1 + CSharpSymbolType.Keyword;[true]; + Code span - Gen - [ ] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (22:0,22) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes14.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes14.syntaxtree.txt new file mode 100644 index 0000000000..6c9a2989e2 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes14.syntaxtree.txt @@ -0,0 +1,19 @@ +Markup block - Gen - 30 - (0:0,0) + Tag block - Gen - 30 - (0:0,0) - myth - mythTagHelper + SelfClosing - + bound - SingleQuotes + Markup block - Gen - 13 - (13:0,13) + Markup block - Gen - 11 - (13:0,13) + Code span - Gen - [ ] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (13:0,13) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 7 - (17:0,17) + Code span - Gen - [@] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (17:0,17) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [(] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (18:0,18) - Symbols:1 + CSharpSymbolType.LeftParenthesis;[(]; + Code span - Gen - [true] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (19:0,19) - Symbols:1 + CSharpSymbolType.Keyword;[true]; + Code span - Gen - [)] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (23:0,23) - Symbols:1 + CSharpSymbolType.RightParenthesis;[)]; + Code span - Gen - [ ] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (24:0,24) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes2.syntaxtree.txt new file mode 100644 index 0000000000..c6fb322644 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes2.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 25 - (0:0,0) + Tag block - Gen - 25 - (0:0,0) - myth - mythTagHelper + SelfClosing - + bound - SingleQuotes + Code span - Gen - [ true] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (13:0,13) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[true]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes3.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes3.diagnostics.txt new file mode 100644 index 0000000000..c11ff99be0 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes3.diagnostics.txt @@ -0,0 +1 @@ +(1,7): Error RZ2008: Attribute 'bound' on tag helper element 'myth' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes3.syntaxtree.txt new file mode 100644 index 0000000000..5f9f600862 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes3.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 21 - (0:0,0) + Tag block - Gen - 21 - (0:0,0) - myth - mythTagHelper + SelfClosing - + bound - SingleQuotes + Code span - Gen - [ ] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (13:0,13) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes4.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes4.diagnostics.txt new file mode 100644 index 0000000000..9a927a8ecb --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes4.diagnostics.txt @@ -0,0 +1,2 @@ +(1,7): Error RZ2008: Attribute 'bound' on tag helper element 'myth' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. +(1,17): Error RZ2008: Attribute 'bound' on tag helper element 'myth' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes4.syntaxtree.txt new file mode 100644 index 0000000000..969f962e57 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes4.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 27 - (0:0,0) + Tag block - Gen - 27 - (0:0,0) - myth - mythTagHelper + SelfClosing - + bound - SingleQuotes + Markup block - Gen - 0 - (0:0,0) + bound - DoubleQuotes + Markup block - Gen - 0 - (0:0,0) diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes5.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes5.diagnostics.txt new file mode 100644 index 0000000000..f16283e328 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes5.diagnostics.txt @@ -0,0 +1,2 @@ +(1,7): Error RZ2008: Attribute 'bound' on tag helper element 'myth' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. +(1,18): Error RZ2008: Attribute 'bound' on tag helper element 'myth' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes5.syntaxtree.txt new file mode 100644 index 0000000000..15e108c221 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes5.syntaxtree.txt @@ -0,0 +1,9 @@ +Markup block - Gen - 30 - (0:0,0) + Tag block - Gen - 30 - (0:0,0) - myth - mythTagHelper + SelfClosing - + bound - SingleQuotes + Code span - Gen - [ ] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (13:0,13) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + bound - DoubleQuotes + Code span - Gen - [ ] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (24:0,24) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes6.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes6.diagnostics.txt new file mode 100644 index 0000000000..7993f8fe1b --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes6.diagnostics.txt @@ -0,0 +1 @@ +(1,20): Error RZ2008: Attribute 'bound' on tag helper element 'myth' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes6.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes6.syntaxtree.txt new file mode 100644 index 0000000000..dfe00f7eb2 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes6.syntaxtree.txt @@ -0,0 +1,8 @@ +Markup block - Gen - 29 - (0:0,0) + Tag block - Gen - 29 - (0:0,0) - myth - mythTagHelper + SelfClosing - + bound - SingleQuotes + Code span - Gen - [true] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (13:0,13) - Symbols:1 + HtmlSymbolType.Text;[true]; + bound - DoubleQuotes + Code span - Gen - [] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (25:0,25) - Symbols:0 diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes7.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes7.diagnostics.txt new file mode 100644 index 0000000000..c11ff99be0 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes7.diagnostics.txt @@ -0,0 +1 @@ +(1,7): Error RZ2008: Attribute 'bound' on tag helper element 'myth' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes7.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes7.syntaxtree.txt new file mode 100644 index 0000000000..887ea6880f --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes7.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 23 - (0:0,0) + Tag block - Gen - 23 - (0:0,0) - myth - mythTagHelper + SelfClosing - + bound - DoubleQuotes + Code span - Gen - [] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (12:0,12) - Symbols:0 + name - SingleQuotes + Markup block - Gen - 0 - (0:0,0) diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes8.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes8.diagnostics.txt new file mode 100644 index 0000000000..c11ff99be0 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes8.diagnostics.txt @@ -0,0 +1 @@ +(1,7): Error RZ2008: Attribute 'bound' on tag helper element 'myth' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes8.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes8.syntaxtree.txt new file mode 100644 index 0000000000..d734c93130 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes8.syntaxtree.txt @@ -0,0 +1,8 @@ +Markup block - Gen - 25 - (0:0,0) + Tag block - Gen - 25 - (0:0,0) - myth - mythTagHelper + SelfClosing - + bound - DoubleQuotes + Code span - Gen - [] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (12:0,12) - Symbols:0 + name - SingleQuotes + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (19:0,19) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes9.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes9.diagnostics.txt new file mode 100644 index 0000000000..356a13e234 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes9.diagnostics.txt @@ -0,0 +1 @@ +(1,32): Error RZ2008: Attribute 'bound' on tag helper element 'myth' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes9.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes9.syntaxtree.txt new file mode 100644 index 0000000000..e411abea8a --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForEmptyTagHelperBoundAttributes9.syntaxtree.txt @@ -0,0 +1,13 @@ +Markup block - Gen - 46 - (0:0,0) + Tag block - Gen - 46 - (0:0,0) - myth - mythTagHelper + SelfClosing - + bound - SingleQuotes + Code span - Gen - [true] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (13:0,13) - Symbols:1 + HtmlSymbolType.Text;[true]; + name - SingleQuotes + Markup span - Gen - [john] - SpanEditHandler;Accepts:Any - (25:0,25) - Symbols:1 + HtmlSymbolType.Text;[john]; + bound - DoubleQuotes + Code span - Gen - [] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (37:0,37) - Symbols:0 + name - DoubleQuotes + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (43:0,43) - Symbols:0 diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper1.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper1.diagnostics.txt new file mode 100644 index 0000000000..b0e5b255ec --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper1.diagnostics.txt @@ -0,0 +1,2 @@ +(1,2): Error RZ1035: Missing close angle for tag helper 'p'. +(1,2): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper1.syntaxtree.txt new file mode 100644 index 0000000000..a6461887d3 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper1.syntaxtree.txt @@ -0,0 +1,3 @@ +Markup block - Gen - 2 - (0:0,0) + Tag block - Gen - 2 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      - 6 - (0:0,0) + Tag block - Gen - 6 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      - 10 - (0:0,0) + Tag block - Gen - 10 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      + Tag block - Gen - 7 - (3:0,3) - strong - strongtaghelper + StartTagAndEndTag - - 11 - (0:0,0) + Tag block - Gen - 11 - (0:0,0) - strong - strongtaghelper + StartTagAndEndTag - - 3 - (8:0,8) - p - ptaghelper + StartTagAndEndTag -

      diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper5.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper5.diagnostics.txt new file mode 100644 index 0000000000..83865622a4 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper5.diagnostics.txt @@ -0,0 +1,2 @@ +(1,2): Error RZ1035: Missing close angle for tag helper 'strong'. +(1,11): Error RZ1035: Missing close angle for tag helper 'strong'. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper5.syntaxtree.txt new file mode 100644 index 0000000000..605e599c38 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper5.syntaxtree.txt @@ -0,0 +1,3 @@ +Markup block - Gen - 16 - (0:0,0) + Tag block - Gen - 16 - (0:0,0) - strong - strongtaghelper + StartTagAndEndTag - - 16 - (0:0,0) + Tag block - Gen - 1 - (0:0,0) + Markup span - Gen - [<] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.OpenAngle;[<]; + Tag block - Gen - 1 - (1:0,1) + Markup span - Gen - [<] - SpanEditHandler;Accepts:Any - (1:0,1) - Symbols:1 + HtmlSymbolType.OpenAngle;[<]; + Tag block - Gen - 9 - (2:0,2) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (2:0,2) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (11:0,11) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 1 - (12:0,12) + Markup span - Gen - [<] - SpanEditHandler;Accepts:Any - (12:0,12) - Symbols:1 + HtmlSymbolType.OpenAngle;[<]; + Tag block - Gen - 3 - (13:0,13) - p - ptaghelper + StartTagAndEndTag -

      diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper7.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper7.diagnostics.txt new file mode 100644 index 0000000000..299623f22a --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper7.diagnostics.txt @@ -0,0 +1 @@ +(1,4): Error RZ1034: Found a malformed 'strong' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper7.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper7.syntaxtree.txt new file mode 100644 index 0000000000..963b9575db --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper7.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 16 - (0:0,0) + Tag block - Gen - 1 - (0:0,0) + Markup span - Gen - [<] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.OpenAngle;[<]; + Tag block - Gen - 1 - (1:0,1) + Markup span - Gen - [<] - SpanEditHandler;Accepts:Any - (1:0,1) - Symbols:1 + HtmlSymbolType.OpenAngle;[<]; + Tag block - Gen - 14 - (2:0,2) - strong - strongtaghelper + StartTagAndEndTag - + Markup span - Gen - [> ] - SpanEditHandler;Accepts:Any - (10:0,10) - Symbols:2 + HtmlSymbolType.CloseAngle;[>]; + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 1 - (12:0,12) + Markup span - Gen - [<] - SpanEditHandler;Accepts:Any - (12:0,12) - Symbols:1 + HtmlSymbolType.OpenAngle;[<]; + Tag block - Gen - 2 - (13:0,13) + Markup span - Gen - [<>] - SpanEditHandler;Accepts:Any - (13:0,13) - Symbols:2 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [>] - SpanEditHandler;Accepts:Any - (15:0,15) - Symbols:1 + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper8.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper8.diagnostics.txt new file mode 100644 index 0000000000..fbfae8923a --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper8.diagnostics.txt @@ -0,0 +1 @@ +(1,15): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper8.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper8.syntaxtree.txt new file mode 100644 index 0000000000..c019cccf0f --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelper8.syntaxtree.txt @@ -0,0 +1,13 @@ +Markup block - Gen - 25 - (0:0,0) + Tag block - Gen - 4 - (0:0,0) + Markup span - Gen - [ - 21 - (4:0,4) - strong - strongtaghelper + StartTagAndEndTag - ... + Tag block - Gen - 4 - (12:0,12) + Markup span - Gen - [

      ] - SpanEditHandler;Accepts:Any - (12:0,12) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[p]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes1.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes1.diagnostics.txt new file mode 100644 index 0000000000..b0e5b255ec --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes1.diagnostics.txt @@ -0,0 +1,2 @@ +(1,2): Error RZ1035: Missing close angle for tag helper 'p'. +(1,2): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes1.syntaxtree.txt new file mode 100644 index 0000000000..41e6c9cb10 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes1.syntaxtree.txt @@ -0,0 +1,5 @@ +Markup block - Gen - 10 - (0:0,0) + Tag block - Gen - 10 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      - 31 - (0:0,0) + Tag block - Gen - 31 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      + class - NoQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (9:0,9) - Symbols:1 + HtmlSymbolType.Text;[btn]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes11.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes11.diagnostics.txt new file mode 100644 index 0000000000..c263af5dea --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes11.diagnostics.txt @@ -0,0 +1,3 @@ +(1,2): Error RZ1035: Missing close angle for tag helper 'p'. +(1,2): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. +(1,25): Error RZ1034: Found a malformed 'strong' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes11.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes11.syntaxtree.txt new file mode 100644 index 0000000000..1fd6ddea9a --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes11.syntaxtree.txt @@ -0,0 +1,14 @@ +Markup block - Gen - 31 - (0:0,0) + Tag block - Gen - 31 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      - 8 - (10:0,10) + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (10:0,10) - Symbols:1 + HtmlSymbolType.Text;[btn]; + Markup span - Gen - [ bar=] - SpanEditHandler;Accepts:Any - (13:0,13) - Symbols:3 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[bar]; + HtmlSymbolType.Equals;[=]; + foo - Minimized + Tag block - Gen - 8 - (23:0,23) - strong - strongtaghelper + StartTagAndEndTag - diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes12.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes12.syntaxtree.txt new file mode 100644 index 0000000000..60f2de2117 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes12.syntaxtree.txt @@ -0,0 +1,12 @@ +Markup block - Gen - 28 - (0:0,0) + Tag block - Gen - 28 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup block - Gen - 8 - (10:0,10) + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (10:0,10) - Symbols:1 + HtmlSymbolType.Text;[btn]; + Markup span - Gen - [ bar=] - SpanEditHandler;Accepts:Any - (13:0,13) - Symbols:3 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[bar]; + HtmlSymbolType.Equals;[=]; + foo - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes13.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes13.diagnostics.txt new file mode 100644 index 0000000000..3191132e51 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes13.diagnostics.txt @@ -0,0 +1 @@ +(1,4): Error RZ1031: The tag helper 'p' must not have C# in the element's attribute declaration area. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes13.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes13.syntaxtree.txt new file mode 100644 index 0000000000..d1b413266d --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes13.syntaxtree.txt @@ -0,0 +1,3 @@ +Markup block - Gen - 33 - (0:0,0) + Tag block - Gen - 33 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes14.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes14.diagnostics.txt new file mode 100644 index 0000000000..3191132e51 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes14.diagnostics.txt @@ -0,0 +1 @@ +(1,4): Error RZ1031: The tag helper 'p' must not have C# in the element's attribute declaration area. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes14.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes14.syntaxtree.txt new file mode 100644 index 0000000000..1f20b3328e --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes14.syntaxtree.txt @@ -0,0 +1,3 @@ +Markup block - Gen - 27 - (0:0,0) + Tag block - Gen - 27 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes15.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes15.diagnostics.txt new file mode 100644 index 0000000000..d177eb6df7 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes15.diagnostics.txt @@ -0,0 +1 @@ +(1,2): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes15.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes15.syntaxtree.txt new file mode 100644 index 0000000000..bbda6e6faa --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes15.syntaxtree.txt @@ -0,0 +1,13 @@ +Markup block - Gen - 28 - (0:0,0) + Tag block - Gen - 28 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      + class - DoubleQuotes + Markup block - Gen - 13 - (9:0,9) + Markup block - Gen - 13 - (9:0,9) + Expression block - Gen - 13 - (9:0,9) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (9:0,9) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (10:0,10) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes16.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes16.diagnostics.txt new file mode 100644 index 0000000000..719d1c8841 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes16.diagnostics.txt @@ -0,0 +1,3 @@ +(1,2): Error RZ1035: Missing close angle for tag helper 'p'. +(1,2): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. +(1,12): Error RZ1006: The do block is missing a closing "}" character. Make sure you have a matching "}" character for all the "{" characters within this block, and that none of the "}" characters are being interpreted as markup. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes16.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes16.syntaxtree.txt new file mode 100644 index 0000000000..411be6ca51 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes16.syntaxtree.txt @@ -0,0 +1,13 @@ +Markup block - Gen - 15 - (0:0,0) + Tag block - Gen - 15 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      - 21 - (0:0,0) + Tag block - Gen - 21 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      + class - DoubleQuotes + Markup block - Gen - 11 - (10:0,10) + Markup block - Gen - 11 - (10:0,10) + Statement block - Gen - 11 - (10:0,10) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (10:0,10) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [do {">

      ] - SpanEditHandler;Accepts:Any - (11:0,11) - Symbols:4 + CSharpSymbolType.Keyword;[do]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftBrace;[{]; + CSharpSymbolType.StringLiteral;[">

      ];RZ1000(15:0,15 [1] ) diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes18.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes18.diagnostics.txt new file mode 100644 index 0000000000..6451ce6e4b --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes18.diagnostics.txt @@ -0,0 +1,5 @@ +(1,2): Error RZ1035: Missing close angle for tag helper 'p'. +(1,2): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. +(1,4): Error RZ1031: The tag helper 'p' must not have C# in the element's attribute declaration area. +(1,5): Error RZ1006: The do block is missing a closing "}" character. Make sure you have a matching "}" character for all the "{" characters within this block, and that none of the "}" characters are being interpreted as markup. +(1,32): Error RZ1026: Encountered end tag "p" with no matching start tag. Are your start/end tags properly balanced? diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes18.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes18.syntaxtree.txt new file mode 100644 index 0000000000..1903f8d6b7 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes18.syntaxtree.txt @@ -0,0 +1,3 @@ +Markup block - Gen - 33 - (0:0,0) + Tag block - Gen - 33 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes19.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes19.diagnostics.txt new file mode 100644 index 0000000000..f716761d50 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes19.diagnostics.txt @@ -0,0 +1 @@ +(1,14): Error RZ1030: TagHelper attributes must be well-formed. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes19.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes19.syntaxtree.txt new file mode 100644 index 0000000000..6b276feb1b --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes19.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 38 - (0:0,0) + Tag block - Gen - 38 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - NoQuotes + Markup span - Gen - [some] - SpanEditHandler;Accepts:Any - (9:0,9) - Symbols:1 + HtmlSymbolType.Text;[some]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes2.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes2.diagnostics.txt new file mode 100644 index 0000000000..d177eb6df7 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes2.diagnostics.txt @@ -0,0 +1 @@ +(1,2): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes2.syntaxtree.txt new file mode 100644 index 0000000000..2e7acef3f6 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes2.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 24 - (0:0,0) + Tag block - Gen - 24 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      + bar - DoubleQuotes + Markup span - Gen - [false] - SpanEditHandler;Accepts:Any - (8:0,8) - Symbols:1 + HtmlSymbolType.Text;[false]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes3.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes3.diagnostics.txt new file mode 100644 index 0000000000..b0e5b255ec --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes3.diagnostics.txt @@ -0,0 +1,2 @@ +(1,2): Error RZ1035: Missing close angle for tag helper 'p'. +(1,2): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes3.syntaxtree.txt new file mode 100644 index 0000000000..2555ffe387 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes3.syntaxtree.txt @@ -0,0 +1,12 @@ +Markup block - Gen - 23 - (0:0,0) + Tag block - Gen - 23 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      - 23 - (0:0,0) + Tag block - Gen - 23 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      - 14 - (8:0,8) + Markup span - Gen - [false] - SpanEditHandler;Accepts:Any - (8:0,8) - Symbols:1 + HtmlSymbolType.Text;[false]; + Markup span - Gen - [ - 13 - (0:0,0) + Tag block - Gen - 13 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      - [false] - SpanEditHandler;Accepts:Any - (7:0,7) - Symbols:1 + HtmlSymbolType.Text;[false]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes6.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes6.diagnostics.txt new file mode 100644 index 0000000000..b0e5b255ec --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes6.diagnostics.txt @@ -0,0 +1,2 @@ +(1,2): Error RZ1035: Missing close angle for tag helper 'p'. +(1,2): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes6.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes6.syntaxtree.txt new file mode 100644 index 0000000000..7e0b2744b6 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes6.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 14 - (0:0,0) + Tag block - Gen - 14 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      + bar - DoubleQuotes + Markup block - Gen - 12 - (8:0,8) + Markup span - Gen - [false'] - SpanEditHandler;Accepts:Any - (8:0,8) - Symbols:2 + HtmlSymbolType.Text;[false]; + HtmlSymbolType.SingleQuote;[']; + Markup span - Gen - [ >

      ] - SpanEditHandler;Accepts:Any - (14:0,14) - Symbols:6 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.CloseAngle;[>]; + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[p]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes8.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes8.diagnostics.txt new file mode 100644 index 0000000000..2bc23b0f86 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes8.diagnostics.txt @@ -0,0 +1,3 @@ +(1,2): Error RZ1035: Missing close angle for tag helper 'p'. +(1,2): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. +(1,12): Error RZ1034: Found a malformed 'strong' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes8.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes8.syntaxtree.txt new file mode 100644 index 0000000000..7fea4843e0 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes8.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 18 - (0:0,0) + Tag block - Gen - 18 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      - 8 - (10:0,10) - strong - strongtaghelper + StartTagAndEndTag - diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes9.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes9.diagnostics.txt new file mode 100644 index 0000000000..d177eb6df7 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes9.diagnostics.txt @@ -0,0 +1 @@ +(1,2): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes9.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes9.syntaxtree.txt new file mode 100644 index 0000000000..ba68ccae99 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesErrorForMalformedTagHelpersWithAttributes9.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 25 - (0:0,0) + Tag block - Gen - 25 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      + class - NoQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (9:0,9) - Symbols:1 + HtmlSymbolType.Text;[btn]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes1.syntaxtree.txt new file mode 100644 index 0000000000..272bfa66fb --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes1.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 19 - (0:0,0) + Tag block - Gen - 19 - (0:0,0) - person - PersonTagHelper + SelfClosing - + age - DoubleQuotes + Code span - Gen - [12] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (13:0,13) - Symbols:1 + HtmlSymbolType.Text;[12]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes10.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes10.syntaxtree.txt new file mode 100644 index 0000000000..3c7f0e63d1 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes10.syntaxtree.txt @@ -0,0 +1,18 @@ +Markup block - Gen - 73 - (0:0,0) + Tag block - Gen - 73 - (0:0,0) - person - PersonTagHelper + SelfClosing - + age - DoubleQuotes + Code span - Gen - [12] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (13:0,13) - Symbols:1 + HtmlSymbolType.Text;[12]; + birthday - DoubleQuotes + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (27:0,27) - Symbols:1 + HtmlSymbolType.Text;[DateTime.Now]; + name - DoubleQuotes + Markup block - Gen - 22 - (47:0,47) + Markup block - Gen - 2 - (47:0,47) + Markup span - Gen - [@] - SpanEditHandler;Accepts:None - (47:0,47) - Symbols:1 + HtmlSymbolType.Transition;[@]; + Markup span - Gen - [@] - SpanEditHandler;Accepts:None - (48:0,48) - Symbols:1 + HtmlSymbolType.Transition;[@]; + Markup span - Gen - [BoundStringAttribute] - SpanEditHandler;Accepts:Any - (49:0,49) - Symbols:1 + HtmlSymbolType.Text;[BoundStringAttribute]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes11.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes11.syntaxtree.txt new file mode 100644 index 0000000000..562d9ec8c4 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes11.syntaxtree.txt @@ -0,0 +1,41 @@ +Markup block - Gen - 77 - (0:0,0) + Tag block - Gen - 77 - (0:0,0) - person - PersonTagHelper + SelfClosing - + age - DoubleQuotes + Markup block - Gen - 9 - (13:0,13) + Markup block - Gen - 2 - (13:0,13) + Code span - Gen - [@] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (13:0,13) - Symbols:1 + HtmlSymbolType.Transition;[@]; + Code span - Gen - [@] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (14:0,14) - Symbols:1 + HtmlSymbolType.Transition;[@]; + Markup block - Gen - 7 - (15:0,15) + Code span - Gen - [] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (15:0,15) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Expression block - Gen - 7 - (15:0,15) + Code span - Gen - [@] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (15:0,15) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [(] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (16:0,16) - Symbols:1 + CSharpSymbolType.LeftParenthesis;[(]; + Code span - Gen - [11+1] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (17:0,17) - Symbols:3 + CSharpSymbolType.IntegerLiteral;[11]; + CSharpSymbolType.Plus;[+]; + CSharpSymbolType.IntegerLiteral;[1]; + Code span - Gen - [)] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (21:0,21) - Symbols:1 + CSharpSymbolType.RightParenthesis;[)]; + birthday - DoubleQuotes + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (34:0,34) - Symbols:1 + HtmlSymbolType.Text;[DateTime.Now]; + name - DoubleQuotes + Markup block - Gen - 19 - (54:0,54) + Markup span - Gen - [Time:] - SpanEditHandler;Accepts:Any - (54:0,54) - Symbols:1 + HtmlSymbolType.Text;[Time:]; + Markup block - Gen - 14 - (59:0,59) + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (59:0,59) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (60:0,60) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (60:0,60) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (61:0,61) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes2.syntaxtree.txt new file mode 100644 index 0000000000..87a2507f91 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes2.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 34 - (0:0,0) + Tag block - Gen - 34 - (0:0,0) - person - PersonTagHelper + SelfClosing - + birthday - DoubleQuotes + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (18:0,18) - Symbols:1 + HtmlSymbolType.Text;[DateTime.Now]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes3.syntaxtree.txt new file mode 100644 index 0000000000..7af14d5021 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes3.syntaxtree.txt @@ -0,0 +1,15 @@ +Markup block - Gen - 35 - (0:0,0) + Tag block - Gen - 35 - (0:0,0) - person - PersonTagHelper + SelfClosing - + age - DoubleQuotes + Markup block - Gen - 18 - (13:0,13) + Markup block - Gen - 18 - (13:0,13) + Expression block - Gen - 18 - (13:0,13) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (13:0,13) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now.Year] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (14:0,14) - Symbols:5 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Year]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes4.syntaxtree.txt new file mode 100644 index 0000000000..3319c1e632 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes4.syntaxtree.txt @@ -0,0 +1,17 @@ +Markup block - Gen - 36 - (0:0,0) + Tag block - Gen - 36 - (0:0,0) - person - PersonTagHelper + SelfClosing - + age - DoubleQuotes + Markup block - Gen - 19 - (13:0,13) + Markup block - Gen - 19 - (13:0,13) + Code span - Gen - [ ] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (13:0,13) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 18 - (14:0,14) + Code span - Gen - [@] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (14:0,14) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now.Year] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (15:0,15) - Symbols:5 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Year]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes5.syntaxtree.txt new file mode 100644 index 0000000000..200858338e --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes5.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 22 - (0:0,0) + Tag block - Gen - 22 - (0:0,0) - person - PersonTagHelper + SelfClosing - + name - DoubleQuotes + Markup span - Gen - [John] - SpanEditHandler;Accepts:Any - (14:0,14) - Symbols:1 + HtmlSymbolType.Text;[John]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes6.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes6.syntaxtree.txt new file mode 100644 index 0000000000..9d9ea76927 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes6.syntaxtree.txt @@ -0,0 +1,17 @@ +Markup block - Gen - 37 - (0:0,0) + Tag block - Gen - 37 - (0:0,0) - person - PersonTagHelper + SelfClosing - + name - DoubleQuotes + Markup block - Gen - 19 - (14:0,14) + Markup span - Gen - [Time:] - SpanEditHandler;Accepts:Any - (14:0,14) - Symbols:1 + HtmlSymbolType.Text;[Time:]; + Markup block - Gen - 14 - (19:0,19) + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (19:0,19) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (20:0,20) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (20:0,20) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (21:0,21) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes7.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes7.syntaxtree.txt new file mode 100644 index 0000000000..1e624c11ab --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes7.syntaxtree.txt @@ -0,0 +1,61 @@ +Markup block - Gen - 88 - (0:0,0) + Tag block - Gen - 88 - (0:0,0) - person - PersonTagHelper + SelfClosing - + age - DoubleQuotes + Markup block - Gen - 14 - (13:0,13) + Code span - Gen - [1] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (13:0,13) - Symbols:1 + HtmlSymbolType.Text;[1]; + Code span - Gen - [ +] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (14:0,14) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[+]; + Markup block - Gen - 7 - (16:0,16) + Code span - Gen - [ ] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (16:0,16) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 6 - (17:0,17) + Code span - Gen - [@] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (17:0,17) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [value] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (18:0,18) - Symbols:1 + CSharpSymbolType.Identifier;[value]; + Code span - Gen - [ +] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (23:0,23) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[+]; + Code span - Gen - [ 2] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (25:0,25) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[2]; + birthday - SingleQuotes + Markup block - Gen - 46 - (39:0,39) + Code span - Gen - [(bool)] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (39:0,39) - Symbols:1 + HtmlSymbolType.Text;[(bool)]; + Markup block - Gen - 11 - (45:0,45) + Expression block - Gen - 11 - (45:0,45) + Code span - Gen - [@] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (45:0,45) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [Bag["val"]] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (46:0,46) - Symbols:4 + CSharpSymbolType.Identifier;[Bag]; + CSharpSymbolType.LeftBracket;[[]; + CSharpSymbolType.StringLiteral;["val"]; + CSharpSymbolType.RightBracket;[]]; + Code span - Gen - [ ?] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (56:0,56) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.QuestionMark;[?]; + Markup block - Gen - 3 - (58:0,58) + Code span - Gen - [ @] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (58:0,58) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Transition;[@]; + Code span - Gen - [@] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (60:0,60) - Symbols:1 + HtmlSymbolType.Transition;[@]; + Code span - Gen - [DateTime] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (61:0,61) - Symbols:1 + HtmlSymbolType.Text;[DateTime]; + Code span - Gen - [ :] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (69:0,69) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[:]; + Markup block - Gen - 14 - (71:0,71) + Code span - Gen - [ ] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (71:0,71) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (72:0,72) + Code span - Gen - [@] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (72:0,72) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (73:0,73) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes8.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes8.syntaxtree.txt new file mode 100644 index 0000000000..68a6fbc5dc --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes8.syntaxtree.txt @@ -0,0 +1,23 @@ +Markup block - Gen - 70 - (0:0,0) + Tag block - Gen - 70 - (0:0,0) - person - PersonTagHelper + SelfClosing - + age - DoubleQuotes + Code span - Gen - [12] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (13:0,13) - Symbols:1 + HtmlSymbolType.Text;[12]; + birthday - DoubleQuotes + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (27:0,27) - Symbols:1 + HtmlSymbolType.Text;[DateTime.Now]; + name - DoubleQuotes + Markup block - Gen - 19 - (47:0,47) + Markup span - Gen - [Time:] - SpanEditHandler;Accepts:Any - (47:0,47) - Symbols:1 + HtmlSymbolType.Text;[Time:]; + Markup block - Gen - 14 - (52:0,52) + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (52:0,52) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (53:0,53) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (53:0,53) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (54:0,54) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes9.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes9.syntaxtree.txt new file mode 100644 index 0000000000..c51cf536d2 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_CreatesMarkupCodeSpansForNonStringTagHelperAttributes9.syntaxtree.txt @@ -0,0 +1,29 @@ +Markup block - Gen - 73 - (0:0,0) + Tag block - Gen - 73 - (0:0,0) - person - PersonTagHelper + SelfClosing - + age - DoubleQuotes + Code span - Gen - [12] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (13:0,13) - Symbols:1 + HtmlSymbolType.Text;[12]; + birthday - DoubleQuotes + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (27:0,27) - Symbols:1 + HtmlSymbolType.Text;[DateTime.Now]; + name - DoubleQuotes + Markup block - Gen - 22 - (47:0,47) + Markup span - Gen - [Time:] - SpanEditHandler;Accepts:Any - (47:0,47) - Symbols:1 + HtmlSymbolType.Text;[Time:]; + Markup block - Gen - 3 - (52:0,52) + Markup span - Gen - [ @] - SpanEditHandler;Accepts:None - (52:0,52) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Transition;[@]; + Markup span - Gen - [@] - SpanEditHandler;Accepts:None - (54:0,54) - Symbols:1 + HtmlSymbolType.Transition;[@]; + Markup block - Gen - 14 - (55:0,55) + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (55:0,55) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (56:0,56) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (56:0,56) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (57:0,57) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_FeatureDisabled_AddsErrorForMinimizedBooleanBoundAttributes.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_FeatureDisabled_AddsErrorForMinimizedBooleanBoundAttributes.diagnostics.txt new file mode 100644 index 0000000000..39eecf8c70 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_FeatureDisabled_AddsErrorForMinimizedBooleanBoundAttributes.diagnostics.txt @@ -0,0 +1,2 @@ +(1,8): Error RZ2008: Attribute 'boundbool' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. +(1,18): Error RZ2008: Attribute 'boundbooldict-key' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Boolean' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_FeatureDisabled_AddsErrorForMinimizedBooleanBoundAttributes.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_FeatureDisabled_AddsErrorForMinimizedBooleanBoundAttributes.syntaxtree.txt new file mode 100644 index 0000000000..8ff170117e --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_FeatureDisabled_AddsErrorForMinimizedBooleanBoundAttributes.syntaxtree.txt @@ -0,0 +1,5 @@ +Markup block - Gen - 37 - (0:0,0) + Tag block - Gen - 37 - (0:0,0) - input - InputTagHelper + SelfClosing - + boundbool - Minimized + boundbooldict-key - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block1.syntaxtree.txt new file mode 100644 index 0000000000..4eb47a7bd7 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block1.syntaxtree.txt @@ -0,0 +1,26 @@ +Markup block - Gen - 42 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 42 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 39 - (2:0,2) + Tag block - Gen - 39 - (2:0,2) - input - inputtaghelper + SelfClosing - + data-required - SingleQuotes + Markup block - Gen - 13 - (24:0,24) + Expression block - Gen - 13 - (24:0,24) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (24:0,24) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (25:0,25) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (41:0,41) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (41:0,41) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (42:0,42) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block2.syntaxtree.txt new file mode 100644 index 0000000000..98f51ef652 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block2.syntaxtree.txt @@ -0,0 +1,20 @@ +Markup block - Gen - 34 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 34 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 31 - (2:0,2) + Tag block - Gen - 31 - (2:0,2) - input - inputtaghelper + SelfClosing - + data-required - SingleQuotes + Markup span - Gen - [value] - SpanEditHandler;Accepts:Any - (24:0,24) - Symbols:1 + HtmlSymbolType.Text;[value]; + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (33:0,33) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (33:0,33) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (34:0,34) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block3.syntaxtree.txt new file mode 100644 index 0000000000..3e782d9e57 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block3.syntaxtree.txt @@ -0,0 +1,29 @@ +Markup block - Gen - 49 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 49 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 46 - (2:0,2) + Tag block - Gen - 46 - (2:0,2) - input - inputtaghelper + SelfClosing - + data-required - SingleQuotes + Markup block - Gen - 20 - (24:0,24) + Markup span - Gen - [prefix ] - SpanEditHandler;Accepts:Any - (24:0,24) - Symbols:2 + HtmlSymbolType.Text;[prefix]; + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (31:0,31) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (31:0,31) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (32:0,32) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (48:0,48) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (48:0,48) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (49:0,49) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block4.syntaxtree.txt new file mode 100644 index 0000000000..85932d06e8 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block4.syntaxtree.txt @@ -0,0 +1,29 @@ +Markup block - Gen - 49 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 49 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 46 - (2:0,2) + Tag block - Gen - 46 - (2:0,2) - input - inputtaghelper + SelfClosing - + data-required - SingleQuotes + Markup block - Gen - 20 - (24:0,24) + Expression block - Gen - 13 - (24:0,24) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (24:0,24) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (25:0,25) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ suffix] - SpanEditHandler;Accepts:Any - (37:0,37) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[suffix]; + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (48:0,48) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (48:0,48) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (49:0,49) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block5.syntaxtree.txt new file mode 100644 index 0000000000..abd9b936cf --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block5.syntaxtree.txt @@ -0,0 +1,32 @@ +Markup block - Gen - 56 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 56 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 53 - (2:0,2) + Tag block - Gen - 53 - (2:0,2) - input - inputtaghelper + SelfClosing - + data-required - SingleQuotes + Markup block - Gen - 27 - (24:0,24) + Markup span - Gen - [prefix ] - SpanEditHandler;Accepts:Any - (24:0,24) - Symbols:2 + HtmlSymbolType.Text;[prefix]; + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (31:0,31) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (31:0,31) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (32:0,32) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ suffix] - SpanEditHandler;Accepts:Any - (44:0,44) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[suffix]; + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (55:0,55) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (55:0,55) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (56:0,56) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block6.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block6.syntaxtree.txt new file mode 100644 index 0000000000..6af6af1db3 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block6.syntaxtree.txt @@ -0,0 +1,34 @@ +Markup block - Gen - 85 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 85 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 82 - (2:0,2) + Tag block - Gen - 82 - (2:0,2) - input - inputtaghelper + SelfClosing - + pre-attribute - Minimized + data-required - SingleQuotes + Markup block - Gen - 27 - (38:0,38) + Markup span - Gen - [prefix ] - SpanEditHandler;Accepts:Any - (38:0,38) - Symbols:2 + HtmlSymbolType.Text;[prefix]; + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (45:0,45) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (45:0,45) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (46:0,46) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ suffix] - SpanEditHandler;Accepts:Any - (58:0,58) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[suffix]; + post-attribute - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (84:0,84) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (84:0,84) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (85:0,85) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block7.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block7.syntaxtree.txt new file mode 100644 index 0000000000..55a715509e --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Block7.syntaxtree.txt @@ -0,0 +1,37 @@ +Markup block - Gen - 63 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 63 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 60 - (2:0,2) + Tag block - Gen - 60 - (2:0,2) - input - inputtaghelper + SelfClosing - + data-required - SingleQuotes + Markup block - Gen - 34 - (24:0,24) + Expression block - Gen - 13 - (24:0,24) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (24:0,24) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (25:0,25) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ middle ] - SpanEditHandler;Accepts:Any - (37:0,37) - Symbols:3 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[middle]; + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (45:0,45) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (45:0,45) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (46:0,46) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (62:0,62) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (62:0,62) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (63:0,63) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document1.syntaxtree.txt new file mode 100644 index 0000000000..8ae418bf5f --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document1.syntaxtree.txt @@ -0,0 +1,12 @@ +Markup block - Gen - 39 - (0:0,0) + Tag block - Gen - 39 - (0:0,0) - input - inputtaghelper + SelfClosing - + data-required - SingleQuotes + Markup block - Gen - 13 - (22:0,22) + Expression block - Gen - 13 - (22:0,22) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (22:0,22) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (23:0,23) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document2.syntaxtree.txt new file mode 100644 index 0000000000..8eba62748c --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document2.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 31 - (0:0,0) + Tag block - Gen - 31 - (0:0,0) - input - inputtaghelper + SelfClosing - + data-required - SingleQuotes + Markup span - Gen - [value] - SpanEditHandler;Accepts:Any - (22:0,22) - Symbols:1 + HtmlSymbolType.Text;[value]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document3.syntaxtree.txt new file mode 100644 index 0000000000..dfbb6e2232 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document3.syntaxtree.txt @@ -0,0 +1,15 @@ +Markup block - Gen - 46 - (0:0,0) + Tag block - Gen - 46 - (0:0,0) - input - inputtaghelper + SelfClosing - + data-required - SingleQuotes + Markup block - Gen - 20 - (22:0,22) + Markup span - Gen - [prefix ] - SpanEditHandler;Accepts:Any - (22:0,22) - Symbols:2 + HtmlSymbolType.Text;[prefix]; + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (29:0,29) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (29:0,29) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (30:0,30) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document4.syntaxtree.txt new file mode 100644 index 0000000000..18f817ff10 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document4.syntaxtree.txt @@ -0,0 +1,15 @@ +Markup block - Gen - 46 - (0:0,0) + Tag block - Gen - 46 - (0:0,0) - input - inputtaghelper + SelfClosing - + data-required - SingleQuotes + Markup block - Gen - 20 - (22:0,22) + Expression block - Gen - 13 - (22:0,22) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (22:0,22) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (23:0,23) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ suffix] - SpanEditHandler;Accepts:Any - (35:0,35) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[suffix]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document5.syntaxtree.txt new file mode 100644 index 0000000000..e5d1b3a570 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document5.syntaxtree.txt @@ -0,0 +1,18 @@ +Markup block - Gen - 53 - (0:0,0) + Tag block - Gen - 53 - (0:0,0) - input - inputtaghelper + SelfClosing - + data-required - SingleQuotes + Markup block - Gen - 27 - (22:0,22) + Markup span - Gen - [prefix ] - SpanEditHandler;Accepts:Any - (22:0,22) - Symbols:2 + HtmlSymbolType.Text;[prefix]; + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (29:0,29) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (29:0,29) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (30:0,30) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ suffix] - SpanEditHandler;Accepts:Any - (42:0,42) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[suffix]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document6.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document6.syntaxtree.txt new file mode 100644 index 0000000000..bf9baafbab --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document6.syntaxtree.txt @@ -0,0 +1,20 @@ +Markup block - Gen - 82 - (0:0,0) + Tag block - Gen - 82 - (0:0,0) - input - inputtaghelper + SelfClosing - + pre-attribute - Minimized + data-required - SingleQuotes + Markup block - Gen - 27 - (36:0,36) + Markup span - Gen - [prefix ] - SpanEditHandler;Accepts:Any - (36:0,36) - Symbols:2 + HtmlSymbolType.Text;[prefix]; + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (43:0,43) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (43:0,43) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (44:0,44) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ suffix] - SpanEditHandler;Accepts:Any - (56:0,56) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[suffix]; + post-attribute - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document7.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document7.syntaxtree.txt new file mode 100644 index 0000000000..7ef6fd8cc1 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_GeneratesExpectedOutputForUnboundDataDashAttributes_Document7.syntaxtree.txt @@ -0,0 +1,23 @@ +Markup block - Gen - 60 - (0:0,0) + Tag block - Gen - 60 - (0:0,0) - input - inputtaghelper + SelfClosing - + data-required - SingleQuotes + Markup block - Gen - 34 - (22:0,22) + Expression block - Gen - 13 - (22:0,22) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (22:0,22) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (23:0,23) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ middle ] - SpanEditHandler;Accepts:Any - (35:0,35) - Symbols:3 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[middle]; + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (43:0,43) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (43:0,43) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (44:0,44) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers1.syntaxtree.txt new file mode 100644 index 0000000000..a855effb2e --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers1.syntaxtree.txt @@ -0,0 +1,5 @@ +Markup block - Gen - 16 - (0:0,0) + Tag block - Gen - 16 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup block - Gen - 0 - (0:0,0) diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers2.syntaxtree.txt new file mode 100644 index 0000000000..bb2bf1ba66 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers2.syntaxtree.txt @@ -0,0 +1,5 @@ +Markup block - Gen - 16 - (0:0,0) + Tag block - Gen - 16 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - SingleQuotes + Markup block - Gen - 0 - (0:0,0) diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers3.syntaxtree.txt new file mode 100644 index 0000000000..1880c2201d --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers3.syntaxtree.txt @@ -0,0 +1,5 @@ +Markup block - Gen - 14 - (0:0,0) + Tag block - Gen - 14 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (9:0,9) - Symbols:0 diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers4.syntaxtree.txt new file mode 100644 index 0000000000..2328deb1ec --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers4.syntaxtree.txt @@ -0,0 +1,9 @@ +Markup block - Gen - 33 - (0:0,0) + Tag block - Gen - 33 - (0:0,0) - p - ptaghelper + SelfClosing -

      + class1 - SingleQuotes + Markup block - Gen - 0 - (0:0,0) + class2 - DoubleQuotes + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (20:0,20) - Symbols:0 + class3 - DoubleQuotes + Markup block - Gen - 0 - (0:0,0) diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers5.syntaxtree.txt new file mode 100644 index 0000000000..e11b56a9b8 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsEmptyAttributeTagHelpers5.syntaxtree.txt @@ -0,0 +1,9 @@ +Markup block - Gen - 31 - (0:0,0) + Tag block - Gen - 31 - (0:0,0) - p - ptaghelper + SelfClosing -

      + class1 - SingleQuotes + Markup block - Gen - 0 - (0:0,0) + class2 - DoubleQuotes + Markup block - Gen - 0 - (0:0,0) + class3 - DoubleQuotes + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (28:0,28) - Symbols:0 diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block1.syntaxtree.txt new file mode 100644 index 0000000000..ed1d6c42eb --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block1.syntaxtree.txt @@ -0,0 +1,18 @@ +Markup block - Gen - 29 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 29 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 26 - (2:0,2) + Tag block - Gen - 26 - (2:0,2) - input - InputTagHelper1 - InputTagHelper3 + SelfClosing - + unbound-required - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (28:0,28) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (28:0,28) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (29:0,29) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block10.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block10.diagnostics.txt new file mode 100644 index 0000000000..1fba524ca7 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block10.diagnostics.txt @@ -0,0 +1 @@ +(1,10): Error RZ2008: Attribute 'int-prefix-value' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block10.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block10.syntaxtree.txt new file mode 100644 index 0000000000..a8ef157462 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block10.syntaxtree.txt @@ -0,0 +1,18 @@ +Markup block - Gen - 28 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 28 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 25 - (2:0,2) + Tag block - Gen - 25 - (2:0,2) - input - InputTagHelper3 + SelfClosing - + int-prefix-value - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (27:0,27) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (27:0,27) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (28:0,28) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block11.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block11.diagnostics.txt new file mode 100644 index 0000000000..f50988eac1 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block11.diagnostics.txt @@ -0,0 +1 @@ +(1,10): Error RZ2008: Attribute 'string-prefix-value' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block11.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block11.syntaxtree.txt new file mode 100644 index 0000000000..281ae04728 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block11.syntaxtree.txt @@ -0,0 +1,18 @@ +Markup block - Gen - 32 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 32 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 29 - (2:0,2) + Tag block - Gen - 29 - (2:0,2) - input - InputTagHelper3 + SelfClosing - + string-prefix-value - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (31:0,31) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (31:0,31) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (32:0,32) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block12.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block12.diagnostics.txt new file mode 100644 index 0000000000..1fba524ca7 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block12.diagnostics.txt @@ -0,0 +1 @@ +(1,10): Error RZ2008: Attribute 'int-prefix-value' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block12.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block12.syntaxtree.txt new file mode 100644 index 0000000000..14dc4b64a8 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block12.syntaxtree.txt @@ -0,0 +1,19 @@ +Markup block - Gen - 32 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 32 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 29 - (2:0,2) + Tag block - Gen - 29 - (2:0,2) - input - InputTagHelper3 + SelfClosing - + int-prefix-value - SingleQuotes + Markup block - Gen - 0 - (0:0,0) + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (31:0,31) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (31:0,31) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (32:0,32) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block13.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block13.syntaxtree.txt new file mode 100644 index 0000000000..14ae07b2bd --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block13.syntaxtree.txt @@ -0,0 +1,19 @@ +Markup block - Gen - 34 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 34 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 31 - (2:0,2) + Tag block - Gen - 31 - (2:0,2) - input - InputTagHelper3 + SelfClosing - + string-prefix-value - SingleQuotes + Markup block - Gen - 0 - (0:0,0) + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (33:0,33) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (33:0,33) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (34:0,34) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block14.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block14.syntaxtree.txt new file mode 100644 index 0000000000..4dcb4f36a3 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block14.syntaxtree.txt @@ -0,0 +1,20 @@ +Markup block - Gen - 32 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 32 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 29 - (2:0,2) + Tag block - Gen - 29 - (2:0,2) - input - InputTagHelper3 + SelfClosing - + int-prefix-value - SingleQuotes + Code span - Gen - [3] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (27:0,27) - Symbols:1 + HtmlSymbolType.Text;[3]; + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (31:0,31) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (31:0,31) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (32:0,32) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block15.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block15.syntaxtree.txt new file mode 100644 index 0000000000..d277bc7a76 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block15.syntaxtree.txt @@ -0,0 +1,24 @@ +Markup block - Gen - 46 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 46 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 43 - (2:0,2) + Tag block - Gen - 43 - (2:0,2) - input - InputTagHelper3 + SelfClosing - + string-prefix-value - SingleQuotes + Markup block - Gen - 11 - (30:0,30) + Markup span - Gen - [some] - SpanEditHandler;Accepts:Any - (30:0,30) - Symbols:1 + HtmlSymbolType.Text;[some]; + Markup span - Gen - [ string] - SpanEditHandler;Accepts:Any - (34:0,34) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[string]; + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (45:0,45) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (45:0,45) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (46:0,46) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block16.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block16.diagnostics.txt new file mode 100644 index 0000000000..34a097ddbd --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block16.diagnostics.txt @@ -0,0 +1 @@ +(1,27): Error RZ2008: Attribute 'bound-required-string' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block16.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block16.syntaxtree.txt new file mode 100644 index 0000000000..da901827a8 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block16.syntaxtree.txt @@ -0,0 +1,19 @@ +Markup block - Gen - 51 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 51 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 48 - (2:0,2) + Tag block - Gen - 48 - (2:0,2) - input - InputTagHelper1 - InputTagHelper3 + SelfClosing - + unbound-required - Minimized + bound-required-string - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (50:0,50) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (50:0,50) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (51:0,51) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block17.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block17.diagnostics.txt new file mode 100644 index 0000000000..1f297c49c9 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block17.diagnostics.txt @@ -0,0 +1,2 @@ +(1,6): Error RZ2008: Attribute 'bound-int' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. +(1,16): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block17.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block17.syntaxtree.txt new file mode 100644 index 0000000000..4558f99cdd --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block17.syntaxtree.txt @@ -0,0 +1,19 @@ +Markup block - Gen - 33 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 33 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 30 - (2:0,2) + Tag block - Gen - 30 - (2:0,2) - p - PTagHelper + StartTagAndEndTag -

      ...

      + bound-int - Minimized + bound-string - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (32:0,32) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (32:0,32) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (33:0,33) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block18.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block18.diagnostics.txt new file mode 100644 index 0000000000..85acb7466e --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block18.diagnostics.txt @@ -0,0 +1,2 @@ +(1,10): Error RZ2008: Attribute 'bound-required-int' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. +(1,46): Error RZ2008: Attribute 'bound-required-string' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block18.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block18.syntaxtree.txt new file mode 100644 index 0000000000..aaa778b2b3 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block18.syntaxtree.txt @@ -0,0 +1,20 @@ +Markup block - Gen - 70 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 70 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 67 - (2:0,2) + Tag block - Gen - 67 - (2:0,2) - input - InputTagHelper1 - InputTagHelper2 - InputTagHelper3 + SelfClosing - + bound-required-int - Minimized + unbound-required - Minimized + bound-required-string - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (69:0,69) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (69:0,69) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (70:0,70) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block19.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block19.diagnostics.txt new file mode 100644 index 0000000000..40bd70e718 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block19.diagnostics.txt @@ -0,0 +1,3 @@ +(1,6): Error RZ2008: Attribute 'bound-int' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. +(1,16): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. +(1,29): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block19.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block19.syntaxtree.txt new file mode 100644 index 0000000000..f6ad4660a2 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block19.syntaxtree.txt @@ -0,0 +1,20 @@ +Markup block - Gen - 46 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 46 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 43 - (2:0,2) + Tag block - Gen - 43 - (2:0,2) - p - PTagHelper + StartTagAndEndTag -

      ...

      + bound-int - Minimized + bound-string - Minimized + bound-string - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (45:0,45) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (45:0,45) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (46:0,46) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block2.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block2.diagnostics.txt new file mode 100644 index 0000000000..7aaa747435 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block2.diagnostics.txt @@ -0,0 +1 @@ +(1,6): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block2.syntaxtree.txt new file mode 100644 index 0000000000..0fcb65e5cf --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block2.syntaxtree.txt @@ -0,0 +1,18 @@ +Markup block - Gen - 23 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 23 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 20 - (2:0,2) + Tag block - Gen - 20 - (2:0,2) - p - PTagHelper + StartTagAndEndTag -

      ...

      + bound-string - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (22:0,22) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (22:0,22) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (23:0,23) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block20.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block20.syntaxtree.txt new file mode 100644 index 0000000000..87ba3f5417 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block20.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 41 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 41 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 38 - (2:0,2) + Tag block - Gen - 38 - (2:0,2) - input - InputTagHelper1 - InputTagHelper3 + SelfClosing - + unbound-required - Minimized + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (33:0,33) - Symbols:1 + HtmlSymbolType.Text;[btn]; + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (40:0,40) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (40:0,40) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (41:0,41) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block21.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block21.diagnostics.txt new file mode 100644 index 0000000000..7aaa747435 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block21.diagnostics.txt @@ -0,0 +1 @@ +(1,6): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block21.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block21.syntaxtree.txt new file mode 100644 index 0000000000..e962144baa --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block21.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 35 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 35 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 32 - (2:0,2) + Tag block - Gen - 32 - (2:0,2) - p - PTagHelper + StartTagAndEndTag -

      ...

      + bound-string - Minimized + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (25:0,25) - Symbols:1 + HtmlSymbolType.Text;[btn]; + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (34:0,34) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (34:0,34) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (35:0,35) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block22.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block22.syntaxtree.txt new file mode 100644 index 0000000000..876ecfb277 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block22.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 41 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 41 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 38 - (2:0,2) + Tag block - Gen - 38 - (2:0,2) - input - InputTagHelper1 - InputTagHelper3 + SelfClosing - + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (16:0,16) - Symbols:1 + HtmlSymbolType.Text;[btn]; + unbound-required - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (40:0,40) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (40:0,40) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (41:0,41) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block23.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block23.diagnostics.txt new file mode 100644 index 0000000000..2e64b8d326 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block23.diagnostics.txt @@ -0,0 +1 @@ +(1,18): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block23.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block23.syntaxtree.txt new file mode 100644 index 0000000000..165aea0a76 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block23.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 35 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 35 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 32 - (2:0,2) + Tag block - Gen - 32 - (2:0,2) - p - PTagHelper + StartTagAndEndTag -

      ...

      + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (12:0,12) - Symbols:1 + HtmlSymbolType.Text;[btn]; + bound-string - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (34:0,34) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (34:0,34) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (35:0,35) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block24.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block24.diagnostics.txt new file mode 100644 index 0000000000..17ba3c5206 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block24.diagnostics.txt @@ -0,0 +1 @@ +(1,10): Error RZ2008: Attribute 'bound-required-string' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block24.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block24.syntaxtree.txt new file mode 100644 index 0000000000..ee4e5cda95 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block24.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 46 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 46 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 43 - (2:0,2) + Tag block - Gen - 43 - (2:0,2) - input - InputTagHelper1 - InputTagHelper3 + SelfClosing - + bound-required-string - Minimized + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (38:0,38) - Symbols:1 + HtmlSymbolType.Text;[btn]; + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (45:0,45) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (45:0,45) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (46:0,46) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block25.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block25.diagnostics.txt new file mode 100644 index 0000000000..4d52547683 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block25.diagnostics.txt @@ -0,0 +1 @@ +(1,22): Error RZ2008: Attribute 'bound-required-string' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block25.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block25.syntaxtree.txt new file mode 100644 index 0000000000..bf7fd27ee0 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block25.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 46 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 46 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 43 - (2:0,2) + Tag block - Gen - 43 - (2:0,2) - input - InputTagHelper1 - InputTagHelper3 + SelfClosing - + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (16:0,16) - Symbols:1 + HtmlSymbolType.Text;[btn]; + bound-required-string - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (45:0,45) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (45:0,45) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (46:0,46) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block26.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block26.diagnostics.txt new file mode 100644 index 0000000000..e49be8f23f --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block26.diagnostics.txt @@ -0,0 +1 @@ +(1,10): Error RZ2008: Attribute 'bound-required-int' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block26.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block26.syntaxtree.txt new file mode 100644 index 0000000000..abdaac733a --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block26.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 43 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 43 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 40 - (2:0,2) + Tag block - Gen - 40 - (2:0,2) - input - InputTagHelper2 - InputTagHelper3 + SelfClosing - + bound-required-int - Minimized + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (35:0,35) - Symbols:1 + HtmlSymbolType.Text;[btn]; + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (42:0,42) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (42:0,42) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (43:0,43) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block27.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block27.diagnostics.txt new file mode 100644 index 0000000000..d801de11d6 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block27.diagnostics.txt @@ -0,0 +1 @@ +(1,6): Error RZ2008: Attribute 'bound-int' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block27.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block27.syntaxtree.txt new file mode 100644 index 0000000000..70bce3044f --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block27.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 32 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 32 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 29 - (2:0,2) + Tag block - Gen - 29 - (2:0,2) - p - PTagHelper + StartTagAndEndTag -

      ...

      + bound-int - Minimized + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (22:0,22) - Symbols:1 + HtmlSymbolType.Text;[btn]; + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (31:0,31) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (31:0,31) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (32:0,32) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block28.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block28.diagnostics.txt new file mode 100644 index 0000000000..44cbbd120a --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block28.diagnostics.txt @@ -0,0 +1 @@ +(1,22): Error RZ2008: Attribute 'bound-required-int' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block28.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block28.syntaxtree.txt new file mode 100644 index 0000000000..313e9f9ae1 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block28.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 43 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 43 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 40 - (2:0,2) + Tag block - Gen - 40 - (2:0,2) - input - InputTagHelper2 - InputTagHelper3 + SelfClosing - + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (16:0,16) - Symbols:1 + HtmlSymbolType.Text;[btn]; + bound-required-int - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (42:0,42) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (42:0,42) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (43:0,43) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block29.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block29.diagnostics.txt new file mode 100644 index 0000000000..b0d4ba275b --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block29.diagnostics.txt @@ -0,0 +1 @@ +(1,18): Error RZ2008: Attribute 'bound-int' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block29.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block29.syntaxtree.txt new file mode 100644 index 0000000000..7a1d258ca8 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block29.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 32 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 32 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 29 - (2:0,2) + Tag block - Gen - 29 - (2:0,2) - p - PTagHelper + StartTagAndEndTag -

      ...

      + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (12:0,12) - Symbols:1 + HtmlSymbolType.Text;[btn]; + bound-int - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (31:0,31) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (31:0,31) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (32:0,32) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block3.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block3.diagnostics.txt new file mode 100644 index 0000000000..17ba3c5206 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block3.diagnostics.txt @@ -0,0 +1 @@ +(1,10): Error RZ2008: Attribute 'bound-required-string' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block3.syntaxtree.txt new file mode 100644 index 0000000000..261ab3ee82 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block3.syntaxtree.txt @@ -0,0 +1,18 @@ +Markup block - Gen - 34 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 34 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 31 - (2:0,2) + Tag block - Gen - 31 - (2:0,2) - input - InputTagHelper1 - InputTagHelper3 + SelfClosing - + bound-required-string - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (33:0,33) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (33:0,33) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (34:0,34) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block30.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block30.diagnostics.txt new file mode 100644 index 0000000000..f13ebc1193 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block30.diagnostics.txt @@ -0,0 +1 @@ +(1,36): Error RZ2008: Attribute 'bound-required-int' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block30.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block30.syntaxtree.txt new file mode 100644 index 0000000000..c02f60494a --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block30.syntaxtree.txt @@ -0,0 +1,34 @@ +Markup block - Gen - 57 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 57 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 54 - (2:0,2) + Tag block - Gen - 54 - (2:0,2) - input - InputTagHelper2 - InputTagHelper3 + SelfClosing - + class - SingleQuotes + Markup block - Gen - 17 - (16:0,16) + Markup block - Gen - 13 - (16:0,16) + Expression block - Gen - 13 - (16:0,16) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (16:0,16) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (17:0,17) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ +] - SpanEditHandler;Accepts:Any - (29:0,29) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[+]; + Markup span - Gen - [ 1] - SpanEditHandler;Accepts:Any - (31:0,31) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[1]; + bound-required-int - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (56:0,56) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (56:0,56) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (57:0,57) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block31.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block31.diagnostics.txt new file mode 100644 index 0000000000..df44096ccc --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block31.diagnostics.txt @@ -0,0 +1 @@ +(1,32): Error RZ2008: Attribute 'bound-int' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block31.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block31.syntaxtree.txt new file mode 100644 index 0000000000..19c9e777d8 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block31.syntaxtree.txt @@ -0,0 +1,34 @@ +Markup block - Gen - 46 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 46 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 43 - (2:0,2) + Tag block - Gen - 43 - (2:0,2) - p - PTagHelper + StartTagAndEndTag -

      ...

      + class - SingleQuotes + Markup block - Gen - 17 - (12:0,12) + Markup block - Gen - 13 - (12:0,12) + Expression block - Gen - 13 - (12:0,12) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (12:0,12) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (13:0,13) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ +] - SpanEditHandler;Accepts:Any - (25:0,25) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[+]; + Markup span - Gen - [ 1] - SpanEditHandler;Accepts:Any - (27:0,27) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[1]; + bound-int - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (45:0,45) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (45:0,45) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (46:0,46) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block32.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block32.diagnostics.txt new file mode 100644 index 0000000000..f7ecf89f20 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block32.diagnostics.txt @@ -0,0 +1,2 @@ +(1,13): Error RZ2008: Attribute 'bound-required-int' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. +(1,60): Error RZ2008: Attribute 'bound-required-string' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block32.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block32.syntaxtree.txt new file mode 100644 index 0000000000..0b7b3df7d5 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block32.syntaxtree.txt @@ -0,0 +1,52 @@ +Markup block - Gen - 129 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 129 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 126 - (2:0,2) + Tag block - Gen - 126 - (2:0,2) - input - InputTagHelper1 - InputTagHelper2 - InputTagHelper3 + SelfClosing - + bound-required-int - Minimized + class - SingleQuotes + Markup block - Gen - 17 - (38:0,38) + Markup block - Gen - 13 - (38:0,38) + Expression block - Gen - 13 - (38:0,38) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (38:0,38) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (39:0,39) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ +] - SpanEditHandler;Accepts:Any - (51:0,51) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[+]; + Markup span - Gen - [ 1] - SpanEditHandler;Accepts:Any - (53:0,53) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[1]; + bound-required-string - Minimized + class - SingleQuotes + Markup block - Gen - 17 - (88:0,88) + Markup block - Gen - 13 - (88:0,88) + Expression block - Gen - 13 - (88:0,88) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (88:0,88) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (89:0,89) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ +] - SpanEditHandler;Accepts:Any - (101:0,101) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[+]; + Markup span - Gen - [ 1] - SpanEditHandler;Accepts:Any - (103:0,103) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[1]; + unbound-required - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (128:0,128) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (128:0,128) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (129:0,129) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block33.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block33.diagnostics.txt new file mode 100644 index 0000000000..02bcf3e7fa --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block33.diagnostics.txt @@ -0,0 +1,3 @@ +(1,9): Error RZ2008: Attribute 'bound-int' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. +(1,47): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. +(1,87): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block33.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block33.syntaxtree.txt new file mode 100644 index 0000000000..047d0c4932 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block33.syntaxtree.txt @@ -0,0 +1,52 @@ +Markup block - Gen - 104 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 104 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 101 - (2:0,2) + Tag block - Gen - 101 - (2:0,2) - p - PTagHelper + StartTagAndEndTag -

      ...

      + bound-int - Minimized + class - SingleQuotes + Markup block - Gen - 17 - (25:0,25) + Markup block - Gen - 13 - (25:0,25) + Expression block - Gen - 13 - (25:0,25) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (25:0,25) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (26:0,26) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ +] - SpanEditHandler;Accepts:Any - (38:0,38) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[+]; + Markup span - Gen - [ 1] - SpanEditHandler;Accepts:Any - (40:0,40) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[1]; + bound-string - Minimized + class - SingleQuotes + Markup block - Gen - 17 - (66:0,66) + Markup block - Gen - 13 - (66:0,66) + Expression block - Gen - 13 - (66:0,66) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (66:0,66) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (67:0,67) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ +] - SpanEditHandler;Accepts:Any - (79:0,79) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[+]; + Markup span - Gen - [ 1] - SpanEditHandler;Accepts:Any - (81:0,81) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[1]; + bound-string - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (103:0,103) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (103:0,103) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (104:0,104) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block4.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block4.diagnostics.txt new file mode 100644 index 0000000000..e49be8f23f --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block4.diagnostics.txt @@ -0,0 +1 @@ +(1,10): Error RZ2008: Attribute 'bound-required-int' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block4.syntaxtree.txt new file mode 100644 index 0000000000..999531be78 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block4.syntaxtree.txt @@ -0,0 +1,18 @@ +Markup block - Gen - 31 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 31 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 28 - (2:0,2) + Tag block - Gen - 28 - (2:0,2) - input - InputTagHelper2 - InputTagHelper3 + SelfClosing - + bound-required-int - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (30:0,30) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (30:0,30) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (31:0,31) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block5.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block5.diagnostics.txt new file mode 100644 index 0000000000..d801de11d6 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block5.diagnostics.txt @@ -0,0 +1 @@ +(1,6): Error RZ2008: Attribute 'bound-int' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block5.syntaxtree.txt new file mode 100644 index 0000000000..c1f53b792e --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block5.syntaxtree.txt @@ -0,0 +1,18 @@ +Markup block - Gen - 20 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 20 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 17 - (2:0,2) + Tag block - Gen - 17 - (2:0,2) - p - PTagHelper + StartTagAndEndTag -

      ...

      + bound-int - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (19:0,19) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (19:0,19) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (20:0,20) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block6.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block6.diagnostics.txt new file mode 100644 index 0000000000..4ea65e9705 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block6.diagnostics.txt @@ -0,0 +1 @@ +(1,10): Error RZ2008: Attribute 'int-dictionary' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Collections.Generic.IDictionary' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block6.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block6.syntaxtree.txt new file mode 100644 index 0000000000..e045049aa9 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block6.syntaxtree.txt @@ -0,0 +1,18 @@ +Markup block - Gen - 26 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 26 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 23 - (2:0,2) + Tag block - Gen - 23 - (2:0,2) - input - InputTagHelper3 + SelfClosing - + int-dictionary - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (25:0,25) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (25:0,25) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (26:0,26) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block7.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block7.diagnostics.txt new file mode 100644 index 0000000000..c4f2e7af6d --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block7.diagnostics.txt @@ -0,0 +1 @@ +(1,10): Error RZ2008: Attribute 'string-dictionary' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Collections.Generic.IDictionary' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block7.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block7.syntaxtree.txt new file mode 100644 index 0000000000..566feebca8 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block7.syntaxtree.txt @@ -0,0 +1,18 @@ +Markup block - Gen - 30 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 30 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 27 - (2:0,2) + Tag block - Gen - 27 - (2:0,2) - input - InputTagHelper3 + SelfClosing - + string-dictionary - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (29:0,29) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (29:0,29) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (30:0,30) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block8.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block8.diagnostics.txt new file mode 100644 index 0000000000..132178a225 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block8.diagnostics.txt @@ -0,0 +1,2 @@ +(1,10): Error RZ2008: Attribute 'int-prefix-' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. +(1,10): Error RZ1029: The tag helper attribute 'int-prefix-' in element 'input' is missing a key. The syntax is ''. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block8.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block8.syntaxtree.txt new file mode 100644 index 0000000000..e56f0f0ce8 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block8.syntaxtree.txt @@ -0,0 +1,18 @@ +Markup block - Gen - 24 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 24 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 21 - (2:0,2) + Tag block - Gen - 21 - (2:0,2) - input - InputTagHelper3 + SelfClosing - + int-prefix- - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (23:0,23) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (23:0,23) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (24:0,24) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block9.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block9.diagnostics.txt new file mode 100644 index 0000000000..b9efc3a749 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block9.diagnostics.txt @@ -0,0 +1,2 @@ +(1,10): Error RZ2008: Attribute 'string-prefix-' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. +(1,10): Error RZ1029: The tag helper attribute 'string-prefix-' in element 'input' is missing a key. The syntax is ''. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block9.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block9.syntaxtree.txt new file mode 100644 index 0000000000..86ddeb40d9 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Block9.syntaxtree.txt @@ -0,0 +1,18 @@ +Markup block - Gen - 26 - (0:0,0) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Unknown;[]; + Statement block - Gen - 26 - (0:0,0) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (0:0,0) - Symbols:1 + CSharpSymbolType.Transition;[@]; + MetaCode span - Gen - [{] - SpanEditHandler;Accepts:None - (1:0,1) - Symbols:1 + CSharpSymbolType.LeftBrace;[{]; + Markup block - Gen - 23 - (2:0,2) + Tag block - Gen - 23 - (2:0,2) - input - InputTagHelper3 + SelfClosing - + string-prefix- - Minimized + Code span - Gen - [] - SpanEditHandler;Accepts:Any - (25:0,25) - Symbols:1 + CSharpSymbolType.Unknown;[]; + MetaCode span - Gen - [}] - SpanEditHandler;Accepts:None - (25:0,25) - Symbols:1 + CSharpSymbolType.RightBrace;[}]; + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (26:0,26) - Symbols:1 + HtmlSymbolType.Unknown;[]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document1.syntaxtree.txt new file mode 100644 index 0000000000..8a35bfa8f2 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document1.syntaxtree.txt @@ -0,0 +1,4 @@ +Markup block - Gen - 26 - (0:0,0) + Tag block - Gen - 26 - (0:0,0) - input - InputTagHelper1 - InputTagHelper3 + SelfClosing - + unbound-required - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document10.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document10.diagnostics.txt new file mode 100644 index 0000000000..f9aca6bc06 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document10.diagnostics.txt @@ -0,0 +1 @@ +(1,8): Error RZ2008: Attribute 'int-prefix-value' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document10.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document10.syntaxtree.txt new file mode 100644 index 0000000000..8c636ecf07 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document10.syntaxtree.txt @@ -0,0 +1,4 @@ +Markup block - Gen - 25 - (0:0,0) + Tag block - Gen - 25 - (0:0,0) - input - InputTagHelper3 + SelfClosing - + int-prefix-value - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document11.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document11.diagnostics.txt new file mode 100644 index 0000000000..34c821c786 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document11.diagnostics.txt @@ -0,0 +1 @@ +(1,8): Error RZ2008: Attribute 'string-prefix-value' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document11.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document11.syntaxtree.txt new file mode 100644 index 0000000000..f8f403ef11 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document11.syntaxtree.txt @@ -0,0 +1,4 @@ +Markup block - Gen - 29 - (0:0,0) + Tag block - Gen - 29 - (0:0,0) - input - InputTagHelper3 + SelfClosing - + string-prefix-value - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document12.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document12.diagnostics.txt new file mode 100644 index 0000000000..f9aca6bc06 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document12.diagnostics.txt @@ -0,0 +1 @@ +(1,8): Error RZ2008: Attribute 'int-prefix-value' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document12.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document12.syntaxtree.txt new file mode 100644 index 0000000000..e5a9fb8e25 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document12.syntaxtree.txt @@ -0,0 +1,5 @@ +Markup block - Gen - 29 - (0:0,0) + Tag block - Gen - 29 - (0:0,0) - input - InputTagHelper3 + SelfClosing - + int-prefix-value - SingleQuotes + Markup block - Gen - 0 - (0:0,0) diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document13.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document13.syntaxtree.txt new file mode 100644 index 0000000000..7f597a2b72 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document13.syntaxtree.txt @@ -0,0 +1,5 @@ +Markup block - Gen - 31 - (0:0,0) + Tag block - Gen - 31 - (0:0,0) - input - InputTagHelper3 + SelfClosing - + string-prefix-value - SingleQuotes + Markup block - Gen - 0 - (0:0,0) diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document14.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document14.syntaxtree.txt new file mode 100644 index 0000000000..e12bfb7168 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document14.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 29 - (0:0,0) + Tag block - Gen - 29 - (0:0,0) - input - InputTagHelper3 + SelfClosing - + int-prefix-value - SingleQuotes + Code span - Gen - [3] - ImplicitExpressionEditHandler;Accepts:AnyExceptNewline;ImplicitExpression[ATD];K14 - (25:0,25) - Symbols:1 + HtmlSymbolType.Text;[3]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document15.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document15.syntaxtree.txt new file mode 100644 index 0000000000..9cc34a82f2 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document15.syntaxtree.txt @@ -0,0 +1,10 @@ +Markup block - Gen - 43 - (0:0,0) + Tag block - Gen - 43 - (0:0,0) - input - InputTagHelper3 + SelfClosing - + string-prefix-value - SingleQuotes + Markup block - Gen - 11 - (28:0,28) + Markup span - Gen - [some] - SpanEditHandler;Accepts:Any - (28:0,28) - Symbols:1 + HtmlSymbolType.Text;[some]; + Markup span - Gen - [ string] - SpanEditHandler;Accepts:Any - (32:0,32) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[string]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document16.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document16.diagnostics.txt new file mode 100644 index 0000000000..f16231c79a --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document16.diagnostics.txt @@ -0,0 +1 @@ +(1,25): Error RZ2008: Attribute 'bound-required-string' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document16.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document16.syntaxtree.txt new file mode 100644 index 0000000000..670480e001 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document16.syntaxtree.txt @@ -0,0 +1,5 @@ +Markup block - Gen - 48 - (0:0,0) + Tag block - Gen - 48 - (0:0,0) - input - InputTagHelper1 - InputTagHelper3 + SelfClosing - + unbound-required - Minimized + bound-required-string - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document17.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document17.diagnostics.txt new file mode 100644 index 0000000000..a34289902a --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document17.diagnostics.txt @@ -0,0 +1,2 @@ +(1,4): Error RZ2008: Attribute 'bound-int' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. +(1,14): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document17.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document17.syntaxtree.txt new file mode 100644 index 0000000000..f2b82508fc --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document17.syntaxtree.txt @@ -0,0 +1,5 @@ +Markup block - Gen - 30 - (0:0,0) + Tag block - Gen - 30 - (0:0,0) - p - PTagHelper + StartTagAndEndTag -

      ...

      + bound-int - Minimized + bound-string - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document18.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document18.diagnostics.txt new file mode 100644 index 0000000000..b62a808863 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document18.diagnostics.txt @@ -0,0 +1,2 @@ +(1,8): Error RZ2008: Attribute 'bound-required-int' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. +(1,44): Error RZ2008: Attribute 'bound-required-string' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document18.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document18.syntaxtree.txt new file mode 100644 index 0000000000..100a7b3984 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document18.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 67 - (0:0,0) + Tag block - Gen - 67 - (0:0,0) - input - InputTagHelper1 - InputTagHelper2 - InputTagHelper3 + SelfClosing - + bound-required-int - Minimized + unbound-required - Minimized + bound-required-string - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document19.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document19.diagnostics.txt new file mode 100644 index 0000000000..2d5adeffaa --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document19.diagnostics.txt @@ -0,0 +1,3 @@ +(1,4): Error RZ2008: Attribute 'bound-int' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. +(1,14): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. +(1,27): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document19.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document19.syntaxtree.txt new file mode 100644 index 0000000000..a3c21fad15 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document19.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 43 - (0:0,0) + Tag block - Gen - 43 - (0:0,0) - p - PTagHelper + StartTagAndEndTag -

      ...

      + bound-int - Minimized + bound-string - Minimized + bound-string - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document2.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document2.diagnostics.txt new file mode 100644 index 0000000000..73d0ec9b72 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document2.diagnostics.txt @@ -0,0 +1 @@ +(1,4): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document2.syntaxtree.txt new file mode 100644 index 0000000000..43cbf94537 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document2.syntaxtree.txt @@ -0,0 +1,4 @@ +Markup block - Gen - 20 - (0:0,0) + Tag block - Gen - 20 - (0:0,0) - p - PTagHelper + StartTagAndEndTag -

      ...

      + bound-string - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document20.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document20.syntaxtree.txt new file mode 100644 index 0000000000..277bbe3ee4 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document20.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 38 - (0:0,0) + Tag block - Gen - 38 - (0:0,0) - input - InputTagHelper1 - InputTagHelper3 + SelfClosing - + unbound-required - Minimized + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (31:0,31) - Symbols:1 + HtmlSymbolType.Text;[btn]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document21.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document21.diagnostics.txt new file mode 100644 index 0000000000..73d0ec9b72 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document21.diagnostics.txt @@ -0,0 +1 @@ +(1,4): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document21.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document21.syntaxtree.txt new file mode 100644 index 0000000000..99d6bfd0f3 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document21.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 32 - (0:0,0) + Tag block - Gen - 32 - (0:0,0) - p - PTagHelper + StartTagAndEndTag -

      ...

      + bound-string - Minimized + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (23:0,23) - Symbols:1 + HtmlSymbolType.Text;[btn]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document22.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document22.syntaxtree.txt new file mode 100644 index 0000000000..ef8bb2ae91 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document22.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 38 - (0:0,0) + Tag block - Gen - 38 - (0:0,0) - input - InputTagHelper1 - InputTagHelper3 + SelfClosing - + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (14:0,14) - Symbols:1 + HtmlSymbolType.Text;[btn]; + unbound-required - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document23.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document23.diagnostics.txt new file mode 100644 index 0000000000..1379c04890 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document23.diagnostics.txt @@ -0,0 +1 @@ +(1,16): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document23.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document23.syntaxtree.txt new file mode 100644 index 0000000000..89c9928efc --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document23.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 32 - (0:0,0) + Tag block - Gen - 32 - (0:0,0) - p - PTagHelper + StartTagAndEndTag -

      ...

      + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (10:0,10) - Symbols:1 + HtmlSymbolType.Text;[btn]; + bound-string - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document24.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document24.diagnostics.txt new file mode 100644 index 0000000000..fa5bd9298e --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document24.diagnostics.txt @@ -0,0 +1 @@ +(1,8): Error RZ2008: Attribute 'bound-required-string' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document24.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document24.syntaxtree.txt new file mode 100644 index 0000000000..a5c5aa1057 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document24.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 43 - (0:0,0) + Tag block - Gen - 43 - (0:0,0) - input - InputTagHelper1 - InputTagHelper3 + SelfClosing - + bound-required-string - Minimized + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (36:0,36) - Symbols:1 + HtmlSymbolType.Text;[btn]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document25.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document25.diagnostics.txt new file mode 100644 index 0000000000..107ae7e349 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document25.diagnostics.txt @@ -0,0 +1 @@ +(1,20): Error RZ2008: Attribute 'bound-required-string' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document25.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document25.syntaxtree.txt new file mode 100644 index 0000000000..94aed53feb --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document25.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 43 - (0:0,0) + Tag block - Gen - 43 - (0:0,0) - input - InputTagHelper1 - InputTagHelper3 + SelfClosing - + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (14:0,14) - Symbols:1 + HtmlSymbolType.Text;[btn]; + bound-required-string - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document26.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document26.diagnostics.txt new file mode 100644 index 0000000000..7c6942351c --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document26.diagnostics.txt @@ -0,0 +1 @@ +(1,8): Error RZ2008: Attribute 'bound-required-int' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document26.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document26.syntaxtree.txt new file mode 100644 index 0000000000..42e5ad9487 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document26.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 40 - (0:0,0) + Tag block - Gen - 40 - (0:0,0) - input - InputTagHelper2 - InputTagHelper3 + SelfClosing - + bound-required-int - Minimized + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (33:0,33) - Symbols:1 + HtmlSymbolType.Text;[btn]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document27.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document27.diagnostics.txt new file mode 100644 index 0000000000..522de8be51 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document27.diagnostics.txt @@ -0,0 +1 @@ +(1,4): Error RZ2008: Attribute 'bound-int' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document27.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document27.syntaxtree.txt new file mode 100644 index 0000000000..325a5bc680 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document27.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 29 - (0:0,0) + Tag block - Gen - 29 - (0:0,0) - p - PTagHelper + StartTagAndEndTag -

      ...

      + bound-int - Minimized + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (20:0,20) - Symbols:1 + HtmlSymbolType.Text;[btn]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document28.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document28.diagnostics.txt new file mode 100644 index 0000000000..b147ff3b8e --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document28.diagnostics.txt @@ -0,0 +1 @@ +(1,20): Error RZ2008: Attribute 'bound-required-int' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document28.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document28.syntaxtree.txt new file mode 100644 index 0000000000..30389b76c9 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document28.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 40 - (0:0,0) + Tag block - Gen - 40 - (0:0,0) - input - InputTagHelper2 - InputTagHelper3 + SelfClosing - + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (14:0,14) - Symbols:1 + HtmlSymbolType.Text;[btn]; + bound-required-int - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document29.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document29.diagnostics.txt new file mode 100644 index 0000000000..070a2efcbf --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document29.diagnostics.txt @@ -0,0 +1 @@ +(1,16): Error RZ2008: Attribute 'bound-int' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document29.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document29.syntaxtree.txt new file mode 100644 index 0000000000..fcaea93b3e --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document29.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 29 - (0:0,0) + Tag block - Gen - 29 - (0:0,0) - p - PTagHelper + StartTagAndEndTag -

      ...

      + class - SingleQuotes + Markup span - Gen - [btn] - SpanEditHandler;Accepts:Any - (10:0,10) - Symbols:1 + HtmlSymbolType.Text;[btn]; + bound-int - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document3.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document3.diagnostics.txt new file mode 100644 index 0000000000..fa5bd9298e --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document3.diagnostics.txt @@ -0,0 +1 @@ +(1,8): Error RZ2008: Attribute 'bound-required-string' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document3.syntaxtree.txt new file mode 100644 index 0000000000..8603a024a5 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document3.syntaxtree.txt @@ -0,0 +1,4 @@ +Markup block - Gen - 31 - (0:0,0) + Tag block - Gen - 31 - (0:0,0) - input - InputTagHelper1 - InputTagHelper3 + SelfClosing - + bound-required-string - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document30.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document30.diagnostics.txt new file mode 100644 index 0000000000..35bf3d2029 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document30.diagnostics.txt @@ -0,0 +1 @@ +(1,34): Error RZ2008: Attribute 'bound-required-int' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document30.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document30.syntaxtree.txt new file mode 100644 index 0000000000..3f3d81136c --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document30.syntaxtree.txt @@ -0,0 +1,20 @@ +Markup block - Gen - 54 - (0:0,0) + Tag block - Gen - 54 - (0:0,0) - input - InputTagHelper2 - InputTagHelper3 + SelfClosing - + class - SingleQuotes + Markup block - Gen - 17 - (14:0,14) + Markup block - Gen - 13 - (14:0,14) + Expression block - Gen - 13 - (14:0,14) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (14:0,14) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (15:0,15) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ +] - SpanEditHandler;Accepts:Any - (27:0,27) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[+]; + Markup span - Gen - [ 1] - SpanEditHandler;Accepts:Any - (29:0,29) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[1]; + bound-required-int - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document31.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document31.diagnostics.txt new file mode 100644 index 0000000000..49aae9f038 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document31.diagnostics.txt @@ -0,0 +1 @@ +(1,30): Error RZ2008: Attribute 'bound-int' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document31.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document31.syntaxtree.txt new file mode 100644 index 0000000000..c74848db48 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document31.syntaxtree.txt @@ -0,0 +1,20 @@ +Markup block - Gen - 43 - (0:0,0) + Tag block - Gen - 43 - (0:0,0) - p - PTagHelper + StartTagAndEndTag -

      ...

      + class - SingleQuotes + Markup block - Gen - 17 - (10:0,10) + Markup block - Gen - 13 - (10:0,10) + Expression block - Gen - 13 - (10:0,10) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (10:0,10) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (11:0,11) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ +] - SpanEditHandler;Accepts:Any - (23:0,23) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[+]; + Markup span - Gen - [ 1] - SpanEditHandler;Accepts:Any - (25:0,25) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[1]; + bound-int - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document32.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document32.diagnostics.txt new file mode 100644 index 0000000000..87c50385f2 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document32.diagnostics.txt @@ -0,0 +1,2 @@ +(1,11): Error RZ2008: Attribute 'bound-required-int' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. +(1,58): Error RZ2008: Attribute 'bound-required-string' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document32.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document32.syntaxtree.txt new file mode 100644 index 0000000000..d44e0999be --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document32.syntaxtree.txt @@ -0,0 +1,38 @@ +Markup block - Gen - 126 - (0:0,0) + Tag block - Gen - 126 - (0:0,0) - input - InputTagHelper1 - InputTagHelper2 - InputTagHelper3 + SelfClosing - + bound-required-int - Minimized + class - SingleQuotes + Markup block - Gen - 17 - (36:0,36) + Markup block - Gen - 13 - (36:0,36) + Expression block - Gen - 13 - (36:0,36) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (36:0,36) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (37:0,37) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ +] - SpanEditHandler;Accepts:Any - (49:0,49) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[+]; + Markup span - Gen - [ 1] - SpanEditHandler;Accepts:Any - (51:0,51) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[1]; + bound-required-string - Minimized + class - SingleQuotes + Markup block - Gen - 17 - (86:0,86) + Markup block - Gen - 13 - (86:0,86) + Expression block - Gen - 13 - (86:0,86) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (86:0,86) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (87:0,87) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ +] - SpanEditHandler;Accepts:Any - (99:0,99) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[+]; + Markup span - Gen - [ 1] - SpanEditHandler;Accepts:Any - (101:0,101) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[1]; + unbound-required - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document33.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document33.diagnostics.txt new file mode 100644 index 0000000000..482a02baa0 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document33.diagnostics.txt @@ -0,0 +1,3 @@ +(1,7): Error RZ2008: Attribute 'bound-int' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. +(1,45): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. +(1,85): Error RZ2008: Attribute 'bound-string' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document33.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document33.syntaxtree.txt new file mode 100644 index 0000000000..199947a292 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document33.syntaxtree.txt @@ -0,0 +1,38 @@ +Markup block - Gen - 101 - (0:0,0) + Tag block - Gen - 101 - (0:0,0) - p - PTagHelper + StartTagAndEndTag -

      ...

      + bound-int - Minimized + class - SingleQuotes + Markup block - Gen - 17 - (23:0,23) + Markup block - Gen - 13 - (23:0,23) + Expression block - Gen - 13 - (23:0,23) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (23:0,23) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (24:0,24) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ +] - SpanEditHandler;Accepts:Any - (36:0,36) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[+]; + Markup span - Gen - [ 1] - SpanEditHandler;Accepts:Any - (38:0,38) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[1]; + bound-string - Minimized + class - SingleQuotes + Markup block - Gen - 17 - (64:0,64) + Markup block - Gen - 13 - (64:0,64) + Expression block - Gen - 13 - (64:0,64) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (64:0,64) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (65:0,65) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ +] - SpanEditHandler;Accepts:Any - (77:0,77) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[+]; + Markup span - Gen - [ 1] - SpanEditHandler;Accepts:Any - (79:0,79) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[1]; + bound-string - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document4.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document4.diagnostics.txt new file mode 100644 index 0000000000..7c6942351c --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document4.diagnostics.txt @@ -0,0 +1 @@ +(1,8): Error RZ2008: Attribute 'bound-required-int' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document4.syntaxtree.txt new file mode 100644 index 0000000000..fc50535f18 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document4.syntaxtree.txt @@ -0,0 +1,4 @@ +Markup block - Gen - 28 - (0:0,0) + Tag block - Gen - 28 - (0:0,0) - input - InputTagHelper2 - InputTagHelper3 + SelfClosing - + bound-required-int - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document5.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document5.diagnostics.txt new file mode 100644 index 0000000000..522de8be51 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document5.diagnostics.txt @@ -0,0 +1 @@ +(1,4): Error RZ2008: Attribute 'bound-int' on tag helper element 'p' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document5.syntaxtree.txt new file mode 100644 index 0000000000..1808af976c --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document5.syntaxtree.txt @@ -0,0 +1,4 @@ +Markup block - Gen - 17 - (0:0,0) + Tag block - Gen - 17 - (0:0,0) - p - PTagHelper + StartTagAndEndTag -

      ...

      + bound-int - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document6.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document6.diagnostics.txt new file mode 100644 index 0000000000..087db6b299 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document6.diagnostics.txt @@ -0,0 +1 @@ +(1,8): Error RZ2008: Attribute 'int-dictionary' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Collections.Generic.IDictionary' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document6.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document6.syntaxtree.txt new file mode 100644 index 0000000000..74632783f3 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document6.syntaxtree.txt @@ -0,0 +1,4 @@ +Markup block - Gen - 23 - (0:0,0) + Tag block - Gen - 23 - (0:0,0) - input - InputTagHelper3 + SelfClosing - + int-dictionary - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document7.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document7.diagnostics.txt new file mode 100644 index 0000000000..2d79facfa7 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document7.diagnostics.txt @@ -0,0 +1 @@ +(1,8): Error RZ2008: Attribute 'string-dictionary' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Collections.Generic.IDictionary' cannot be empty or contain only whitespace. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document7.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document7.syntaxtree.txt new file mode 100644 index 0000000000..938c61a112 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document7.syntaxtree.txt @@ -0,0 +1,4 @@ +Markup block - Gen - 27 - (0:0,0) + Tag block - Gen - 27 - (0:0,0) - input - InputTagHelper3 + SelfClosing - + string-dictionary - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document8.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document8.diagnostics.txt new file mode 100644 index 0000000000..0b5a932381 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document8.diagnostics.txt @@ -0,0 +1,2 @@ +(1,8): Error RZ2008: Attribute 'int-prefix-' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.Int32' cannot be empty or contain only whitespace. +(1,8): Error RZ1029: The tag helper attribute 'int-prefix-' in element 'input' is missing a key. The syntax is ''. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document8.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document8.syntaxtree.txt new file mode 100644 index 0000000000..766a4da8bc --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document8.syntaxtree.txt @@ -0,0 +1,4 @@ +Markup block - Gen - 21 - (0:0,0) + Tag block - Gen - 21 - (0:0,0) - input - InputTagHelper3 + SelfClosing - + int-prefix- - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document9.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document9.diagnostics.txt new file mode 100644 index 0000000000..6b9780fc87 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document9.diagnostics.txt @@ -0,0 +1,2 @@ +(1,8): Error RZ2008: Attribute 'string-prefix-' on tag helper element 'input' requires a value. Tag helper bound attributes of type 'System.String' cannot be empty or contain only whitespace. +(1,8): Error RZ1029: The tag helper attribute 'string-prefix-' in element 'input' is missing a key. The syntax is ''. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document9.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document9.syntaxtree.txt new file mode 100644 index 0000000000..65f176bb55 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_Document9.syntaxtree.txt @@ -0,0 +1,4 @@ +Markup block - Gen - 23 - (0:0,0) + Tag block - Gen - 23 - (0:0,0) - input - InputTagHelper3 + SelfClosing - + string-prefix- - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_PartialTags1.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_PartialTags1.diagnostics.txt new file mode 100644 index 0000000000..b90634a515 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_PartialTags1.diagnostics.txt @@ -0,0 +1,2 @@ +(1,2): Error RZ1035: Missing close angle for tag helper 'input'. +(1,2): Error RZ1034: Found a malformed 'input' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_PartialTags1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_PartialTags1.syntaxtree.txt new file mode 100644 index 0000000000..f19a3803ba --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/Rewrite_UnderstandsMinimizedAttributes_PartialTags1.syntaxtree.txt @@ -0,0 +1,4 @@ +Markup block - Gen - 23 - (0:0,0) + Tag block - Gen - 23 - (0:0,0) - input - InputTagHelper1 - InputTagHelper3 + StartTagAndEndTag - - 28 - (0:0,0) + Tag block - Gen - 28 - (0:0,0) - input - InputTagHelper1 - InputTagHelper3 + StartTagAndEndTag - - 25 - (0:0,0) + Tag block - Gen - 25 - (0:0,0) - input - InputTagHelper2 - InputTagHelper3 + StartTagAndEndTag - - 64 - (0:0,0) + Tag block - Gen - 64 - (0:0,0) - input - InputTagHelper1 - InputTagHelper2 - InputTagHelper3 + StartTagAndEndTag - - 15 - (0:0,0) + Tag block - Gen - 15 - (0:0,0) - p - PTagHelper + StartTagAndEndTag -

      - 12 - (0:0,0) + Tag block - Gen - 12 - (0:0,0) - p - PTagHelper + StartTagAndEndTag -

      - 25 - (0:0,0) + Tag block - Gen - 25 - (0:0,0) - p - PTagHelper + StartTagAndEndTag -

      - 89 - (0:0,0) + Tag block - Gen - 89 - (0:0,0) - input - InputTagHelper1 - InputTagHelper2 - InputTagHelper3 + StartTagAndEndTag - - 25 - (64:0,64) - p - PTagHelper + StartTagAndEndTag -

      - 37 - (0:0,0) + Tag block - Gen - 37 - (0:0,0) - input - InputTagHelper + SelfClosing - + boundbool - Minimized + boundbooldict-key - Minimized diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml1.syntaxtree.txt new file mode 100644 index 0000000000..6816a7e409 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml1.syntaxtree.txt @@ -0,0 +1,12 @@ +Markup block - Gen - 11 - (0:0,0) + Tag block - Gen - 1 - (0:0,0) + Markup span - Gen - [<] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.OpenAngle;[<]; + Tag block - Gen - 1 - (1:0,1) + Markup span - Gen - [<] - SpanEditHandler;Accepts:Any - (1:0,1) - Symbols:1 + HtmlSymbolType.OpenAngle;[<]; + Tag block - Gen - 9 - (2:0,2) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [>>] - SpanEditHandler;Accepts:Any - (5:0,5) - Symbols:2 + HtmlSymbolType.CloseAngle;[>]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml10.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml10.syntaxtree.txt new file mode 100644 index 0000000000..ea154fe3ec --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml10.syntaxtree.txt @@ -0,0 +1,32 @@ +Markup block - Gen - 42 - (0:0,0) + Tag block - Gen - 42 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Tag block - Gen - 17 - (3:0,3) + Markup span - Gen - [< ] - SpanEditHandler;Accepts:Any - (3:0,3) - Symbols:2 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (5:0,5) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (5:0,5) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (6:0,6) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ >] - SpanEditHandler;Accepts:Any - (18:0,18) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.CloseAngle;[>]; + Tag block - Gen - 3 - (20:0,20) + Markup span - Gen - [ - 13 - (23:0,23) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (23:0,23) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (24:0,24) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ >] - SpanEditHandler;Accepts:Any - (36:0,36) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml2.syntaxtree.txt new file mode 100644 index 0000000000..f57540066a --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml2.syntaxtree.txt @@ -0,0 +1,6 @@ +Markup block - Gen - 6 - (0:0,0) + Tag block - Gen - 1 - (0:0,0) + Markup span - Gen - [<] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.OpenAngle;[<]; + Tag block - Gen - 5 - (1:0,1) - p - ptaghelper + SelfClosing -

      diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml3.syntaxtree.txt new file mode 100644 index 0000000000..82694eaf99 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml3.syntaxtree.txt @@ -0,0 +1,12 @@ +Markup block - Gen - 6 - (0:0,0) + Tag block - Gen - 6 - (0:0,0) + Markup span - Gen - [<] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.OpenAngle;[<]; + Markup block - Gen - 2 - (1:0,1) + Markup span - Gen - [ p] - SpanEditHandler;Accepts:Any - (1:0,1) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[p]; + Markup span - Gen - [ />] - SpanEditHandler;Accepts:Any - (3:0,3) - Symbols:3 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml4.syntaxtree.txt new file mode 100644 index 0000000000..c9a7bdb437 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml4.syntaxtree.txt @@ -0,0 +1,8 @@ +Markup block - Gen - 12 - (0:0,0) + Tag block - Gen - 7 - (0:0,0) + Markup span - Gen - [ - 5 - (7:0,7) - p - ptaghelper + SelfClosing -

      diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml5.syntaxtree.txt new file mode 100644 index 0000000000..d9f8248404 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml5.syntaxtree.txt @@ -0,0 +1,18 @@ +Markup block - Gen - 19 - (0:0,0) + Tag block - Gen - 14 - (0:0,0) + Markup span - Gen - [<] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.OpenAngle;[<]; + Markup block - Gen - 12 - (1:0,1) + Markup span - Gen - [ class="] - SpanEditHandler;Accepts:Any - (1:0,1) - Symbols:4 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[class]; + HtmlSymbolType.Equals;[=]; + HtmlSymbolType.DoubleQuote;["]; + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (9:0,9) - Symbols:1 + HtmlSymbolType.Text;[foo]; + Markup span - Gen - ["] - SpanEditHandler;Accepts:Any - (12:0,12) - Symbols:1 + HtmlSymbolType.DoubleQuote;["]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (13:0,13) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 5 - (14:0,14) - p - ptaghelper + SelfClosing -

      diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml6.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml6.syntaxtree.txt new file mode 100644 index 0000000000..fa6bef8313 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml6.syntaxtree.txt @@ -0,0 +1,15 @@ +Markup block - Gen - 13 - (0:0,0) + Tag block - Gen - 2 - (0:0,0) + Markup span - Gen - [ - 1 - (2:0,2) + Markup span - Gen - [<] - SpanEditHandler;Accepts:Any - (2:0,2) - Symbols:1 + HtmlSymbolType.OpenAngle;[<]; + Tag block - Gen - 9 - (3:0,3) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [/>] - SpanEditHandler;Accepts:Any - (6:0,6) - Symbols:2 + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [>] - SpanEditHandler;Accepts:Any - (12:0,12) - Symbols:1 + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml7.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml7.syntaxtree.txt new file mode 100644 index 0000000000..1623a4f6db --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml7.syntaxtree.txt @@ -0,0 +1,20 @@ +Markup block - Gen - 21 - (0:0,0) + Tag block - Gen - 2 - (0:0,0) + Markup span - Gen - [ - 1 - (2:0,2) + Markup span - Gen - [<] - SpanEditHandler;Accepts:Any - (2:0,2) - Symbols:1 + HtmlSymbolType.OpenAngle;[<]; + Tag block - Gen - 17 - (3:0,3) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [/>] - SpanEditHandler;Accepts:Any - (6:0,6) - Symbols:2 + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.CloseAngle;[>]; + Tag block - Gen - 8 - (8:0,8) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (8:0,8) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [>] - SpanEditHandler;Accepts:Any - (20:0,20) - Symbols:1 + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml8.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml8.syntaxtree.txt new file mode 100644 index 0000000000..cdd286de92 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml8.syntaxtree.txt @@ -0,0 +1,27 @@ +Markup block - Gen - 34 - (0:0,0) + Tag block - Gen - 2 - (0:0,0) + Markup span - Gen - [ - 1 - (2:0,2) + Markup span - Gen - [<] - SpanEditHandler;Accepts:Any - (2:0,2) - Symbols:1 + HtmlSymbolType.OpenAngle;[<]; + Tag block - Gen - 30 - (3:0,3) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Expression block - Gen - 13 - (6:0,6) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (6:0,6) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (7:0,7) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [/>] - SpanEditHandler;Accepts:Any - (19:0,19) - Symbols:2 + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.CloseAngle;[>]; + Tag block - Gen - 8 - (21:0,21) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (21:0,21) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [>] - SpanEditHandler;Accepts:Any - (33:0,33) - Symbols:1 + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml9.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml9.syntaxtree.txt new file mode 100644 index 0000000000..ccc2c9fab0 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_AllowsInvalidHtml9.syntaxtree.txt @@ -0,0 +1,38 @@ +Markup block - Gen - 52 - (0:0,0) + Tag block - Gen - 4 - (0:0,0) + Markup span - Gen - [ - [/] - SpanEditHandler;Accepts:Any - (4:0,4) - Symbols:1 + HtmlSymbolType.ForwardSlash;[/]; + Tag block - Gen - 4 - (5:0,5) + Markup span - Gen - [< >] - SpanEditHandler;Accepts:Any - (5:0,5) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.CloseAngle;[>]; + Tag block - Gen - 32 - (9:0,9) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Expression block - Gen - 13 - (12:0,12) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (12:0,12) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (13:0,13) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ / >] - SpanEditHandler;Accepts:Any - (25:0,25) - Symbols:4 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.CloseAngle;[>]; + Tag block - Gen - 8 - (29:0,29) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (29:0,29) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; + Tag block - Gen - 11 - (41:0,41) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (41:0,41) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper1.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper1.diagnostics.txt new file mode 100644 index 0000000000..2578ab72e2 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper1.diagnostics.txt @@ -0,0 +1,2 @@ +(1,54): Error RZ1034: Found a malformed 'strong' tag helper. Tag helpers must have a start and end tag or be self closing. +(1,67): Error RZ1034: Found a malformed 'strong' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper1.syntaxtree.txt new file mode 100644 index 0000000000..ab1fb7096c --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper1.syntaxtree.txt @@ -0,0 +1,27 @@ +Markup block - Gen - 73 - (0:0,0) + Tag block - Gen - 64 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - NoQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (9:0,9) - Symbols:1 + HtmlSymbolType.Text;[foo]; + dynamic - DoubleQuotes + Markup block - Gen - 13 - (21:0,21) + Markup block - Gen - 13 - (21:0,21) + Expression block - Gen - 13 - (21:0,21) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (21:0,21) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (22:0,22) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + style - NoQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (41:0,41) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; + Tag block - Gen - 8 - (52:0,52) - strong - strongtaghelper + StartTagAndEndTag - + Tag block - Gen - 9 - (64:0,64) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (64:0,64) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper2.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper2.diagnostics.txt new file mode 100644 index 0000000000..b1d7d8700f --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper2.diagnostics.txt @@ -0,0 +1 @@ +(1,7): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper2.syntaxtree.txt new file mode 100644 index 0000000000..2d248c7670 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper2.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 42 - (0:0,0) + Tag block - Gen - 5 - (0:0,0) + Markup span - Gen - [
      ] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[div]; + HtmlSymbolType.CloseAngle;[>]; + Tag block - Gen - 37 - (5:0,5) - p - ptaghelper + StartTagAndEndTag -

      + Markup span - Gen - [Hello ] - SpanEditHandler;Accepts:Any - (8:0,8) - Symbols:2 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 22 - (14:0,14) - strong - strongtaghelper + StartTagAndEndTag - ... + Markup span - Gen - [World] - SpanEditHandler;Accepts:Any - (22:0,22) - Symbols:1 + HtmlSymbolType.Text;[World]; + Tag block - Gen - 6 - (36:0,36) + Markup span - Gen - [

      ] - SpanEditHandler;Accepts:Any - (36:0,36) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[div]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper3.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper3.diagnostics.txt new file mode 100644 index 0000000000..f0fb702841 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper3.diagnostics.txt @@ -0,0 +1,2 @@ +(1,7): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. +(1,16): Error RZ1034: Found a malformed 'strong' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper3.syntaxtree.txt new file mode 100644 index 0000000000..40cf5d9a70 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper3.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 33 - (0:0,0) + Tag block - Gen - 5 - (0:0,0) + Markup span - Gen - [
      ] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[div]; + HtmlSymbolType.CloseAngle;[>]; + Tag block - Gen - 28 - (5:0,5) - p - ptaghelper + StartTagAndEndTag -

      + Markup span - Gen - [Hello ] - SpanEditHandler;Accepts:Any - (8:0,8) - Symbols:2 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 19 - (14:0,14) - strong - strongtaghelper + StartTagAndEndTag - + Markup span - Gen - [World] - SpanEditHandler;Accepts:Any - (22:0,22) - Symbols:1 + HtmlSymbolType.Text;[World]; + Tag block - Gen - 6 - (27:0,27) + Markup span - Gen - [

      ] - SpanEditHandler;Accepts:Any - (27:0,27) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[div]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper4.diagnostics.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper4.diagnostics.txt new file mode 100644 index 0000000000..d177eb6df7 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper4.diagnostics.txt @@ -0,0 +1 @@ +(1,2): Error RZ1034: Found a malformed 'p' tag helper. Tag helpers must have a start and end tag or be self closing. diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper4.syntaxtree.txt new file mode 100644 index 0000000000..a69489234e --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_CreatesErrorForIncompleteTagHelper4.syntaxtree.txt @@ -0,0 +1,16 @@ +Markup block - Gen - 52 - (0:0,0) + Tag block - Gen - 52 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      + class - DoubleQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (10:0,10) - Symbols:1 + HtmlSymbolType.Text;[foo]; + Markup span - Gen - [Hello ] - SpanEditHandler;Accepts:Any - (15:0,15) - Symbols:2 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 31 - (21:0,21) - p - ptaghelper + StartTagAndEndTag -

      ...

      + style - DoubleQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (31:0,31) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; + Markup span - Gen - [World] - SpanEditHandler;Accepts:Any - (43:0,43) - Symbols:1 + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks1.syntaxtree.txt new file mode 100644 index 0000000000..09ea3dab21 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks1.syntaxtree.txt @@ -0,0 +1,23 @@ +Markup block - Gen - 51 - (0:0,0) + Tag block - Gen - 51 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup block - Gen - 13 - (10:0,10) + Markup block - Gen - 13 - (10:0,10) + Expression block - Gen - 13 - (10:0,10) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (10:0,10) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (11:0,11) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + style - SingleQuotes + Markup block - Gen - 13 - (32:0,32) + Markup block - Gen - 13 - (32:0,32) + Expression block - Gen - 13 - (32:0,32) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (32:0,32) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (33:0,33) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks2.syntaxtree.txt new file mode 100644 index 0000000000..eb37e795f3 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks2.syntaxtree.txt @@ -0,0 +1,105 @@ +Markup block - Gen - 153 - (0:0,0) + Tag block - Gen - 153 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup block - Gen - 64 - (10:0,10) + Markup block - Gen - 64 - (10:0,10) + Statement block - Gen - 64 - (10:0,10) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (10:0,10) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [do { var foo = bar; ] - SpanEditHandler;Accepts:Any - (11:0,11) - Symbols:13 + CSharpSymbolType.Keyword;[do]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftBrace;[{]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[var]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Assign;[=]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + Markup block - Gen - 16 - (31:0,31) + Tag block - Gen - 6 - (31:0,31) + Transition span - Gen - [] - SpanEditHandler;Accepts:None - (31:0,31) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[text]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [Foo] - SpanEditHandler;Accepts:None - (37:0,37) - Symbols:1 + HtmlSymbolType.Text;[Foo]; + Tag block - Gen - 7 - (40:0,40) + Transition span - Gen - [] - SpanEditHandler;Accepts:None - (40:0,40) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[text]; + HtmlSymbolType.CloseAngle;[>]; + Code span - Gen - [ foo++; } while (foo);] - SpanEditHandler;Accepts:None - (47:0,47) - Symbols:16 + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.Increment;[++]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.RightBrace;[}]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Keyword;[while]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftParenthesis;[(]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.LessThan;[<]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.GreaterThan;[>]; + CSharpSymbolType.RightParenthesis;[)]; + CSharpSymbolType.Semicolon;[;]; + style - SingleQuotes + Markup block - Gen - 64 - (83:0,83) + Markup block - Gen - 64 - (83:0,83) + Statement block - Gen - 64 - (83:0,83) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (83:0,83) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [do { var foo = bar; ] - SpanEditHandler;Accepts:Any - (84:0,84) - Symbols:13 + CSharpSymbolType.Keyword;[do]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftBrace;[{]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[var]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Assign;[=]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + Markup block - Gen - 16 - (104:0,104) + Tag block - Gen - 6 - (104:0,104) + Transition span - Gen - [] - SpanEditHandler;Accepts:None - (104:0,104) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[text]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [Foo] - SpanEditHandler;Accepts:None - (110:0,110) - Symbols:1 + HtmlSymbolType.Text;[Foo]; + Tag block - Gen - 7 - (113:0,113) + Transition span - Gen - [] - SpanEditHandler;Accepts:None - (113:0,113) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[text]; + HtmlSymbolType.CloseAngle;[>]; + Code span - Gen - [ foo++; } while (foo);] - SpanEditHandler;Accepts:None - (120:0,120) - Symbols:16 + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.Increment;[++]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.RightBrace;[}]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Keyword;[while]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftParenthesis;[(]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.LessThan;[<]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.GreaterThan;[>]; + CSharpSymbolType.RightParenthesis;[)]; + CSharpSymbolType.Semicolon;[;]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks3.syntaxtree.txt new file mode 100644 index 0000000000..7e233debd2 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks3.syntaxtree.txt @@ -0,0 +1,27 @@ +Markup block - Gen - 62 - (0:0,0) + Tag block - Gen - 62 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup block - Gen - 13 - (10:0,10) + Markup block - Gen - 13 - (10:0,10) + Expression block - Gen - 13 - (10:0,10) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (10:0,10) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (11:0,11) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + style - SingleQuotes + Markup block - Gen - 13 - (32:0,32) + Markup block - Gen - 13 - (32:0,32) + Expression block - Gen - 13 - (32:0,32) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (32:0,32) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (33:0,33) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [Hello World] - SpanEditHandler;Accepts:Any - (47:0,47) - Symbols:3 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks4.syntaxtree.txt new file mode 100644 index 0000000000..1cf82984b4 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks4.syntaxtree.txt @@ -0,0 +1,109 @@ +Markup block - Gen - 164 - (0:0,0) + Tag block - Gen - 164 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup block - Gen - 64 - (10:0,10) + Markup block - Gen - 64 - (10:0,10) + Statement block - Gen - 64 - (10:0,10) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (10:0,10) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [do { var foo = bar; ] - SpanEditHandler;Accepts:Any - (11:0,11) - Symbols:13 + CSharpSymbolType.Keyword;[do]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftBrace;[{]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[var]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Assign;[=]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + Markup block - Gen - 16 - (31:0,31) + Tag block - Gen - 6 - (31:0,31) + Transition span - Gen - [] - SpanEditHandler;Accepts:None - (31:0,31) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[text]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [Foo] - SpanEditHandler;Accepts:None - (37:0,37) - Symbols:1 + HtmlSymbolType.Text;[Foo]; + Tag block - Gen - 7 - (40:0,40) + Transition span - Gen - [] - SpanEditHandler;Accepts:None - (40:0,40) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[text]; + HtmlSymbolType.CloseAngle;[>]; + Code span - Gen - [ foo++; } while (foo);] - SpanEditHandler;Accepts:None - (47:0,47) - Symbols:16 + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.Increment;[++]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.RightBrace;[}]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Keyword;[while]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftParenthesis;[(]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.LessThan;[<]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.GreaterThan;[>]; + CSharpSymbolType.RightParenthesis;[)]; + CSharpSymbolType.Semicolon;[;]; + style - SingleQuotes + Markup block - Gen - 64 - (83:0,83) + Markup block - Gen - 64 - (83:0,83) + Statement block - Gen - 64 - (83:0,83) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (83:0,83) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [do { var foo = bar; ] - SpanEditHandler;Accepts:Any - (84:0,84) - Symbols:13 + CSharpSymbolType.Keyword;[do]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftBrace;[{]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[var]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Assign;[=]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + Markup block - Gen - 16 - (104:0,104) + Tag block - Gen - 6 - (104:0,104) + Transition span - Gen - [] - SpanEditHandler;Accepts:None - (104:0,104) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[text]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [Foo] - SpanEditHandler;Accepts:None - (110:0,110) - Symbols:1 + HtmlSymbolType.Text;[Foo]; + Tag block - Gen - 7 - (113:0,113) + Transition span - Gen - [] - SpanEditHandler;Accepts:None - (113:0,113) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[text]; + HtmlSymbolType.CloseAngle;[>]; + Code span - Gen - [ foo++; } while (foo);] - SpanEditHandler;Accepts:None - (120:0,120) - Symbols:16 + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.Increment;[++]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.RightBrace;[}]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Keyword;[while]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftParenthesis;[(]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.LessThan;[<]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.GreaterThan;[>]; + CSharpSymbolType.RightParenthesis;[)]; + CSharpSymbolType.Semicolon;[;]; + Markup span - Gen - [Hello World] - SpanEditHandler;Accepts:Any - (149:0,149) - Symbols:3 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks5.syntaxtree.txt new file mode 100644 index 0000000000..7997a99357 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks5.syntaxtree.txt @@ -0,0 +1,31 @@ +Markup block - Gen - 69 - (0:0,0) + Tag block - Gen - 34 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup block - Gen - 13 - (10:0,10) + Markup block - Gen - 13 - (10:0,10) + Expression block - Gen - 13 - (10:0,10) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (10:0,10) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (11:0,11) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [Hello] - SpanEditHandler;Accepts:Any - (25:0,25) - Symbols:1 + HtmlSymbolType.Text;[Hello]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (34:0,34) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 34 - (35:0,35) - p - ptaghelper + StartTagAndEndTag -

      ...

      + style - SingleQuotes + Markup block - Gen - 13 - (45:0,45) + Markup block - Gen - 13 - (45:0,45) + Expression block - Gen - 13 - (45:0,45) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (45:0,45) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (46:0,46) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [World] - SpanEditHandler;Accepts:Any - (60:0,60) - Symbols:1 + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks6.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks6.syntaxtree.txt new file mode 100644 index 0000000000..cd026c692a --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks6.syntaxtree.txt @@ -0,0 +1,113 @@ +Markup block - Gen - 171 - (0:0,0) + Tag block - Gen - 85 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup block - Gen - 64 - (10:0,10) + Markup block - Gen - 64 - (10:0,10) + Statement block - Gen - 64 - (10:0,10) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (10:0,10) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [do { var foo = bar; ] - SpanEditHandler;Accepts:Any - (11:0,11) - Symbols:13 + CSharpSymbolType.Keyword;[do]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftBrace;[{]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[var]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Assign;[=]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + Markup block - Gen - 16 - (31:0,31) + Tag block - Gen - 6 - (31:0,31) + Transition span - Gen - [] - SpanEditHandler;Accepts:None - (31:0,31) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[text]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [Foo] - SpanEditHandler;Accepts:None - (37:0,37) - Symbols:1 + HtmlSymbolType.Text;[Foo]; + Tag block - Gen - 7 - (40:0,40) + Transition span - Gen - [] - SpanEditHandler;Accepts:None - (40:0,40) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[text]; + HtmlSymbolType.CloseAngle;[>]; + Code span - Gen - [ foo++; } while (foo);] - SpanEditHandler;Accepts:None - (47:0,47) - Symbols:16 + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.Increment;[++]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.RightBrace;[}]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Keyword;[while]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftParenthesis;[(]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.LessThan;[<]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.GreaterThan;[>]; + CSharpSymbolType.RightParenthesis;[)]; + CSharpSymbolType.Semicolon;[;]; + Markup span - Gen - [Hello] - SpanEditHandler;Accepts:Any - (76:0,76) - Symbols:1 + HtmlSymbolType.Text;[Hello]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (85:0,85) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 85 - (86:0,86) - p - ptaghelper + StartTagAndEndTag -

      ...

      + style - SingleQuotes + Markup block - Gen - 64 - (96:0,96) + Markup block - Gen - 64 - (96:0,96) + Statement block - Gen - 64 - (96:0,96) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (96:0,96) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [do { var foo = bar; ] - SpanEditHandler;Accepts:Any - (97:0,97) - Symbols:13 + CSharpSymbolType.Keyword;[do]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftBrace;[{]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[var]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Assign;[=]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + Markup block - Gen - 16 - (117:0,117) + Tag block - Gen - 6 - (117:0,117) + Transition span - Gen - [] - SpanEditHandler;Accepts:None - (117:0,117) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[text]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [Foo] - SpanEditHandler;Accepts:None - (123:0,123) - Symbols:1 + HtmlSymbolType.Text;[Foo]; + Tag block - Gen - 7 - (126:0,126) + Transition span - Gen - [] - SpanEditHandler;Accepts:None - (126:0,126) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[text]; + HtmlSymbolType.CloseAngle;[>]; + Code span - Gen - [ foo++; } while (foo);] - SpanEditHandler;Accepts:None - (133:0,133) - Symbols:16 + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.Increment;[++]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.RightBrace;[}]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Keyword;[while]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftParenthesis;[(]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.LessThan;[<]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.GreaterThan;[>]; + CSharpSymbolType.RightParenthesis;[)]; + CSharpSymbolType.Semicolon;[;]; + Markup span - Gen - [World] - SpanEditHandler;Accepts:Any - (162:0,162) - Symbols:1 + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks7.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks7.syntaxtree.txt new file mode 100644 index 0000000000..702bbd8899 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexAttributeTagHelperTagBlocks7.syntaxtree.txt @@ -0,0 +1,64 @@ +Markup block - Gen - 122 - (0:0,0) + Tag block - Gen - 122 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup block - Gen - 13 - (10:0,10) + Markup block - Gen - 13 - (10:0,10) + Expression block - Gen - 13 - (10:0,10) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (10:0,10) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (11:0,11) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + style - SingleQuotes + Markup block - Gen - 13 - (32:0,32) + Markup block - Gen - 13 - (32:0,32) + Expression block - Gen - 13 - (32:0,32) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (32:0,32) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (33:0,33) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [Hello World ] - SpanEditHandler;Accepts:Any - (47:0,47) - Symbols:4 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 30 - (59:0,59) + Markup span - Gen - [ - 22 - (66:0,66) + Markup span - Gen - [ class="] - SpanEditHandler;Accepts:Any - (66:0,66) - Symbols:4 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[class]; + HtmlSymbolType.Equals;[=]; + HtmlSymbolType.DoubleQuote;["]; + Markup block - Gen - 13 - (74:0,74) + Expression block - Gen - 13 - (74:0,74) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (74:0,74) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (75:0,75) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - ["] - SpanEditHandler;Accepts:Any - (87:0,87) - Symbols:1 + HtmlSymbolType.DoubleQuote;["]; + Markup span - Gen - [>] - SpanEditHandler;Accepts:Any - (88:0,88) - Symbols:1 + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [inside of strong tag] - SpanEditHandler;Accepts:Any - (89:0,89) - Symbols:7 + HtmlSymbolType.Text;[inside]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[of]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[tag]; + Tag block - Gen - 9 - (109:0,109) + Markup span - Gen - [
      ] - SpanEditHandler;Accepts:Any - (109:0,109) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks1.syntaxtree.txt new file mode 100644 index 0000000000..be556ca4dd --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks1.syntaxtree.txt @@ -0,0 +1,10 @@ +Markup block - Gen - 20 - (0:0,0) + Tag block - Gen - 20 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Expression block - Gen - 13 - (3:0,3) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (3:0,3) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (4:0,4) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks2.syntaxtree.txt new file mode 100644 index 0000000000..11a2d5e5e5 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks2.syntaxtree.txt @@ -0,0 +1,44 @@ +Markup block - Gen - 65 - (0:0,0) + Tag block - Gen - 65 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Statement block - Gen - 58 - (3:0,3) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (3:0,3) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [do { var foo = bar;] - SpanEditHandler;Accepts:Any - (4:0,4) - Symbols:12 + CSharpSymbolType.Keyword;[do]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftBrace;[{]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[var]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Assign;[=]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.Semicolon;[;]; + Markup block - Gen - 12 - (23:0,23) + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (23:0,23) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 10 - (24:0,24) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Foo] - SpanEditHandler;Accepts:Any - (27:0,27) - Symbols:1 + HtmlSymbolType.Text;[Foo]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:None - (34:0,34) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Code span - Gen - [foo++; } while (foo);] - SpanEditHandler;Accepts:None - (35:0,35) - Symbols:15 + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.Increment;[++]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.RightBrace;[}]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Keyword;[while]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftParenthesis;[(]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.LessThan;[<]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.GreaterThan;[>]; + CSharpSymbolType.RightParenthesis;[)]; + CSharpSymbolType.Semicolon;[;]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks3.syntaxtree.txt new file mode 100644 index 0000000000..6dd4ca4740 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks3.syntaxtree.txt @@ -0,0 +1,15 @@ +Markup block - Gen - 32 - (0:0,0) + Tag block - Gen - 32 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Hello World ] - SpanEditHandler;Accepts:Any - (3:0,3) - Symbols:4 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (15:0,15) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (15:0,15) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (16:0,16) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks4.syntaxtree.txt new file mode 100644 index 0000000000..eb74a67708 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks4.syntaxtree.txt @@ -0,0 +1,49 @@ +Markup block - Gen - 77 - (0:0,0) + Tag block - Gen - 77 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Hello World ] - SpanEditHandler;Accepts:Any - (3:0,3) - Symbols:4 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; + HtmlSymbolType.WhiteSpace;[ ]; + Statement block - Gen - 58 - (15:0,15) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (15:0,15) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [do { var foo = bar;] - SpanEditHandler;Accepts:Any - (16:0,16) - Symbols:12 + CSharpSymbolType.Keyword;[do]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftBrace;[{]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[var]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Assign;[=]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.Semicolon;[;]; + Markup block - Gen - 12 - (35:0,35) + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (35:0,35) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 10 - (36:0,36) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Foo] - SpanEditHandler;Accepts:Any - (39:0,39) - Symbols:1 + HtmlSymbolType.Text;[Foo]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:None - (46:0,46) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Code span - Gen - [foo++; } while (foo);] - SpanEditHandler;Accepts:None - (47:0,47) - Symbols:15 + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.Increment;[++]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.RightBrace;[}]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Keyword;[while]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftParenthesis;[(]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.LessThan;[<]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.GreaterThan;[>]; + CSharpSymbolType.RightParenthesis;[)]; + CSharpSymbolType.Semicolon;[;]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks5.syntaxtree.txt new file mode 100644 index 0000000000..ea411ae65f --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks5.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 41 - (0:0,0) + Tag block - Gen - 20 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Expression block - Gen - 13 - (3:0,3) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (3:0,3) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (4:0,4) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (20:0,20) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 20 - (21:0,21) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Expression block - Gen - 13 - (24:0,24) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (24:0,24) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (25:0,25) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks6.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks6.syntaxtree.txt new file mode 100644 index 0000000000..19254e3a10 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks6.syntaxtree.txt @@ -0,0 +1,89 @@ +Markup block - Gen - 131 - (0:0,0) + Tag block - Gen - 65 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Statement block - Gen - 58 - (3:0,3) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (3:0,3) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [do { var foo = bar;] - SpanEditHandler;Accepts:Any - (4:0,4) - Symbols:12 + CSharpSymbolType.Keyword;[do]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftBrace;[{]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[var]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Assign;[=]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.Semicolon;[;]; + Markup block - Gen - 12 - (23:0,23) + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (23:0,23) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 10 - (24:0,24) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Foo] - SpanEditHandler;Accepts:Any - (27:0,27) - Symbols:1 + HtmlSymbolType.Text;[Foo]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:None - (34:0,34) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Code span - Gen - [foo++; } while (foo);] - SpanEditHandler;Accepts:None - (35:0,35) - Symbols:15 + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.Increment;[++]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.RightBrace;[}]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Keyword;[while]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftParenthesis;[(]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.LessThan;[<]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.GreaterThan;[>]; + CSharpSymbolType.RightParenthesis;[)]; + CSharpSymbolType.Semicolon;[;]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (65:0,65) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 65 - (66:0,66) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Statement block - Gen - 58 - (69:0,69) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (69:0,69) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [do { var foo = bar;] - SpanEditHandler;Accepts:Any - (70:0,70) - Symbols:12 + CSharpSymbolType.Keyword;[do]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftBrace;[{]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[var]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Assign;[=]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.Semicolon;[;]; + Markup block - Gen - 12 - (89:0,89) + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (89:0,89) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 10 - (90:0,90) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Foo] - SpanEditHandler;Accepts:Any - (93:0,93) - Symbols:1 + HtmlSymbolType.Text;[Foo]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:None - (100:0,100) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Code span - Gen - [foo++; } while (foo);] - SpanEditHandler;Accepts:None - (101:0,101) - Symbols:15 + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.Increment;[++]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.RightBrace;[}]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Keyword;[while]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftParenthesis;[(]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.LessThan;[<]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.GreaterThan;[>]; + CSharpSymbolType.RightParenthesis;[)]; + CSharpSymbolType.Semicolon;[;]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks7.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks7.syntaxtree.txt new file mode 100644 index 0000000000..959b12b5bb --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks7.syntaxtree.txt @@ -0,0 +1,41 @@ +Markup block - Gen - 77 - (0:0,0) + Tag block - Gen - 77 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Hello ] - SpanEditHandler;Accepts:Any - (3:0,3) - Symbols:2 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (9:0,9) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (9:0,9) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (10:0,10) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Tag block - Gen - 8 - (22:0,22) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (22:0,22) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [inside of ] - SpanEditHandler;Accepts:Any - (30:0,30) - Symbols:4 + HtmlSymbolType.Text;[inside]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[of]; + HtmlSymbolType.WhiteSpace;[ ]; + Expression block - Gen - 13 - (40:0,40) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (40:0,40) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (41:0,41) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [ strong tag] - SpanEditHandler;Accepts:Any - (53:0,53) - Symbols:4 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[tag]; + Tag block - Gen - 9 - (64:0,64) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (64:0,64) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks8.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks8.syntaxtree.txt new file mode 100644 index 0000000000..9b219af237 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesComplexTagHelperTagBlocks8.syntaxtree.txt @@ -0,0 +1,109 @@ +Markup block - Gen - 167 - (0:0,0) + Tag block - Gen - 167 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Hello ] - SpanEditHandler;Accepts:Any - (3:0,3) - Symbols:2 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + Statement block - Gen - 58 - (9:0,9) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (9:0,9) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [do { var foo = bar;] - SpanEditHandler;Accepts:Any - (10:0,10) - Symbols:12 + CSharpSymbolType.Keyword;[do]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftBrace;[{]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[var]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Assign;[=]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.Semicolon;[;]; + Markup block - Gen - 12 - (29:0,29) + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (29:0,29) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 10 - (30:0,30) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Foo] - SpanEditHandler;Accepts:Any - (33:0,33) - Symbols:1 + HtmlSymbolType.Text;[Foo]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:None - (40:0,40) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Code span - Gen - [foo++; } while (foo);] - SpanEditHandler;Accepts:None - (41:0,41) - Symbols:15 + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.Increment;[++]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.RightBrace;[}]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Keyword;[while]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftParenthesis;[(]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.LessThan;[<]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.GreaterThan;[>]; + CSharpSymbolType.RightParenthesis;[)]; + CSharpSymbolType.Semicolon;[;]; + Tag block - Gen - 8 - (67:0,67) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (67:0,67) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [inside of ] - SpanEditHandler;Accepts:Any - (75:0,75) - Symbols:4 + HtmlSymbolType.Text;[inside]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[of]; + HtmlSymbolType.WhiteSpace;[ ]; + Statement block - Gen - 58 - (85:0,85) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (85:0,85) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [do { var foo = bar;] - SpanEditHandler;Accepts:Any - (86:0,86) - Symbols:12 + CSharpSymbolType.Keyword;[do]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftBrace;[{]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[var]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Assign;[=]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.Semicolon;[;]; + Markup block - Gen - 12 - (105:0,105) + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (105:0,105) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 10 - (106:0,106) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Foo] - SpanEditHandler;Accepts:Any - (109:0,109) - Symbols:1 + HtmlSymbolType.Text;[Foo]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:None - (116:0,116) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Code span - Gen - [foo++; } while (foo);] - SpanEditHandler;Accepts:None - (117:0,117) - Symbols:15 + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.Increment;[++]; + CSharpSymbolType.Semicolon;[;]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.RightBrace;[}]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.Keyword;[while]; + CSharpSymbolType.WhiteSpace;[ ]; + CSharpSymbolType.LeftParenthesis;[(]; + CSharpSymbolType.Identifier;[foo]; + CSharpSymbolType.LessThan;[<]; + CSharpSymbolType.Identifier;[bar]; + CSharpSymbolType.GreaterThan;[>]; + CSharpSymbolType.RightParenthesis;[)]; + CSharpSymbolType.Semicolon;[;]; + Markup span - Gen - [ strong tag] - SpanEditHandler;Accepts:Any - (143:0,143) - Symbols:4 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[tag]; + Tag block - Gen - 9 - (154:0,154) + Markup span - Gen - [
      ] - SpanEditHandler;Accepts:Any - (154:0,154) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesOddlySpacedTagHelperTagBlocks1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesOddlySpacedTagHelperTagBlocks1.syntaxtree.txt new file mode 100644 index 0000000000..707ae0602f --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesOddlySpacedTagHelperTagBlocks1.syntaxtree.txt @@ -0,0 +1,23 @@ +Markup block - Gen - 66 - (0:0,0) + Tag block - Gen - 66 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup span - Gen - [ foo] - SpanEditHandler;Accepts:Any - (15:0,15) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[foo]; + style - DoubleQuotes + Markup block - Gen - 21 - (35:0,35) + Markup span - Gen - [ color] - SpanEditHandler;Accepts:Any - (35:0,35) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[color]; + Markup span - Gen - [ :] - SpanEditHandler;Accepts:Any - (43:0,43) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[:]; + Markup span - Gen - [ red] - SpanEditHandler;Accepts:Any - (45:0,45) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[red]; + Markup span - Gen - [ ;] - SpanEditHandler;Accepts:Any - (50:0,50) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[;]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (53:0,53) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesOddlySpacedTagHelperTagBlocks2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesOddlySpacedTagHelperTagBlocks2.syntaxtree.txt new file mode 100644 index 0000000000..ead813f687 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesOddlySpacedTagHelperTagBlocks2.syntaxtree.txt @@ -0,0 +1,27 @@ +Markup block - Gen - 77 - (0:0,0) + Tag block - Gen - 77 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup span - Gen - [ foo] - SpanEditHandler;Accepts:Any - (15:0,15) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[foo]; + style - DoubleQuotes + Markup block - Gen - 21 - (35:0,35) + Markup span - Gen - [ color] - SpanEditHandler;Accepts:Any - (35:0,35) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[color]; + Markup span - Gen - [ :] - SpanEditHandler;Accepts:Any - (43:0,43) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[:]; + Markup span - Gen - [ red] - SpanEditHandler;Accepts:Any - (45:0,45) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[red]; + Markup span - Gen - [ ;] - SpanEditHandler;Accepts:Any - (50:0,50) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[;]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (53:0,53) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Markup span - Gen - [Hello World] - SpanEditHandler;Accepts:Any - (62:0,62) - Symbols:3 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesOddlySpacedTagHelperTagBlocks3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesOddlySpacedTagHelperTagBlocks3.syntaxtree.txt new file mode 100644 index 0000000000..b04d34433b --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesOddlySpacedTagHelperTagBlocks3.syntaxtree.txt @@ -0,0 +1,25 @@ +Markup block - Gen - 73 - (0:0,0) + Tag block - Gen - 34 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup block - Gen - 8 - (14:0,14) + Markup span - Gen - [ foo] - SpanEditHandler;Accepts:Any - (14:0,14) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[foo]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (20:0,20) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Markup span - Gen - [Hello] - SpanEditHandler;Accepts:Any - (25:0,25) - Symbols:1 + HtmlSymbolType.Text;[Hello]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (34:0,34) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 38 - (35:0,35) - p - ptaghelper + StartTagAndEndTag -

      ...

      + style - DoubleQuotes + Markup block - Gen - 13 - (48:0,48) + Markup span - Gen - [ color:red;] - SpanEditHandler;Accepts:Any - (48:0,48) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[color:red;]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (60:0,60) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Markup span - Gen - [World] - SpanEditHandler;Accepts:Any - (64:0,64) - Symbols:1 + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks1.syntaxtree.txt new file mode 100644 index 0000000000..6e1b6c4d21 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks1.syntaxtree.txt @@ -0,0 +1,3 @@ +Markup block - Gen - 7 - (0:0,0) + Tag block - Gen - 7 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks2.syntaxtree.txt new file mode 100644 index 0000000000..a9eb727cb5 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks2.syntaxtree.txt @@ -0,0 +1,7 @@ +Markup block - Gen - 18 - (0:0,0) + Tag block - Gen - 18 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Hello World] - SpanEditHandler;Accepts:Any - (3:0,3) - Symbols:3 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks3.syntaxtree.txt new file mode 100644 index 0000000000..493da9ec35 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks3.syntaxtree.txt @@ -0,0 +1,11 @@ +Markup block - Gen - 25 - (0:0,0) + Tag block - Gen - 12 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Hello] - SpanEditHandler;Accepts:Any - (3:0,3) - Symbols:1 + HtmlSymbolType.Text;[Hello]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (12:0,12) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 12 - (13:0,13) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [World] - SpanEditHandler;Accepts:Any - (16:0,16) - Symbols:1 + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks4.syntaxtree.txt new file mode 100644 index 0000000000..26e2e665fd --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesPlainTagHelperTagBlocks4.syntaxtree.txt @@ -0,0 +1,27 @@ +Markup block - Gen - 56 - (0:0,0) + Tag block - Gen - 56 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Hello World ] - SpanEditHandler;Accepts:Any - (3:0,3) - Symbols:4 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 8 - (15:0,15) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (15:0,15) - Symbols:3 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [inside of strong tag] - SpanEditHandler;Accepts:Any - (23:0,23) - Symbols:7 + HtmlSymbolType.Text;[inside]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[of]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[tag]; + Tag block - Gen - 9 - (43:0,43) + Markup span - Gen - [] - SpanEditHandler;Accepts:Any - (43:0,43) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers1.syntaxtree.txt new file mode 100644 index 0000000000..064d8931ab --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers1.syntaxtree.txt @@ -0,0 +1,11 @@ +Markup block - Gen - 31 - (0:0,0) + Tag block - Gen - 31 - (0:0,0) - script - scripttaghelper + StartTagAndEndTag - + Markup span - Gen - [ + Markup span - Gen - [Hello World
      ] - SpanEditHandler;Accepts:Any - (8:0,8) - Symbols:11 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[div]; + HtmlSymbolType.CloseAngle;[>]; + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[div]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers3.syntaxtree.txt new file mode 100644 index 0000000000..517705f0ff --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers3.syntaxtree.txt @@ -0,0 +1,21 @@ +Markup block - Gen - 53 - (0:0,0) + Tag block - Gen - 29 - (0:0,0) - script - scripttaghelper + StartTagAndEndTag - + Markup span - Gen - [Hel

      lo

      ] - SpanEditHandler;Accepts:Any - (8:0,8) - Symbols:9 + HtmlSymbolType.Text;[Hel]; + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[p]; + HtmlSymbolType.CloseAngle;[>]; + HtmlSymbolType.Text;[lo]; + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[p]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (29:0,29) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 23 - (30:0,30) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Tag block - Gen - 16 - (33:0,33) - div - divtaghelper + StartTagAndEndTag -
      ...
      + Markup span - Gen - [World] - SpanEditHandler;Accepts:Any - (38:0,38) - Symbols:1 + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers4.syntaxtree.txt new file mode 100644 index 0000000000..e07247a5a9 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers4.syntaxtree.txt @@ -0,0 +1,26 @@ +Markup block - Gen - 75 - (0:0,0) + Tag block - Gen - 39 - (0:0,0) - script - scripttaghelper + StartTagAndEndTag - + Markup span - Gen - [Hello] - SpanEditHandler;Accepts:Any - (8:0,8) - Symbols:9 + HtmlSymbolType.Text;[Hel]; + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; + HtmlSymbolType.Text;[lo]; + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (39:0,39) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 35 - (40:0,40) - script - scripttaghelper + StartTagAndEndTag - + Markup span - Gen - [World] - SpanEditHandler;Accepts:Any - (48:0,48) - Symbols:8 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.Text;[span]; + HtmlSymbolType.CloseAngle;[>]; + HtmlSymbolType.Text;[World]; + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[span]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers5.syntaxtree.txt new file mode 100644 index 0000000000..4754a33438 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers5.syntaxtree.txt @@ -0,0 +1,9 @@ +Markup block - Gen - 41 - (0:0,0) + Tag block - Gen - 41 - (0:0,0) - script - scripttaghelper + SelfClosing - + class - DoubleQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (24:0,24) - Symbols:1 + HtmlSymbolType.Text;[foo]; + style - DoubleQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (36:0,36) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; + Markup span - Gen - [ World] - SpanEditHandler;Accepts:Any - (57:0,57) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers7.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers7.syntaxtree.txt new file mode 100644 index 0000000000..2904bc4115 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesScriptTagHelpers7.syntaxtree.txt @@ -0,0 +1,23 @@ +Markup block - Gen - 77 - (0:0,0) + Tag block - Gen - 77 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Hello ] - SpanEditHandler;Accepts:Any - (3:0,3) - Symbols:2 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 58 - (9:0,9) - script - scripttaghelper + StartTagAndEndTag - + class - DoubleQuotes + Markup block - Gen - 13 - (24:0,24) + Markup block - Gen - 2 - (24:0,24) + Markup span - Gen - [@] - SpanEditHandler;Accepts:None - (24:0,24) - Symbols:1 + HtmlSymbolType.Transition;[@]; + Markup span - Gen - [@] - SpanEditHandler;Accepts:None - (25:0,25) - Symbols:1 + HtmlSymbolType.Transition;[@]; + Markup span - Gen - [foo@bar.com] - SpanEditHandler;Accepts:Any - (26:0,26) - Symbols:1 + HtmlSymbolType.Text;[foo@bar.com]; + style - DoubleQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (46:0,46) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; + Markup span - Gen - [ World] - SpanEditHandler;Accepts:Any - (67:0,67) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesSelfClosingTagHelpers1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesSelfClosingTagHelpers1.syntaxtree.txt new file mode 100644 index 0000000000..c3e6fe3fe4 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesSelfClosingTagHelpers1.syntaxtree.txt @@ -0,0 +1,9 @@ +Markup block - Gen - 36 - (0:0,0) + Tag block - Gen - 36 - (0:0,0) - p - ptaghelper + SelfClosing -

      + class - DoubleQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (10:0,10) - Symbols:1 + HtmlSymbolType.Text;[foo]; + style - DoubleQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (22:0,22) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesSelfClosingTagHelpers2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesSelfClosingTagHelpers2.syntaxtree.txt new file mode 100644 index 0000000000..e7cfb5e271 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesSelfClosingTagHelpers2.syntaxtree.txt @@ -0,0 +1,17 @@ +Markup block - Gen - 55 - (0:0,0) + Tag block - Gen - 55 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + Markup span - Gen - [Hello ] - SpanEditHandler;Accepts:Any - (3:0,3) - Symbols:2 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 36 - (9:0,9) - p - ptaghelper + SelfClosing -

      + class - DoubleQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (19:0,19) - Symbols:1 + HtmlSymbolType.Text;[foo]; + style - DoubleQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (31:0,31) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; + Markup span - Gen - [ World] - SpanEditHandler;Accepts:Any - (45:0,45) - Symbols:2 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesSelfClosingTagHelpers3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesSelfClosingTagHelpers3.syntaxtree.txt new file mode 100644 index 0000000000..87e78572b3 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesSelfClosingTagHelpers3.syntaxtree.txt @@ -0,0 +1,17 @@ +Markup block - Gen - 52 - (0:0,0) + Markup span - Gen - [Hello] - SpanEditHandler;Accepts:Any - (0:0,0) - Symbols:1 + HtmlSymbolType.Text;[Hello]; + Tag block - Gen - 17 - (5:0,5) - p - ptaghelper + SelfClosing -

      + class - DoubleQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (15:0,15) - Symbols:1 + HtmlSymbolType.Text;[foo]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (22:0,22) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 24 - (23:0,23) - p - ptaghelper + SelfClosing -

      + style - DoubleQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (33:0,33) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; + Markup span - Gen - [World] - SpanEditHandler;Accepts:Any - (47:0,47) - Symbols:1 + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes1.syntaxtree.txt new file mode 100644 index 0000000000..25f1eea709 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes1.syntaxtree.txt @@ -0,0 +1,9 @@ +Markup block - Gen - 38 - (0:0,0) + Tag block - Gen - 38 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (10:0,10) - Symbols:1 + HtmlSymbolType.Text;[foo]; + style - DoubleQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (22:0,22) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes2.syntaxtree.txt new file mode 100644 index 0000000000..40d107a6bd --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes2.syntaxtree.txt @@ -0,0 +1,13 @@ +Markup block - Gen - 49 - (0:0,0) + Tag block - Gen - 49 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (10:0,10) - Symbols:1 + HtmlSymbolType.Text;[foo]; + style - DoubleQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (22:0,22) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; + Markup span - Gen - [Hello World] - SpanEditHandler;Accepts:Any - (34:0,34) - Symbols:3 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes3.syntaxtree.txt new file mode 100644 index 0000000000..ac73b92277 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes3.syntaxtree.txt @@ -0,0 +1,17 @@ +Markup block - Gen - 56 - (0:0,0) + Tag block - Gen - 24 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (10:0,10) - Symbols:1 + HtmlSymbolType.Text;[foo]; + Markup span - Gen - [Hello] - SpanEditHandler;Accepts:Any - (15:0,15) - Symbols:1 + HtmlSymbolType.Text;[Hello]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (24:0,24) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 31 - (25:0,25) - p - ptaghelper + StartTagAndEndTag -

      ...

      + style - DoubleQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (35:0,35) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; + Markup span - Gen - [World] - SpanEditHandler;Accepts:Any - (47:0,47) - Symbols:1 + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes4.syntaxtree.txt new file mode 100644 index 0000000000..5e05aaaed3 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithPlainAttributes4.syntaxtree.txt @@ -0,0 +1,44 @@ +Markup block - Gen - 99 - (0:0,0) + Tag block - Gen - 99 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - DoubleQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (10:0,10) - Symbols:1 + HtmlSymbolType.Text;[foo]; + style - DoubleQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (22:0,22) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; + Markup span - Gen - [Hello World ] - SpanEditHandler;Accepts:Any - (34:0,34) - Symbols:4 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 20 - (46:0,46) + Markup span - Gen - [ - 12 - (53:0,53) + Markup span - Gen - [ class="] - SpanEditHandler;Accepts:Any - (53:0,53) - Symbols:4 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[class]; + HtmlSymbolType.Equals;[=]; + HtmlSymbolType.DoubleQuote;["]; + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (61:0,61) - Symbols:1 + HtmlSymbolType.Text;[foo]; + Markup span - Gen - ["] - SpanEditHandler;Accepts:Any - (64:0,64) - Symbols:1 + HtmlSymbolType.DoubleQuote;["]; + Markup span - Gen - [>] - SpanEditHandler;Accepts:Any - (65:0,65) - Symbols:1 + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [inside of strong tag] - SpanEditHandler;Accepts:Any - (66:0,66) - Symbols:7 + HtmlSymbolType.Text;[inside]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[of]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[tag]; + Tag block - Gen - 9 - (86:0,86) + Markup span - Gen - [
      ] - SpanEditHandler;Accepts:Any - (86:0,86) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes1.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes1.syntaxtree.txt new file mode 100644 index 0000000000..f5aef40da4 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes1.syntaxtree.txt @@ -0,0 +1,19 @@ +Markup block - Gen - 56 - (0:0,0) + Tag block - Gen - 56 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - NoQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (9:0,9) - Symbols:1 + HtmlSymbolType.Text;[foo]; + dynamic - DoubleQuotes + Markup block - Gen - 13 - (21:0,21) + Markup block - Gen - 13 - (21:0,21) + Expression block - Gen - 13 - (21:0,21) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (21:0,21) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (22:0,22) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + style - NoQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (41:0,41) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes2.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes2.syntaxtree.txt new file mode 100644 index 0000000000..8a950fc71f --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes2.syntaxtree.txt @@ -0,0 +1,23 @@ +Markup block - Gen - 67 - (0:0,0) + Tag block - Gen - 67 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - NoQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (9:0,9) - Symbols:1 + HtmlSymbolType.Text;[foo]; + dynamic - DoubleQuotes + Markup block - Gen - 13 - (21:0,21) + Markup block - Gen - 13 - (21:0,21) + Expression block - Gen - 13 - (21:0,21) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (21:0,21) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (22:0,22) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + style - NoQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (41:0,41) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; + Markup span - Gen - [Hello World] - SpanEditHandler;Accepts:Any - (52:0,52) - Symbols:3 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes3.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes3.syntaxtree.txt new file mode 100644 index 0000000000..9e8fa9e59f --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes3.syntaxtree.txt @@ -0,0 +1,31 @@ +Markup block - Gen - 69 - (0:0,0) + Tag block - Gen - 69 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - NoQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (9:0,9) - Symbols:1 + HtmlSymbolType.Text;[foo]; + dynamic - DoubleQuotes + Markup block - Gen - 13 - (21:0,21) + Markup block - Gen - 13 - (21:0,21) + Expression block - Gen - 13 - (21:0,21) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (21:0,21) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (22:0,22) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + style - DoubleQuotes + Markup block - Gen - 12 - (41:0,41) + Markup span - Gen - [color] - SpanEditHandler;Accepts:Any - (41:0,41) - Symbols:1 + HtmlSymbolType.Text;[color]; + Markup block - Gen - 2 - (46:0,46) + Markup span - Gen - [@] - SpanEditHandler;Accepts:None - (46:0,46) - Symbols:1 + HtmlSymbolType.Transition;[@]; + Markup span - Gen - [@] - SpanEditHandler;Accepts:None - (47:0,47) - Symbols:1 + HtmlSymbolType.Transition;[@]; + Markup span - Gen - [:red;] - SpanEditHandler;Accepts:Any - (48:0,48) - Symbols:1 + HtmlSymbolType.Text;[:red;]; + Markup span - Gen - [Hello World] - SpanEditHandler;Accepts:Any - (54:0,54) - Symbols:3 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes4.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes4.syntaxtree.txt new file mode 100644 index 0000000000..16269b60b7 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes4.syntaxtree.txt @@ -0,0 +1,37 @@ +Markup block - Gen - 96 - (0:0,0) + Tag block - Gen - 44 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - NoQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (9:0,9) - Symbols:1 + HtmlSymbolType.Text;[foo]; + dynamic - DoubleQuotes + Markup block - Gen - 13 - (21:0,21) + Markup block - Gen - 13 - (21:0,21) + Expression block - Gen - 13 - (21:0,21) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (21:0,21) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (22:0,22) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [Hello] - SpanEditHandler;Accepts:Any - (35:0,35) - Symbols:1 + HtmlSymbolType.Text;[Hello]; + Markup span - Gen - [ ] - SpanEditHandler;Accepts:Any - (44:0,44) - Symbols:1 + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 51 - (45:0,45) - p - ptaghelper + StartTagAndEndTag -

      ...

      + style - NoQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (54:0,54) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; + dynamic - DoubleQuotes + Markup block - Gen - 13 - (73:0,73) + Markup block - Gen - 13 - (73:0,73) + Expression block - Gen - 13 - (73:0,73) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (73:0,73) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (74:0,74) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + Markup span - Gen - [World] - SpanEditHandler;Accepts:Any - (87:0,87) - Symbols:1 + HtmlSymbolType.Text;[World]; diff --git a/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes5.syntaxtree.txt b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes5.syntaxtree.txt new file mode 100644 index 0000000000..2c93c45ee2 --- /dev/null +++ b/test/Microsoft.AspNetCore.Razor.Language.Test/TestFiles/ParserTests/TagHelperBlockRewriterTest/TagHelperParseTreeRewriter_RewritesTagHelpersWithQuotelessAttributes5.syntaxtree.txt @@ -0,0 +1,54 @@ +Markup block - Gen - 117 - (0:0,0) + Tag block - Gen - 117 - (0:0,0) - p - ptaghelper + StartTagAndEndTag -

      ...

      + class - NoQuotes + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (9:0,9) - Symbols:1 + HtmlSymbolType.Text;[foo]; + dynamic - DoubleQuotes + Markup block - Gen - 13 - (21:0,21) + Markup block - Gen - 13 - (21:0,21) + Expression block - Gen - 13 - (21:0,21) + Transition span - Gen - [@] - SpanEditHandler;Accepts:None - (21:0,21) - Symbols:1 + CSharpSymbolType.Transition;[@]; + Code span - Gen - [DateTime.Now] - ImplicitExpressionEditHandler;Accepts:NonWhiteSpace;ImplicitExpression[RTD];K14 - (22:0,22) - Symbols:3 + CSharpSymbolType.Identifier;[DateTime]; + CSharpSymbolType.Dot;[.]; + CSharpSymbolType.Identifier;[Now]; + style - NoQuotes + Markup span - Gen - [color:red;] - SpanEditHandler;Accepts:Any - (41:0,41) - Symbols:1 + HtmlSymbolType.Text;[color:red;]; + Markup span - Gen - [Hello World ] - SpanEditHandler;Accepts:Any - (52:0,52) - Symbols:4 + HtmlSymbolType.Text;[Hello]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[World]; + HtmlSymbolType.WhiteSpace;[ ]; + Tag block - Gen - 20 - (64:0,64) + Markup span - Gen - [ - 12 - (71:0,71) + Markup span - Gen - [ class="] - SpanEditHandler;Accepts:Any - (71:0,71) - Symbols:4 + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[class]; + HtmlSymbolType.Equals;[=]; + HtmlSymbolType.DoubleQuote;["]; + Markup span - Gen - [foo] - SpanEditHandler;Accepts:Any - (79:0,79) - Symbols:1 + HtmlSymbolType.Text;[foo]; + Markup span - Gen - ["] - SpanEditHandler;Accepts:Any - (82:0,82) - Symbols:1 + HtmlSymbolType.DoubleQuote;["]; + Markup span - Gen - [>] - SpanEditHandler;Accepts:Any - (83:0,83) - Symbols:1 + HtmlSymbolType.CloseAngle;[>]; + Markup span - Gen - [inside of strong tag] - SpanEditHandler;Accepts:Any - (84:0,84) - Symbols:7 + HtmlSymbolType.Text;[inside]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[of]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.WhiteSpace;[ ]; + HtmlSymbolType.Text;[tag]; + Tag block - Gen - 9 - (104:0,104) + Markup span - Gen - [
      ] - SpanEditHandler;Accepts:Any - (104:0,104) - Symbols:4 + HtmlSymbolType.OpenAngle;[<]; + HtmlSymbolType.ForwardSlash;[/]; + HtmlSymbolType.Text;[strong]; + HtmlSymbolType.CloseAngle;[>];