diff --git a/src/Microsoft.AspNet.Razor.Runtime/TagHelpers/DefaultTagHelperContent.cs b/src/Microsoft.AspNet.Razor.Runtime/TagHelpers/DefaultTagHelperContent.cs index 584cf084d6..38a28193ae 100644 --- a/src/Microsoft.AspNet.Razor.Runtime/TagHelpers/DefaultTagHelperContent.cs +++ b/src/Microsoft.AspNet.Razor.Runtime/TagHelpers/DefaultTagHelperContent.cs @@ -122,15 +122,16 @@ namespace Microsoft.AspNet.Razor.TagHelpers } /// - public override TagHelperContent Append(string value) + public override TagHelperContent Append(string unencoded) { - Buffer.Append(value); + Buffer.Append(unencoded); return this; } - public override TagHelperContent AppendEncoded(string value) + /// + public override TagHelperContent AppendHtml(string encoded) { - Buffer.AppendEncoded(value); + Buffer.AppendHtml(encoded); return this; } diff --git a/src/Microsoft.AspNet.Razor.Runtime/TagHelpers/TagHelperContent.cs b/src/Microsoft.AspNet.Razor.Runtime/TagHelpers/TagHelperContent.cs index dc89db6061..8fe406274f 100644 --- a/src/Microsoft.AspNet.Razor.Runtime/TagHelpers/TagHelperContent.cs +++ b/src/Microsoft.AspNet.Razor.Runtime/TagHelpers/TagHelperContent.cs @@ -61,18 +61,18 @@ namespace Microsoft.AspNet.Razor.TagHelpers /// as-provided and no further encoding will be performed. /// /// A reference to this instance after the set operation has completed. - public TagHelperContent SetContentEncoded(string encoded) + public TagHelperContent SetHtmlContent(string encoded) { - HtmlContentBuilderExtensions.SetContentEncoded(this, encoded); + HtmlContentBuilderExtensions.SetHtmlContent(this, encoded); return this; } /// - /// Appends to the existing content. + /// Appends to the existing content. /// - /// The to be appended. + /// The to be appended. /// A reference to this instance after the append operation has completed. - public abstract TagHelperContent Append(string value); + public abstract TagHelperContent Append(string unencoded); /// /// Appends to the existing content. @@ -82,12 +82,12 @@ namespace Microsoft.AspNet.Razor.TagHelpers public abstract TagHelperContent Append(IHtmlContent htmlContent); /// - /// Appends to the existing content. is assumed + /// Appends to the existing content. is assumed /// to be an HTML encoded and no further encoding will be performed. /// - /// The to be appended. + /// The to be appended. /// A reference to this instance after the append operation has completed. - public abstract TagHelperContent AppendEncoded(string value); + public abstract TagHelperContent AppendHtml(string encoded); /// /// Appends the specified to the existing content after @@ -157,9 +157,9 @@ namespace Microsoft.AspNet.Razor.TagHelpers } /// - IHtmlContentBuilder IHtmlContentBuilder.AppendEncoded(string encoded) + IHtmlContentBuilder IHtmlContentBuilder.AppendHtml(string encoded) { - return AppendEncoded(encoded); + return AppendHtml(encoded); } /// diff --git a/test/Microsoft.AspNet.Razor.Runtime.Test/TagHelpers/DefaultTagHelperContentTest.cs b/test/Microsoft.AspNet.Razor.Runtime.Test/TagHelpers/DefaultTagHelperContentTest.cs index 3030db3270..fc5fb2f7f3 100644 --- a/test/Microsoft.AspNet.Razor.Runtime.Test/TagHelpers/DefaultTagHelperContentTest.cs +++ b/test/Microsoft.AspNet.Razor.Runtime.Test/TagHelpers/DefaultTagHelperContentTest.cs @@ -39,6 +39,33 @@ namespace Microsoft.AspNet.Razor.TagHelpers Assert.Equal(expected, tagHelperContent.GetContent(new CommonTestEncoder())); } + [Fact] + public void SetHtmlContent_TextIsNotFurtherEncoded() + { + // Arrange + var tagHelperContent = new DefaultTagHelperContent(); + + // Act + tagHelperContent.SetHtmlContent("Hi"); + + // Assert + Assert.Equal("Hi", tagHelperContent.GetContent(new CommonTestEncoder())); + } + + [Fact] + public void SetHtmlContent_ClearsExistingContent() + { + // Arrange + var tagHelperContent = new DefaultTagHelperContent(); + tagHelperContent.AppendHtml("Contoso"); + + // Act + tagHelperContent.SetHtmlContent("Hello World!"); + + // Assert + Assert.Equal("Hello World!", tagHelperContent.GetContent(new CommonTestEncoder())); + } + [Theory] [InlineData("HelloWorld!", "HtmlEncode[[HelloWorld!]]")] [InlineData(" ", "HtmlEncode[[ ]]")] @@ -473,11 +500,11 @@ namespace Microsoft.AspNet.Razor.TagHelpers } [Fact] - public void AppendEncoded_DoesNotGetEncoded() + public void AppendHtml_DoesNotGetEncoded() { // Arrange var tagHelperContent = new DefaultTagHelperContent(); - tagHelperContent.AppendEncoded("Hi"); + tagHelperContent.AppendHtml("Hi"); var writer = new StringWriter();