using NUnit.Framework; using Umbraco.Web; namespace Umbraco.Tests.Web.Mvc { [TestFixture] public class HtmlStringUtilitiesTests { private HtmlStringUtilities _htmlStringUtilities; [SetUp] public virtual void Initialize() { _htmlStringUtilities = new HtmlStringUtilities(); } [Test] public void ReplaceLineBreaksWithHtmlBreak() { var output = _htmlStringUtilities.ReplaceLineBreaksForHtml("

hello world

hello world\r\nhello world\rhello world\nhello world

").ToString(); var expected = "

hello world

hello world
hello world
hello world
hello world

"; Assert.AreEqual(expected, output); } [Test] public void TruncateWithElipsis() { var output = _htmlStringUtilities.Truncate("hello world", 5, true, false).ToString(); var expected = "hello…"; Assert.AreEqual(expected, output); } [Test] public void TruncateWithoutElipsis() { var output = _htmlStringUtilities.Truncate("hello world", 5, false, false).ToString(); var expected = "hello"; Assert.AreEqual(expected, output); } [Test] public void TruncateShorterWordThanHellip() { //http://issues.umbraco.org/issue/U4-10478 var output = _htmlStringUtilities.Truncate("hi", 5, true, false).ToString(); var expected = "hi"; Assert.AreEqual(expected, output); } [Test] public void TruncateAndRemoveSpaceBetweenHellipAndWord() { var output = _htmlStringUtilities.Truncate("hello world", 6 /* hello plus space */, true, false).ToString(); var expected = "hello…"; Assert.AreEqual(expected, output); } } }