Address a round of nits

- clean up trailing curly braces (Java style)
 - affected lots of files touched for #89 fix
- a couple of trailing whitespace removals
This commit is contained in:
Doug Bunting 2015-05-19 17:21:06 -07:00
parent 47577fd936
commit 0e296283f9
7 changed files with 268 additions and 136 deletions

View File

@ -252,12 +252,14 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
nameof(OverriddenAttributeTagHelper.ValidAttribute1)); nameof(OverriddenAttributeTagHelper.ValidAttribute1));
var validProperty2 = typeof(OverriddenAttributeTagHelper).GetProperty( var validProperty2 = typeof(OverriddenAttributeTagHelper).GetProperty(
nameof(OverriddenAttributeTagHelper.ValidAttribute2)); nameof(OverriddenAttributeTagHelper.ValidAttribute2));
var expectedDescriptors = new[] { var expectedDescriptors = new[]
{
new TagHelperDescriptor( new TagHelperDescriptor(
"overridden-attribute", "overridden-attribute",
typeof(OverriddenAttributeTagHelper).FullName, typeof(OverriddenAttributeTagHelper).FullName,
AssemblyName, AssemblyName,
new[] { new[]
{
new TagHelperAttributeDescriptor("SomethingElse", validProperty1), new TagHelperAttributeDescriptor("SomethingElse", validProperty1),
new TagHelperAttributeDescriptor("Something-Else", validProperty2) new TagHelperAttributeDescriptor("Something-Else", validProperty2)
}) })
@ -283,12 +285,14 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
nameof(InheritedOverriddenAttributeTagHelper.ValidAttribute1)); nameof(InheritedOverriddenAttributeTagHelper.ValidAttribute1));
var validProperty2 = typeof(InheritedOverriddenAttributeTagHelper).GetProperty( var validProperty2 = typeof(InheritedOverriddenAttributeTagHelper).GetProperty(
nameof(InheritedOverriddenAttributeTagHelper.ValidAttribute2)); nameof(InheritedOverriddenAttributeTagHelper.ValidAttribute2));
var expectedDescriptors = new[] { var expectedDescriptors = new[]
{
new TagHelperDescriptor( new TagHelperDescriptor(
"inherited-overridden-attribute", "inherited-overridden-attribute",
typeof(InheritedOverriddenAttributeTagHelper).FullName, typeof(InheritedOverriddenAttributeTagHelper).FullName,
AssemblyName, AssemblyName,
new[] { new[]
{
new TagHelperAttributeDescriptor("valid-attribute1", validProperty1), new TagHelperAttributeDescriptor("valid-attribute1", validProperty1),
new TagHelperAttributeDescriptor("Something-Else", validProperty2) new TagHelperAttributeDescriptor("Something-Else", validProperty2)
}) })
@ -314,12 +318,14 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
nameof(InheritedNotOverriddenAttributeTagHelper.ValidAttribute1)); nameof(InheritedNotOverriddenAttributeTagHelper.ValidAttribute1));
var validProperty2 = typeof(InheritedNotOverriddenAttributeTagHelper).GetProperty( var validProperty2 = typeof(InheritedNotOverriddenAttributeTagHelper).GetProperty(
nameof(InheritedNotOverriddenAttributeTagHelper.ValidAttribute2)); nameof(InheritedNotOverriddenAttributeTagHelper.ValidAttribute2));
var expectedDescriptors = new[] { var expectedDescriptors = new[]
{
new TagHelperDescriptor( new TagHelperDescriptor(
"inherited-not-overridden-attribute", "inherited-not-overridden-attribute",
typeof(InheritedNotOverriddenAttributeTagHelper).FullName, typeof(InheritedNotOverriddenAttributeTagHelper).FullName,
AssemblyName, AssemblyName,
new[] { new[]
{
new TagHelperAttributeDescriptor("SomethingElse", validProperty1), new TagHelperAttributeDescriptor("SomethingElse", validProperty1),
new TagHelperAttributeDescriptor("Something-Else", validProperty2) new TagHelperAttributeDescriptor("Something-Else", validProperty2)
}) })
@ -368,7 +374,8 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
"inherited-single-attribute", "inherited-single-attribute",
typeof(InheritedSingleAttributeTagHelper).FullName, typeof(InheritedSingleAttributeTagHelper).FullName,
AssemblyName, AssemblyName,
new[] { new[]
{
new TagHelperAttributeDescriptor( new TagHelperAttributeDescriptor(
"int-attribute", "int-attribute",
nameof(InheritedSingleAttributeTagHelper.IntAttribute), nameof(InheritedSingleAttributeTagHelper.IntAttribute),
@ -398,7 +405,8 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
"single-attribute", "single-attribute",
typeof(SingleAttributeTagHelper).FullName, typeof(SingleAttributeTagHelper).FullName,
AssemblyName, AssemblyName,
new[] { new[]
{
new TagHelperAttributeDescriptor("int-attribute", intProperty) new TagHelperAttributeDescriptor("int-attribute", intProperty)
}); });
@ -425,7 +433,8 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
"missing-accessor", "missing-accessor",
typeof(MissingAccessorTagHelper).FullName, typeof(MissingAccessorTagHelper).FullName,
AssemblyName, AssemblyName,
new[] { new[]
{
new TagHelperAttributeDescriptor("valid-attribute", validProperty) new TagHelperAttributeDescriptor("valid-attribute", validProperty)
}); });
@ -452,7 +461,8 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
"non-public-accessor", "non-public-accessor",
typeof(NonPublicAccessorTagHelper).FullName, typeof(NonPublicAccessorTagHelper).FullName,
AssemblyName, AssemblyName,
new[] { new[]
{
new TagHelperAttributeDescriptor("valid-attribute", validProperty) new TagHelperAttributeDescriptor("valid-attribute", validProperty)
}); });
@ -524,12 +534,14 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
var errorSink = new ErrorSink(); var errorSink = new ErrorSink();
// Also confirm isStringProperty is calculated correctly. // Also confirm isStringProperty is calculated correctly.
var expectedDescriptors = new[] { var expectedDescriptors = new[]
{
new TagHelperDescriptor( new TagHelperDescriptor(
"div", "div",
typeof(MultiTagTagHelper).FullName, typeof(MultiTagTagHelper).FullName,
AssemblyName, AssemblyName,
new[] { new[]
{
new TagHelperAttributeDescriptor( new TagHelperAttributeDescriptor(
"valid-attribute", "valid-attribute",
nameof(MultiTagTagHelper.ValidAttribute), nameof(MultiTagTagHelper.ValidAttribute),
@ -540,7 +552,8 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
"p", "p",
typeof(MultiTagTagHelper).FullName, typeof(MultiTagTagHelper).FullName,
AssemblyName, AssemblyName,
new[] { new[]
{
new TagHelperAttributeDescriptor( new TagHelperAttributeDescriptor(
"valid-attribute", "valid-attribute",
nameof(MultiTagTagHelper.ValidAttribute), nameof(MultiTagTagHelper.ValidAttribute),
@ -575,7 +588,8 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
"inherited-multi-tag", "inherited-multi-tag",
typeof(InheritedMultiTagTagHelper).FullName, typeof(InheritedMultiTagTagHelper).FullName,
AssemblyName, AssemblyName,
new[] { new[]
{
new TagHelperAttributeDescriptor("valid-attribute", validProp) new TagHelperAttributeDescriptor("valid-attribute", validProp)
}); });
@ -596,7 +610,8 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
{ {
// Arrange // Arrange
var errorSink = new ErrorSink(); var errorSink = new ErrorSink();
var expectedDescriptors = new[] { var expectedDescriptors = new[]
{
new TagHelperDescriptor( new TagHelperDescriptor(
"div", "div",
typeof(DuplicateTagNameTagHelper).FullName, typeof(DuplicateTagNameTagHelper).FullName,
@ -628,7 +643,8 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
{ {
// Arrange // Arrange
var errorSink = new ErrorSink(); var errorSink = new ErrorSink();
var expectedDescriptors = new[] { var expectedDescriptors = new[]
{
new TagHelperDescriptor("data-condition", new TagHelperDescriptor("data-condition",
typeof(OverrideNameTagHelper).FullName, typeof(OverrideNameTagHelper).FullName,
AssemblyName), AssemblyName),
@ -691,7 +707,8 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
{ "he/lo", new[] { onNameError("he/lo", "/") } }, { "he/lo", new[] { onNameError("he/lo", "/") } },
{ {
"/he/lo/", "/he/lo/",
new[] { new[]
{
onNameError("/he/lo/", "/"), onNameError("/he/lo/", "/"),
onNameError("/he/lo/", "/"), onNameError("/he/lo/", "/"),
onNameError("/he/lo/", "/") onNameError("/he/lo/", "/")
@ -934,7 +951,8 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
{ {
typeof(InvalidBoundAttribute), typeof(InvalidBoundAttribute),
Enumerable.Empty<TagHelperAttributeDescriptor>(), Enumerable.Empty<TagHelperAttributeDescriptor>(),
new[] { new[]
{
string.Format( string.Format(
errorFormat, errorFormat,
nameof(InvalidBoundAttribute.DataSomething), nameof(InvalidBoundAttribute.DataSomething),
@ -943,13 +961,15 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
}, },
{ {
typeof(InvalidBoundAttributeWithValid), typeof(InvalidBoundAttributeWithValid),
new[] { new[]
{
new TagHelperAttributeDescriptor( new TagHelperAttributeDescriptor(
"int-attribute", "int-attribute",
typeof(InvalidBoundAttributeWithValid) typeof(InvalidBoundAttributeWithValid)
.GetProperty(nameof(InvalidBoundAttributeWithValid.IntAttribute))) .GetProperty(nameof(InvalidBoundAttributeWithValid.IntAttribute)))
}, },
new[] { new[]
{
string.Format( string.Format(
errorFormat, errorFormat,
nameof(InvalidBoundAttributeWithValid.DataSomething), nameof(InvalidBoundAttributeWithValid.DataSomething),
@ -958,7 +978,8 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
}, },
{ {
typeof(OverriddenInvalidBoundAttributeWithValid), typeof(OverriddenInvalidBoundAttributeWithValid),
new[] { new[]
{
new TagHelperAttributeDescriptor( new TagHelperAttributeDescriptor(
"valid-something", "valid-something",
typeof(OverriddenInvalidBoundAttributeWithValid) typeof(OverriddenInvalidBoundAttributeWithValid)
@ -969,7 +990,8 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
{ {
typeof(OverriddenValidBoundAttributeWithInvalid), typeof(OverriddenValidBoundAttributeWithInvalid),
Enumerable.Empty<TagHelperAttributeDescriptor>(), Enumerable.Empty<TagHelperAttributeDescriptor>(),
new[] { new[]
{
string.Format( string.Format(
errorFormat, errorFormat,
nameof(OverriddenValidBoundAttributeWithInvalid.ValidSomething), nameof(OverriddenValidBoundAttributeWithInvalid.ValidSomething),
@ -979,7 +1001,8 @@ namespace Microsoft.AspNet.Razor.Runtime.TagHelpers
{ {
typeof(OverriddenValidBoundAttributeWithInvalidUpperCase), typeof(OverriddenValidBoundAttributeWithInvalidUpperCase),
Enumerable.Empty<TagHelperAttributeDescriptor>(), Enumerable.Empty<TagHelperAttributeDescriptor>(),
new[] { new[]
{
string.Format( string.Format(
errorFormat, errorFormat,
nameof(OverriddenValidBoundAttributeWithInvalidUpperCase.ValidSomething), nameof(OverriddenValidBoundAttributeWithInvalidUpperCase.ValidSomething),

View File

@ -52,7 +52,10 @@ namespace Microsoft.AspNet.Razor.Test.Editor
var oldBuffer = new StringTextBuffer("<p>@</p>"); var oldBuffer = new StringTextBuffer("<p>@</p>");
var newBuffer = new StringTextBuffer("<p>@f</p>"); var newBuffer = new StringTextBuffer("<p>@f</p>");
Assert.True(BackgroundParser.TreesAreDifferent( Assert.True(BackgroundParser.TreesAreDifferent(
original, modified, new[] { original,
modified,
new[]
{
new TextChange(position: 4, oldLength: 0, oldBuffer: oldBuffer, newLength: 1, newBuffer: newBuffer) new TextChange(position: 4, oldLength: 0, oldBuffer: oldBuffer, newLength: 1, newBuffer: newBuffer)
})); }));
} }
@ -81,7 +84,10 @@ namespace Microsoft.AspNet.Razor.Test.Editor
var oldBuffer = new StringTextBuffer("<p>@f</p>"); var oldBuffer = new StringTextBuffer("<p>@f</p>");
var newBuffer = new StringTextBuffer("<p>@foo</p>"); var newBuffer = new StringTextBuffer("<p>@foo</p>");
Assert.False(BackgroundParser.TreesAreDifferent( Assert.False(BackgroundParser.TreesAreDifferent(
original, modified, new[] { original,
modified,
new[]
{
new TextChange(position: 5, oldLength: 0, oldBuffer: oldBuffer, newLength: 2, newBuffer: newBuffer) new TextChange(position: 5, oldLength: 0, oldBuffer: oldBuffer, newLength: 2, newBuffer: newBuffer)
})); }));
} }

View File

@ -587,7 +587,8 @@ namespace Microsoft.AspNet.Razor.Test.Generator
// Act & Assert // Act & Assert
RunTagHelperTest("AddTagHelperDirective", RunTagHelperTest("AddTagHelperDirective",
designTimeMode: true, designTimeMode: true,
tagHelperDescriptors: new[] { tagHelperDescriptors: new[]
{
new TagHelperDescriptor("p", "pTagHelper", "SomeAssembly") new TagHelperDescriptor("p", "pTagHelper", "SomeAssembly")
}); });
} }
@ -602,9 +603,9 @@ namespace Microsoft.AspNet.Razor.Test.Generator
new TagHelperDescriptor("MyTagHelper", new TagHelperDescriptor("MyTagHelper",
"MyTagHelper", "MyTagHelper",
"SomeAssembly", "SomeAssembly",
new [] { new []
new TagHelperAttributeDescriptor("BoundProperty", {
propertyInfo) new TagHelperAttributeDescriptor("BoundProperty", propertyInfo)
}), }),
new TagHelperDescriptor("NestedTagHelper", "NestedTagHelper", "SomeAssembly") new TagHelperDescriptor("NestedTagHelper", "NestedTagHelper", "SomeAssembly")
}; };
@ -626,7 +627,8 @@ namespace Microsoft.AspNet.Razor.Test.Generator
tagName: "p", tagName: "p",
typeName: "PTagHelper", typeName: "PTagHelper",
assemblyName: "SomeAssembly", assemblyName: "SomeAssembly",
attributes: new [] { attributes: new []
{
new TagHelperAttributeDescriptor("age", pAgePropertyInfo) new TagHelperAttributeDescriptor("age", pAgePropertyInfo)
}, },
requiredAttributes: Enumerable.Empty<string>()), requiredAttributes: Enumerable.Empty<string>()),
@ -635,7 +637,8 @@ namespace Microsoft.AspNet.Razor.Test.Generator
tagName: "input", tagName: "input",
typeName: "InputTagHelper", typeName: "InputTagHelper",
assemblyName: "SomeAssembly", assemblyName: "SomeAssembly",
attributes: new TagHelperAttributeDescriptor[] { attributes: new TagHelperAttributeDescriptor[]
{
new TagHelperAttributeDescriptor("type", inputTypePropertyInfo) new TagHelperAttributeDescriptor("type", inputTypePropertyInfo)
}, },
requiredAttributes: Enumerable.Empty<string>()), requiredAttributes: Enumerable.Empty<string>()),
@ -644,7 +647,8 @@ namespace Microsoft.AspNet.Razor.Test.Generator
tagName: "input", tagName: "input",
typeName: "InputTagHelper2", typeName: "InputTagHelper2",
assemblyName: "SomeAssembly", assemblyName: "SomeAssembly",
attributes: new TagHelperAttributeDescriptor[] { attributes: new TagHelperAttributeDescriptor[]
{
new TagHelperAttributeDescriptor("type", inputTypePropertyInfo), new TagHelperAttributeDescriptor("type", inputTypePropertyInfo),
new TagHelperAttributeDescriptor("checked", checkedPropertyInfo) new TagHelperAttributeDescriptor("checked", checkedPropertyInfo)
}, },

View File

@ -13,9 +13,12 @@ namespace Microsoft.AspNet.Razor.Test.Generator
public void CreatesAUniqueIdForSingleTagHelperChunk() public void CreatesAUniqueIdForSingleTagHelperChunk()
{ {
// Arrange // Arrange
var chunk = CreateTagHelperChunk("div", new[] { var chunk = CreateTagHelperChunk(
new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName") "div",
}); new[]
{
new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName")
});
var codeRenderer = CreateCodeRenderer(); var codeRenderer = CreateCodeRenderer();
// Act // Act
@ -29,10 +32,13 @@ namespace Microsoft.AspNet.Razor.Test.Generator
public void UsesTheSameUniqueIdForTagHelperChunkWithMultipleTagHelpers() public void UsesTheSameUniqueIdForTagHelperChunkWithMultipleTagHelpers()
{ {
// Arrange // Arrange
var chunk = CreateTagHelperChunk("div", new[] { var chunk = CreateTagHelperChunk(
new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName"), "div",
new TagHelperDescriptor("div", "Div2TagHelper", "FakeAssemblyName") new[]
}); {
new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName"),
new TagHelperDescriptor("div", "Div2TagHelper", "FakeAssemblyName")
});
var codeRenderer = CreateCodeRenderer(); var codeRenderer = CreateCodeRenderer();
// Act // Act
@ -46,12 +52,18 @@ namespace Microsoft.AspNet.Razor.Test.Generator
public void UsesDifferentUniqueIdForMultipleTagHelperChunksForSameTagHelper() public void UsesDifferentUniqueIdForMultipleTagHelperChunksForSameTagHelper()
{ {
// Arrange // Arrange
var chunk1 = CreateTagHelperChunk("div", new[] { var chunk1 = CreateTagHelperChunk(
new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName") "div",
}); new[]
var chunk2 = CreateTagHelperChunk("div", new[] { {
new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName") new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName")
}); });
var chunk2 = CreateTagHelperChunk(
"div",
new[]
{
new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName")
});
var codeRenderer = CreateCodeRenderer(); var codeRenderer = CreateCodeRenderer();
// Act // Act
@ -66,12 +78,18 @@ namespace Microsoft.AspNet.Razor.Test.Generator
public void UsesDifferentUniqueIdForNestedTagHelperChunksForSameTagHelper() public void UsesDifferentUniqueIdForNestedTagHelperChunksForSameTagHelper()
{ {
// Arrange // Arrange
var parentChunk = CreateTagHelperChunk("div", new[] { var parentChunk = CreateTagHelperChunk(
new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName") "div",
}); new[]
var childChunk = CreateTagHelperChunk("div", new[] { {
new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName") new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName")
}); });
var childChunk = CreateTagHelperChunk(
"div",
new[]
{
new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName")
});
parentChunk.Children.Add(childChunk); parentChunk.Children.Add(childChunk);
var codeRenderer = CreateCodeRenderer(); var codeRenderer = CreateCodeRenderer();
@ -86,12 +104,18 @@ namespace Microsoft.AspNet.Razor.Test.Generator
public void UsesDifferentUniqueIdForMultipleTagHelperChunksForDifferentTagHelpers() public void UsesDifferentUniqueIdForMultipleTagHelperChunksForDifferentTagHelpers()
{ {
// Arrange // Arrange
var divChunk = CreateTagHelperChunk("div", new[] { var divChunk = CreateTagHelperChunk(
new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName") "div",
}); new[]
var spanChunk = CreateTagHelperChunk("span", new[] { {
new TagHelperDescriptor("span", "SpanTagHelper", "FakeAssemblyName") new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName")
}); });
var spanChunk = CreateTagHelperChunk(
"span",
new[]
{
new TagHelperDescriptor("span", "SpanTagHelper", "FakeAssemblyName")
});
var codeRenderer = CreateCodeRenderer(); var codeRenderer = CreateCodeRenderer();
// Act // Act
@ -106,17 +130,26 @@ namespace Microsoft.AspNet.Razor.Test.Generator
public void UsesCorrectUniqueIdForMultipleTagHelperChunksSomeWithSameSameTagHelpersSomeWithDifferentTagHelpers() public void UsesCorrectUniqueIdForMultipleTagHelperChunksSomeWithSameSameTagHelpersSomeWithDifferentTagHelpers()
{ {
// Arrange // Arrange
var chunk1 = CreateTagHelperChunk("div", new[] { var chunk1 = CreateTagHelperChunk(
new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName"), "div",
new TagHelperDescriptor("div", "Div2TagHelper", "FakeAssemblyName") new[]
}); {
var chunk2 = CreateTagHelperChunk("span", new[] { new TagHelperDescriptor("div", "DivTagHelper", "FakeAssemblyName"),
new TagHelperDescriptor("span", "SpanTagHelper", "FakeAssemblyName") new TagHelperDescriptor("div", "Div2TagHelper", "FakeAssemblyName")
}); });
var chunk3 = CreateTagHelperChunk("span", new[] { var chunk2 = CreateTagHelperChunk(
new TagHelperDescriptor("span", "SpanTagHelper", "FakeAssemblyName"), "span",
new TagHelperDescriptor("span", "Span2TagHelper", "FakeAssemblyName") new[]
}); {
new TagHelperDescriptor("span", "SpanTagHelper", "FakeAssemblyName")
});
var chunk3 = CreateTagHelperChunk(
"span",
new[]
{
new TagHelperDescriptor("span", "SpanTagHelper", "FakeAssemblyName"),
new TagHelperDescriptor("span", "Span2TagHelper", "FakeAssemblyName")
});
var codeRenderer = CreateCodeRenderer(); var codeRenderer = CreateCodeRenderer();
// Act // Act

View File

@ -27,13 +27,15 @@ namespace Microsoft.AspNet.Razor.Test.Generator
new TagHelperDescriptor("input", new TagHelperDescriptor("input",
"InputTagHelper", "InputTagHelper",
"SomeAssembly", "SomeAssembly",
new TagHelperAttributeDescriptor[] { new TagHelperAttributeDescriptor[]
{
new TagHelperAttributeDescriptor("type", inputTypePropertyInfo) new TagHelperAttributeDescriptor("type", inputTypePropertyInfo)
}), }),
new TagHelperDescriptor("input", new TagHelperDescriptor("input",
"InputTagHelper2", "InputTagHelper2",
"SomeAssembly", "SomeAssembly",
new TagHelperAttributeDescriptor[] { new TagHelperAttributeDescriptor[]
{
new TagHelperAttributeDescriptor("type", inputTypePropertyInfo), new TagHelperAttributeDescriptor("type", inputTypePropertyInfo),
new TagHelperAttributeDescriptor("checked", checkedPropertyInfo) new TagHelperAttributeDescriptor("checked", checkedPropertyInfo)
}) })

View File

@ -607,7 +607,8 @@ namespace Microsoft.AspNet.Razor.Test.Parser.CSharp
BlockFactory.MarkupTagBlock("</html>", AcceptedCharacters.None)), BlockFactory.MarkupTagBlock("</html>", AcceptedCharacters.None)),
Factory.EmptyCSharp().AsStatement(), Factory.EmptyCSharp().AsStatement(),
Factory.MetaCode("}").Accepts(AcceptedCharacters.None)), Factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
expectedErrors: new[] { expectedErrors: new[]
{
new RazorError( new RazorError(
RazorResources.FormatParseError_Expected_CloseBracket_Before_EOF("(", ")"), RazorResources.FormatParseError_Expected_CloseBracket_Before_EOF("(", ")"),
14, 0, 14) 14, 0, 14)

View File

@ -1949,8 +1949,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
buildPartialStatementBlock( buildPartialStatementBlock(
() => new MarkupBlock( () => new MarkupBlock(
blockFactory.EscapedMarkupTagBlock( blockFactory.EscapedMarkupTagBlock(
"<", "<",
"text /", "text /",
new MarkupBlock(factory.Markup("}"))))), new MarkupBlock(factory.Markup("}"))))),
new [] new []
{ {
@ -3991,7 +3991,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords) .AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
.Accepts(AcceptedCharacters.NonWhiteSpace))); .Accepts(AcceptedCharacters.NonWhiteSpace)));
yield return new object[] { yield return new object[]
{
"<p class=foo dynamic=@DateTime.Now style=color:red;><strong></p></strong>", "<p class=foo dynamic=@DateTime.Now style=color:red;><strong></p></strong>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4013,7 +4014,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
absoluteIndex: 64, lineIndex: 0, columnIndex: 64) absoluteIndex: 64, lineIndex: 0, columnIndex: 64)
} }
}; };
yield return new object[] { yield return new object[]
{
"<div><p>Hello <strong>World</strong></div>", "<div><p>Hello <strong>World</strong></div>",
new MarkupBlock( new MarkupBlock(
blockFactory.MarkupTagBlock("<div>"), blockFactory.MarkupTagBlock("<div>"),
@ -4029,7 +4031,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
absoluteIndex: 5, lineIndex: 0, columnIndex: 5) absoluteIndex: 5, lineIndex: 0, columnIndex: 5)
} }
}; };
yield return new object[] { yield return new object[]
{
"<div><p>Hello <strong>World</div>", "<div><p>Hello <strong>World</div>",
new MarkupBlock( new MarkupBlock(
blockFactory.MarkupTagBlock("<div>"), blockFactory.MarkupTagBlock("<div>"),
@ -4048,7 +4051,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
absoluteIndex: 14, lineIndex: 0, columnIndex: 14) absoluteIndex: 14, lineIndex: 0, columnIndex: 14)
} }
}; };
yield return new object[] { yield return new object[]
{
"<p class=\"foo\">Hello <p style=\"color:red;\">World</p>", "<p class=\"foo\">Hello <p style=\"color:red;\">World</p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4216,13 +4220,15 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
var factory = CreateDefaultSpanFactory(); var factory = CreateDefaultSpanFactory();
// Should re-write text tags that aren't in C# blocks // Should re-write text tags that aren't in C# blocks
yield return new object[] { yield return new object[]
{
"<text>Hello World</text>", "<text>Hello World</text>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("text", new MarkupTagHelperBlock("text",
factory.Markup("Hello World"))) factory.Markup("Hello World")))
}; };
yield return new object[] { yield return new object[]
{
"@{<text>Hello World</text>}", "@{<text>Hello World</text>}",
new MarkupBlock( new MarkupBlock(
factory.EmptyHtml(), factory.EmptyHtml(),
@ -4239,7 +4245,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
factory.MetaCode("}").Accepts(AcceptedCharacters.None)), factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
factory.EmptyHtml()) factory.EmptyHtml())
}; };
yield return new object[] { yield return new object[]
{
"@{<text><p>Hello World</p></text>}", "@{<text><p>Hello World</p></text>}",
new MarkupBlock( new MarkupBlock(
factory.EmptyHtml(), factory.EmptyHtml(),
@ -4257,7 +4264,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
factory.MetaCode("}").Accepts(AcceptedCharacters.None)), factory.MetaCode("}").Accepts(AcceptedCharacters.None)),
factory.EmptyHtml()) factory.EmptyHtml())
}; };
yield return new object[] { yield return new object[]
{
"@{<p><text>Hello World</text></p>}", "@{<p><text>Hello World</text></p>}",
new MarkupBlock( new MarkupBlock(
factory.EmptyHtml(), factory.EmptyHtml(),
@ -4290,7 +4298,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
{ {
var factory = CreateDefaultSpanFactory(); var factory = CreateDefaultSpanFactory();
yield return new object[] { yield return new object[]
{
"<foo><!-- Hello World --></foo>", "<foo><!-- Hello World --></foo>",
new MarkupBlock( new MarkupBlock(
new MarkupTagBlock( new MarkupTagBlock(
@ -4299,7 +4308,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new MarkupTagBlock( new MarkupTagBlock(
factory.Markup("</foo>"))) factory.Markup("</foo>")))
}; };
yield return new object[] { yield return new object[]
{
"<foo><!-- @foo --></foo>", "<foo><!-- @foo --></foo>",
new MarkupBlock( new MarkupBlock(
new MarkupTagBlock( new MarkupTagBlock(
@ -4314,7 +4324,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new MarkupTagBlock( new MarkupTagBlock(
factory.Markup("</foo>"))) factory.Markup("</foo>")))
}; };
yield return new object[] { yield return new object[]
{
"<foo><?xml Hello World ?></foo>", "<foo><?xml Hello World ?></foo>",
new MarkupBlock( new MarkupBlock(
new MarkupTagBlock( new MarkupTagBlock(
@ -4323,7 +4334,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new MarkupTagBlock( new MarkupTagBlock(
factory.Markup("</foo>"))) factory.Markup("</foo>")))
}; };
yield return new object[] { yield return new object[]
{
"<foo><?xml @foo ?></foo>", "<foo><?xml @foo ?></foo>",
new MarkupBlock( new MarkupBlock(
new MarkupTagBlock( new MarkupTagBlock(
@ -4338,7 +4350,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new MarkupTagBlock( new MarkupTagBlock(
factory.Markup("</foo>"))) factory.Markup("</foo>")))
}; };
yield return new object[] { yield return new object[]
{
"<foo><!DOCTYPE @foo ></foo>", "<foo><!DOCTYPE @foo ></foo>",
new MarkupBlock( new MarkupBlock(
new MarkupTagBlock( new MarkupTagBlock(
@ -4353,7 +4366,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new MarkupTagBlock( new MarkupTagBlock(
factory.Markup("</foo>"))) factory.Markup("</foo>")))
}; };
yield return new object[] { yield return new object[]
{
"<foo><!DOCTYPE hello=\"world\" ></foo>", "<foo><!DOCTYPE hello=\"world\" ></foo>",
new MarkupBlock( new MarkupBlock(
new MarkupTagBlock( new MarkupTagBlock(
@ -4362,7 +4376,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new MarkupTagBlock( new MarkupTagBlock(
factory.Markup("</foo>"))) factory.Markup("</foo>")))
}; };
yield return new object[] { yield return new object[]
{
"<foo><![CDATA[ Hello World ]]></foo>", "<foo><![CDATA[ Hello World ]]></foo>",
new MarkupBlock( new MarkupBlock(
new MarkupTagBlock( new MarkupTagBlock(
@ -4371,7 +4386,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new MarkupTagBlock( new MarkupTagBlock(
factory.Markup("</foo>"))) factory.Markup("</foo>")))
}; };
yield return new object[] { yield return new object[]
{
"<foo><![CDATA[ @foo ]]></foo>", "<foo><![CDATA[ @foo ]]></foo>",
new MarkupBlock( new MarkupBlock(
new MarkupTagBlock( new MarkupTagBlock(
@ -4404,7 +4420,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
{ {
var factory = CreateDefaultSpanFactory(); var factory = CreateDefaultSpanFactory();
yield return new object[] { yield return new object[]
{
"<p class=\" foo\" style=\" color : red ; \" ></p>", "<p class=\" foo\" style=\" color : red ; \" ></p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4421,7 +4438,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
factory.Markup(" "))) factory.Markup(" ")))
})) }))
}; };
yield return new object[] { yield return new object[]
{
"<p class=\" foo\" style=\" color : red ; \" >Hello World</p>", "<p class=\" foo\" style=\" color : red ; \" >Hello World</p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4439,7 +4457,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
}, },
factory.Markup("Hello World"))) factory.Markup("Hello World")))
}; };
yield return new object[] { yield return new object[]
{
"<p class=\" foo \" >Hello</p> <p style=\" color:red; \" >World</p>", "<p class=\" foo \" >Hello</p> <p style=\" color:red; \" >World</p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4500,7 +4519,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
factory.Code("foo++; } while (foo<bar>);").AsStatement().Accepts(AcceptedCharacters.None))); factory.Code("foo++; } while (foo<bar>);").AsStatement().Accepts(AcceptedCharacters.None)));
var currentFormattedString = "<p class=\"{0}\" style='{0}'></p>"; var currentFormattedString = "<p class=\"{0}\" style='{0}'></p>";
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, dateTimeNowString), string.Format(currentFormattedString, dateTimeNowString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4510,7 +4530,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new KeyValuePair<string, SyntaxTreeNode>("style", new MarkupBlock(dateTimeNow)) new KeyValuePair<string, SyntaxTreeNode>("style", new MarkupBlock(dateTimeNow))
})) }))
}; };
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, doWhileString), string.Format(currentFormattedString, doWhileString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4522,7 +4543,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
}; };
currentFormattedString = "<p class=\"{0}\" style='{0}'>Hello World</p>"; currentFormattedString = "<p class=\"{0}\" style='{0}'>Hello World</p>";
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, dateTimeNowString), string.Format(currentFormattedString, dateTimeNowString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4533,7 +4555,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
}, },
factory.Markup("Hello World"))) factory.Markup("Hello World")))
}; };
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, doWhileString), string.Format(currentFormattedString, doWhileString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4546,7 +4569,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
}; };
currentFormattedString = "<p class=\"{0}\">Hello</p> <p style='{0}'>World</p>"; currentFormattedString = "<p class=\"{0}\">Hello</p> <p style='{0}'>World</p>";
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, dateTimeNowString), string.Format(currentFormattedString, dateTimeNowString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4563,7 +4587,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
}, },
factory.Markup("World"))) factory.Markup("World")))
}; };
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, doWhileString), string.Format(currentFormattedString, doWhileString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4583,7 +4608,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
currentFormattedString = currentFormattedString =
"<p class=\"{0}\" style='{0}'>Hello World <strong class=\"{0}\">inside of strong tag</strong></p>"; "<p class=\"{0}\" style='{0}'>Hello World <strong class=\"{0}\">inside of strong tag</strong></p>";
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, dateTimeNowString), string.Format(currentFormattedString, dateTimeNowString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4646,26 +4672,30 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
factory.Code("foo++; } while (foo<bar>);").AsStatement().Accepts(AcceptedCharacters.None)); factory.Code("foo++; } while (foo<bar>);").AsStatement().Accepts(AcceptedCharacters.None));
var currentFormattedString = "<p>{0}</p>"; var currentFormattedString = "<p>{0}</p>";
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, dateTimeNowString), string.Format(currentFormattedString, dateTimeNowString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", dateTimeNow)) new MarkupTagHelperBlock("p", dateTimeNow))
}; };
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, doWhileString), string.Format(currentFormattedString, doWhileString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", doWhile)) new MarkupTagHelperBlock("p", doWhile))
}; };
currentFormattedString = "<p>Hello World {0}</p>"; currentFormattedString = "<p>Hello World {0}</p>";
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, dateTimeNowString), string.Format(currentFormattedString, dateTimeNowString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
factory.Markup("Hello World "), factory.Markup("Hello World "),
dateTimeNow)) dateTimeNow))
}; };
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, doWhileString), string.Format(currentFormattedString, doWhileString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4674,14 +4704,16 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
}; };
currentFormattedString = "<p>{0}</p> <p>{0}</p>"; currentFormattedString = "<p>{0}</p> <p>{0}</p>";
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, dateTimeNowString), string.Format(currentFormattedString, dateTimeNowString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", dateTimeNow), new MarkupTagHelperBlock("p", dateTimeNow),
factory.Markup(" "), factory.Markup(" "),
new MarkupTagHelperBlock("p", dateTimeNow)) new MarkupTagHelperBlock("p", dateTimeNow))
}; };
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, doWhileString), string.Format(currentFormattedString, doWhileString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", doWhile), new MarkupTagHelperBlock("p", doWhile),
@ -4690,7 +4722,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
}; };
currentFormattedString = "<p>Hello {0}<strong>inside of {0} strong tag</strong></p>"; currentFormattedString = "<p>Hello {0}<strong>inside of {0} strong tag</strong></p>";
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, dateTimeNowString), string.Format(currentFormattedString, dateTimeNowString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4702,7 +4735,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
factory.Markup(" strong tag"), factory.Markup(" strong tag"),
blockFactory.MarkupTagBlock("</strong>"))) blockFactory.MarkupTagBlock("</strong>")))
}; };
yield return new object[] { yield return new object[]
{
string.Format(currentFormattedString, doWhileString), string.Format(currentFormattedString, doWhileString),
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4732,19 +4766,22 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
{ {
var factory = CreateDefaultSpanFactory(); var factory = CreateDefaultSpanFactory();
yield return new object[] { yield return new object[]
{
"<script><script></foo></script>", "<script><script></foo></script>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("script", new MarkupTagHelperBlock("script",
factory.Markup("<script></foo>"))) factory.Markup("<script></foo>")))
}; };
yield return new object[] { yield return new object[]
{
"<script>Hello World <div></div></script>", "<script>Hello World <div></div></script>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("script", new MarkupTagHelperBlock("script",
factory.Markup("Hello World <div></div>"))) factory.Markup("Hello World <div></div>")))
}; };
yield return new object[] { yield return new object[]
{
"<script>Hel<p>lo</p></script> <p><div>World</div></p>", "<script>Hel<p>lo</p></script> <p><div>World</div></p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("script", new MarkupTagHelperBlock("script",
@ -4754,7 +4791,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new MarkupTagHelperBlock("div", new MarkupTagHelperBlock("div",
factory.Markup("World")))) factory.Markup("World"))))
}; };
yield return new object[] { yield return new object[]
{
"<script>Hel<strong>lo</strong></script> <script><span>World</span></script>", "<script>Hel<strong>lo</strong></script> <script><span>World</span></script>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("script", new MarkupTagHelperBlock("script",
@ -4763,7 +4801,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new MarkupTagHelperBlock("script", new MarkupTagHelperBlock("script",
factory.Markup("<span>World</span>"))) factory.Markup("<span>World</span>")))
}; };
yield return new object[] { yield return new object[]
{
"<script class=\"foo\" style=\"color:red;\" />", "<script class=\"foo\" style=\"color:red;\" />",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("script", new MarkupTagHelperBlock("script",
@ -4774,7 +4813,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new KeyValuePair<string, SyntaxTreeNode>("style", factory.Markup("color:red;")) new KeyValuePair<string, SyntaxTreeNode>("style", factory.Markup("color:red;"))
})) }))
}; };
yield return new object[] { yield return new object[]
{
"<p>Hello <script class=\"foo\" style=\"color:red;\"></script> World</p>", "<p>Hello <script class=\"foo\" style=\"color:red;\"></script> World</p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4787,7 +4827,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
}), }),
factory.Markup(" World"))) factory.Markup(" World")))
}; };
yield return new object[] { yield return new object[]
{
"<p>Hello <script class=\"@@foo@bar.com\" style=\"color:red;\"></script> World</p>", "<p>Hello <script class=\"@@foo@bar.com\" style=\"color:red;\"></script> World</p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4824,7 +4865,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
{ {
var factory = CreateDefaultSpanFactory(); var factory = CreateDefaultSpanFactory();
yield return new object[] { yield return new object[]
{
"<p class=\"foo\" style=\"color:red;\" />", "<p class=\"foo\" style=\"color:red;\" />",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4835,13 +4877,15 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new KeyValuePair<string, SyntaxTreeNode>("style", factory.Markup("color:red;")) new KeyValuePair<string, SyntaxTreeNode>("style", factory.Markup("color:red;"))
})) }))
}; };
yield return new object[] { yield return new object[]
{
"<p>Hello <p class=\"foo\" style=\"color:red;\" /> World</p>", "<p>Hello <p class=\"foo\" style=\"color:red;\" /> World</p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock( new MarkupTagHelperBlock(
"p", "p",
selfClosing: false, selfClosing: false,
children: new SyntaxTreeNode[] { children: new SyntaxTreeNode[]
{
factory.Markup("Hello "), factory.Markup("Hello "),
new MarkupTagHelperBlock( new MarkupTagHelperBlock(
"p", "p",
@ -4853,9 +4897,11 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
"style", "style",
factory.Markup("color:red;")) factory.Markup("color:red;"))
}), }),
factory.Markup(" World")})) factory.Markup(" World")
}))
}; };
yield return new object[] { yield return new object[]
{
"Hello<p class=\"foo\" /> <p style=\"color:red;\" />World", "Hello<p class=\"foo\" /> <p style=\"color:red;\" />World",
new MarkupBlock( new MarkupBlock(
factory.Markup("Hello"), factory.Markup("Hello"),
@ -4899,7 +4945,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
.AsImplicitExpression(CSharpCodeParser.DefaultKeywords) .AsImplicitExpression(CSharpCodeParser.DefaultKeywords)
.Accepts(AcceptedCharacters.NonWhiteSpace))); .Accepts(AcceptedCharacters.NonWhiteSpace)));
yield return new object[] { yield return new object[]
{
"<p class=foo dynamic=@DateTime.Now style=color:red;></p>", "<p class=foo dynamic=@DateTime.Now style=color:red;></p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4910,7 +4957,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new KeyValuePair<string, SyntaxTreeNode>("style", factory.Markup("color:red;")) new KeyValuePair<string, SyntaxTreeNode>("style", factory.Markup("color:red;"))
})) }))
}; };
yield return new object[] { yield return new object[]
{
"<p class=foo dynamic=@DateTime.Now style=color:red;>Hello World</p>", "<p class=foo dynamic=@DateTime.Now style=color:red;>Hello World</p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4922,7 +4970,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
}, },
factory.Markup("Hello World"))) factory.Markup("Hello World")))
}; };
yield return new object[] { yield return new object[]
{
"<p class=foo dynamic=@DateTime.Now style=color@@:red;>Hello World</p>", "<p class=foo dynamic=@DateTime.Now style=color@@:red;>Hello World</p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4941,7 +4990,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
}, },
factory.Markup("Hello World"))) factory.Markup("Hello World")))
}; };
yield return new object[] { yield return new object[]
{
"<p class=foo dynamic=@DateTime.Now>Hello</p> <p style=color:red; dynamic=@DateTime.Now>World</p>", "<p class=foo dynamic=@DateTime.Now>Hello</p> <p style=color:red; dynamic=@DateTime.Now>World</p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -4960,7 +5010,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
}, },
factory.Markup("World"))) factory.Markup("World")))
}; };
yield return new object[] { yield return new object[]
{
"<p class=foo dynamic=@DateTime.Now style=color:red;>Hello World <strong class=\"foo\">inside of strong tag</strong></p>", "<p class=foo dynamic=@DateTime.Now style=color:red;>Hello World <strong class=\"foo\">inside of strong tag</strong></p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -5003,7 +5054,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
var factory = CreateDefaultSpanFactory(); var factory = CreateDefaultSpanFactory();
var blockFactory = new BlockFactory(factory); var blockFactory = new BlockFactory(factory);
yield return new object[] { yield return new object[]
{
"<p class=\"foo\" style=\"color:red;\"></p>", "<p class=\"foo\" style=\"color:red;\"></p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -5013,7 +5065,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new KeyValuePair<string, SyntaxTreeNode>("style", factory.Markup("color:red;")) new KeyValuePair<string, SyntaxTreeNode>("style", factory.Markup("color:red;"))
})) }))
}; };
yield return new object[] { yield return new object[]
{
"<p class=\"foo\" style=\"color:red;\">Hello World</p>", "<p class=\"foo\" style=\"color:red;\">Hello World</p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -5024,7 +5077,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
}, },
factory.Markup("Hello World"))) factory.Markup("Hello World")))
}; };
yield return new object[] { yield return new object[]
{
"<p class=\"foo\">Hello</p> <p style=\"color:red;\">World</p>", "<p class=\"foo\">Hello</p> <p style=\"color:red;\">World</p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -5041,7 +5095,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
}, },
factory.Markup("World"))) factory.Markup("World")))
}; };
yield return new object[] { yield return new object[]
{
"<p class=\"foo\" style=\"color:red;\">Hello World <strong class=\"foo\">inside of strong tag</strong></p>", "<p class=\"foo\" style=\"color:red;\">Hello World <strong class=\"foo\">inside of strong tag</strong></p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -5083,18 +5138,21 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
var factory = CreateDefaultSpanFactory(); var factory = CreateDefaultSpanFactory();
var blockFactory = new BlockFactory(factory); var blockFactory = new BlockFactory(factory);
yield return new object[] { yield return new object[]
{
"<p></p>", "<p></p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p")) new MarkupTagHelperBlock("p"))
}; };
yield return new object[] { yield return new object[]
{
"<p>Hello World</p>", "<p>Hello World</p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
factory.Markup("Hello World"))) factory.Markup("Hello World")))
}; };
yield return new object[] { yield return new object[]
{
"<p>Hello</p> <p>World</p>", "<p>Hello</p> <p>World</p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -5103,7 +5161,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
factory.Markup("World"))) factory.Markup("World")))
}; };
yield return new object[] { yield return new object[]
{
"<p>Hello World <strong>inside of strong tag</strong></p>", "<p>Hello World <strong>inside of strong tag</strong></p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -5131,20 +5190,23 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
var factory = CreateDefaultSpanFactory(); var factory = CreateDefaultSpanFactory();
var blockFactory = new BlockFactory(factory); var blockFactory = new BlockFactory(factory);
yield return new object[] { yield return new object[]
{
"<p><div></div></p>", "<p><div></div></p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
new MarkupTagHelperBlock("div"))) new MarkupTagHelperBlock("div")))
}; };
yield return new object[] { yield return new object[]
{
"<p>Hello World <div></div></p>", "<p>Hello World <div></div></p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
factory.Markup("Hello World "), factory.Markup("Hello World "),
new MarkupTagHelperBlock("div"))) new MarkupTagHelperBlock("div")))
}; };
yield return new object[] { yield return new object[]
{
"<p>Hel<p>lo</p></p> <p><div>World</div></p>", "<p>Hel<p>lo</p></p> <p><div>World</div></p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",
@ -5156,7 +5218,8 @@ namespace Microsoft.AspNet.Razor.Test.TagHelpers
new MarkupTagHelperBlock("div", new MarkupTagHelperBlock("div",
factory.Markup("World")))) factory.Markup("World"))))
}; };
yield return new object[] { yield return new object[]
{
"<p>Hel<strong>lo</strong></p> <p><span>World</span></p>", "<p>Hel<strong>lo</strong></p> <p><span>World</span></p>",
new MarkupBlock( new MarkupBlock(
new MarkupTagHelperBlock("p", new MarkupTagHelperBlock("p",