Skip to content
This repository has been archived by the owner on Dec 14, 2018. It is now read-only.

Commit

Permalink
[Fixes #2085] Using custom HtmlEncoder in unit tests - part 2
Browse files Browse the repository at this point in the history
  • Loading branch information
ajaybhargavb committed Apr 23, 2015
1 parent 5da8ba7 commit 37e819c
Show file tree
Hide file tree
Showing 11 changed files with 420 additions and 417 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -25,21 +25,21 @@ public static TheoryData<string, bool, string> HtmlEncodeData
return new TheoryData<string, bool, string>
{
{ "Simple Display Text", false, "Simple Display Text" },
{ "Simple Display Text", true, "Simple Display Text" },
{ "Simple Display Text", true, "HtmlEncode[[Simple Display Text]]" },
{ "<blink>text</blink>", false, "<blink>text</blink>" },
{ "<blink>text</blink>", true, "&lt;blink&gt;text&lt;/blink&gt;" },
{ "<blink>text</blink>", true, "HtmlEncode[[<blink>text</blink>]]" },
{ "&'\"", false, "&'\"" },
{ "&'\"", true, "&amp;&#x27;&quot;" },
{ "&'\"", true, "HtmlEncode[[&'\"]]" },
{ " ¡ÿĀ", false, " ¡ÿĀ" }, // high ASCII
{ " ¡ÿĀ", true, "&#xA0;&#xA1;&#xFF;&#x100;" },
{ " ¡ÿĀ", true, "HtmlEncode[[ ¡ÿĀ]]" },
{ "Chinese西雅图Chars", false, "Chinese西雅图Chars" },
{ "Chinese西雅图Chars", true, "Chinese&#x897F;&#x96C5;&#x56FE;Chars" },
{ "Chinese西雅图Chars", true, "HtmlEncode[[Chinese西雅图Chars]]" },
{ "Unicode؃Format؃Char", false, "Unicode؃Format؃Char" }, // class Cf
{ "Unicode؃Format؃Char", true, "Unicode&#x603;Format&#x603;Char" },
{ "Unicode؃Format؃Char", true, "HtmlEncode[[Unicode؃Format؃Char]]" },
{ "UnicodeῼTitlecaseῼChar", false, "UnicodeῼTitlecaseῼChar" }, // class Lt
{ "UnicodeῼTitlecaseῼChar", true, "Unicode&#x1FFC;Titlecase&#x1FFC;Char" },
{ "UnicodeῼTitlecaseῼChar", true, "HtmlEncode[[UnicodeῼTitlecaseῼChar]]" },
{ "UnicodeःCombiningःChar", false, "UnicodeःCombiningःChar" }, // class Mc
{ "UnicodeःCombiningःChar", true, "Unicode&#x903;Combining&#x903;Char" },
{ "UnicodeःCombiningःChar", true, "HtmlEncode[[UnicodeःCombiningःChar]]" },
};
}
}
Expand All @@ -48,11 +48,11 @@ public static TheoryData<string, bool, string> HtmlEncodeData
public void ObjectTemplateDisplaysSimplePropertiesOnObjectByDefault()
{
var expected =
"<div class=\"display-label\">Property1</div>" + Environment.NewLine
+ "<div class=\"display-field\">Model = p1, ModelType = System.String, PropertyName = Property1," +
"<div class=\"HtmlEncode[[display-label]]\">HtmlEncode[[Property1]]</div>" + Environment.NewLine
+ "<div class=\"HtmlEncode[[display-field]]\">Model = p1, ModelType = System.String, PropertyName = Property1," +
" SimpleDisplayText = p1</div>" + Environment.NewLine
+ "<div class=\"display-label\">Property2</div>" + Environment.NewLine
+ "<div class=\"display-field\">Model = (null), ModelType = System.String, PropertyName = Property2," +
+ "<div class=\"HtmlEncode[[display-label]]\">HtmlEncode[[Property2]]</div>" + Environment.NewLine
+ "<div class=\"HtmlEncode[[display-field]]\">Model = (null), ModelType = System.String, PropertyName = Property2," +
" SimpleDisplayText = (null)</div>" + Environment.NewLine;

// Arrange
Expand Down Expand Up @@ -120,10 +120,10 @@ public void ObjectTemplate_IgnoresPropertiesWith_ScaffoldColumnFalse()
{
// Arrange
var expected =
@"<div class=""display-label"">Property1</div>
<div class=""display-field""></div>
<div class=""display-label"">Property3</div>
<div class=""display-field""></div>
@"<div class=""HtmlEncode[[display-label]]"">HtmlEncode[[Property1]]</div>
<div class=""HtmlEncode[[display-field]]"">HtmlEncode[[]]</div>
<div class=""HtmlEncode[[display-label]]"">HtmlEncode[[Property3]]</div>
<div class=""HtmlEncode[[display-field]]"">HtmlEncode[[]]</div>
";
var model = new DefaultTemplatesUtilities.ObjectWithScaffoldColumn();
var viewEngine = new Mock<ICompositeViewEngine>();
Expand All @@ -144,8 +144,8 @@ public void ObjectTemplate_HonoursHideSurroundingHtml()
// Arrange
var expected =
"Model = p1, ModelType = System.String, PropertyName = Property1, SimpleDisplayText = p1" +
"<div class=\"display-label\">Property2</div>" + Environment.NewLine +
"<div class=\"display-field\">Model = (null), ModelType = System.String, PropertyName = Property2," +
"<div class=\"HtmlEncode[[display-label]]\">HtmlEncode[[Property2]]</div>" + Environment.NewLine +
"<div class=\"HtmlEncode[[display-field]]\">Model = (null), ModelType = System.String, PropertyName = Property2," +
" SimpleDisplayText = (null)</div>" + Environment.NewLine;

var model = new DefaultTemplatesUtilities.ObjectTemplateModel { Property1 = "p1", Property2 = null };
Expand Down Expand Up @@ -187,13 +187,13 @@ public void ObjectTemplate_OrdersProperties_AsExpected()
{
var label = string.Format(
CultureInfo.InvariantCulture,
"<div class=\"display-label\">{0}</div>",
"<div class=\"HtmlEncode[[display-label]]\">HtmlEncode[[{0}]]</div>",
property);
stringBuilder.AppendLine(label);

var value = string.Format(
CultureInfo.InvariantCulture,
"<div class=\"display-field\">Model = (null), ModelType = System.String, PropertyName = {0}, " +
"<div class=\"HtmlEncode[[display-field]]\">Model = (null), ModelType = System.String, PropertyName = {0}, " +
"SimpleDisplayText = (null)</div>",
property);
stringBuilder.AppendLine(value);
Expand Down Expand Up @@ -223,7 +223,7 @@ public void HiddenInputTemplate_ReturnsValue()
var result = DefaultDisplayTemplates.HiddenInputTemplate(html);

// Assert
Assert.Equal("Formatted string", result);
Assert.Equal("HtmlEncode[[Formatted string]]", result);
}

[Fact]
Expand Down Expand Up @@ -268,7 +268,7 @@ public void Display_FindsViewDataMember()
var result = helper.Display("Property1");

// Assert
Assert.Equal("ViewData string", result.ToString());
Assert.Equal("HtmlEncode[[ViewData string]]", result.ToString());
}

[Fact]
Expand All @@ -287,7 +287,7 @@ public void DisplayFor_FindsModel()
var result = helper.DisplayFor(m => m.Property1);

// Assert
Assert.Equal("Model string", result.ToString());
Assert.Equal("HtmlEncode[[Model string]]", result.ToString());
}

[Fact]
Expand All @@ -305,7 +305,7 @@ public void Display_FindsModel_IfNoViewDataMember()
var result = helper.Display("Property1");

// Assert
Assert.Equal("Model string", result.ToString());
Assert.Equal("HtmlEncode[[Model string]]", result.ToString());
}

[Theory]
Expand All @@ -326,7 +326,7 @@ public void DisplayFor_FindsModel_EvenIfNullOrEmpty(string propertyValue)
var result = helper.DisplayFor(m => m.Property1);

// Assert
Assert.Empty(result.ToString());
Assert.Equal("HtmlEncode[[]]", result.ToString());
}

[Fact]
Expand Down
Loading

0 comments on commit 37e819c

Please sign in to comment.