public void SerializeTextTest() { var element = elementFactory.Create(x => x.Div) .AddAttribute(a => a.Id).Setup(i => i.SetValue("selector")) .AddChild(e => e.Div, out var child) .AddAttribute(a => a.Class).Setup(c => c.SetValue("child_class")) .AddChild(e => e.A) .AddAttribute(a => a.HRef).Setup(r => r.SetValue("https://host.com")) .AddContent("The link") .Root; var result = string.Empty; using (var sw = new StringWriter()) { var serializer = serializerFactory.Create(element); serializer.Serialize(sw); result = sw.ToString(); } var testResult = @"<div id=""selector""> <div class=""child_class""> <a href=""https://host.com"">The link</a> </div> </div>"; Assert.AreEqual(result, testResult); }
public override string ToString() { using (var stringWriter = new StringWriter()) { var serializer = serializerFactory.Create(this); serializer.Serialize(stringWriter); var result = stringWriter.ToString(); stringWriter.Flush(); return(result); } }