public void Write_Value_Then_Write_Raw() { var sb = new StringBuilder(); using (var subject = new LightXmlWriter(new StringWriter(sb))) { subject.WriteStartElement("Person"); subject.WriteValue("&first"); subject.WriteRaw("&second"); subject.WriteEndElement("Person"); } Assert.Equal("<Person>&first&second</Person>", sb.ToString()); }
public void Writes_Supplier_OTA_Standard_Request() { var sb = new StringBuilder(); using (var subject = new LightXmlWriter(new StringWriter(sb))) { OTA_Standard_XML_Writer_LightXmlWriter.Write(subject); } var actual = sb.ToString(); var expected = File.ReadAllText(Path.Combine("..", "..", "..", "Examples", "OTA_Standard_XML_Writer.xml")); Assert.Equal(XDocument.Parse(expected).ToString(), XDocument.Parse(actual).ToString()); }
private static string WriteAttributeUsingLightXmlWriter(Action <LightXmlWriter> writeAction) { var sb = new StringBuilder(); using (var writer = new LightXmlWriter(new StringWriter(sb, CultureInfo.InvariantCulture))) { writer.WriteStartElement("Person"); writer.WriteStartAttribute("attr"); writeAction(writer); writer.WriteEndAttribute("attr"); writer.WriteEndElement("Person"); } return(sb.ToString()); }
public void Multiple_InnerElements() { var sb = new StringBuilder(); using (var subject = new LightXmlWriter(new StringWriter(sb))) { subject.WriteStartElement("Person"); subject.WriteStartElement("Details"); subject.WriteEndElement("Details"); subject.WriteStartElement("Details"); subject.WriteEndElement("Details"); subject.WriteEndElement("Person"); } Assert.Equal("<Person><Details/><Details/></Person>", sb.ToString()); }
private static void WriteSpecialEquipPrefs(LightXmlWriter writer) { writer.WriteStartElement("SpecialEquipPrefs"); writer.WriteStartElement("SpecialEquipPref"); writer.WriteAttributeString("EquipType", "7"); writer.WriteAttributeString("Quantity", 1); writer.WriteEndElement("SpecialEquipPref"); writer.WriteStartElement("SpecialEquipPref"); writer.WriteAttributeString("EquipType", "8"); writer.WriteAttributeString("Quantity", 1); writer.WriteEndElement("SpecialEquipPref"); writer.WriteEndElement("SpecialEquipPrefs"); }
public void Creates_InnerElement_Attributes() { var sb = new StringBuilder(); using (var subject = new LightXmlWriter(new StringWriter(sb))) { subject.WriteStartElement("Person"); subject.WriteStartElement("Details"); subject.WriteStartAttribute("name"); subject.WriteValue("Jon"); subject.WriteEndAttribute(); subject.WriteEndElement("Details"); subject.WriteEndElement("Person"); } Assert.Equal("<Person><Details name=\"Jon\"/></Person>", sb.ToString()); }
public void Inner_InnerElement() { var sb = new StringBuilder(); using (var subject = new LightXmlWriter(new StringWriter(sb))) { subject.WriteStartElement("Person"); subject.WriteStartElement("Details"); subject.WriteAttributeString("weight", "76"); subject.WriteStartElement("Extra"); subject.WriteEndElement("Extra"); subject.WriteEndElement("Details"); subject.WriteEndElement("Person"); } Assert.Equal("<Person><Details weight=\"76\"><Extra/></Details></Person>", sb.ToString()); }
private static void WriteVehRentalCore(LightXmlWriter writer) { writer.WriteStartElement("VehRentalCore"); writer.WriteAttributeString("PickUpDateTime", "2017-05-30T09:00:00"); writer.WriteAttributeString("ReturnDateTime", "2017-05-31T09:00:00"); writer.WriteStartElement("PickUpLocation"); writer.WriteAttributeString("LocationCode", "TIAC61"); writer.WriteEndElement("PickUpLocation"); writer.WriteStartElement("ReturnLocation"); writer.WriteAttributeString("LocationCode", "TIAC61"); writer.WriteEndElement("ReturnLocation"); writer.WriteEndElement("VehRentalCore"); }
public static void Write(LightXmlWriter writer) { const string prefix = "soapenv"; writer.WriteStartElement(prefix, "Envelope", "http://schemas.xmlsoap.org/soap/envelope/"); writer.WriteAttributeString("xmlns", "ns", null, "http://www.opentravel.org/OTA/2003/05"); writer.WriteStartElement(prefix, "Header", null); writer.WriteEndElement(prefix, "Header"); writer.WriteStartElement(prefix, "Body", null); WriteOtaVehResRQ(writer); writer.WriteEndElement(prefix, "Body"); writer.WriteEndElement(prefix, "Envelope"); }
private static void WriteCustomer(LightXmlWriter writer) { writer.WriteStartElement("Customer"); writer.WriteStartElement("Primary"); writer.WriteStartElement("PersonName"); writer.WriteElementString("NamePrefix", "Mr"); writer.WriteElementString("GivenName", "John"); writer.WriteElementString("Surname", "Doe"); writer.WriteEndElement("PersonName"); writer.WriteStartElement("Telephone"); writer.WriteAttributeString("PhoneUseType", "3"); writer.WriteAttributeString("PhoneTechType", "1"); writer.WriteAttributeString("CountryAccessCode", ""); writer.WriteAttributeString("AreaCityCode", ""); writer.WriteAttributeString("PhoneNumber", "666-777-888"); writer.WriteEndElement("Telephone"); writer.WriteElementString("Email", "*****@*****.**"); writer.WriteEndElement("Primary"); writer.WriteEndElement("Customer"); }
public void Should_Be_The_Same_Output() { for (int i = 0; i < methods1.Length; i++) { var sb1 = new StringBuilder(); var sb2 = new StringBuilder(); var tw1 = new StringWriter(sb1); var tw2 = new StringWriter(sb2); var lighWriter = new LightXmlWriter(tw1); var xmlWriter = XmlWriter.Create(tw2, new XmlWriterSettings { OmitXmlDeclaration = true }); methods1[i].Invoke(lighWriter); methods2[i].Invoke(xmlWriter); lighWriter.Dispose(); xmlWriter.Dispose(); var expected = new XmlDocument(); var actual = new XmlDocument(); expected.LoadXml(sb2.ToString()); actual.LoadXml(sb1.ToString()); Assert.Equal(expected.OuterXml, actual.OuterXml); } }
public void WriteEndElement() { var sb = new StringBuilder(); using (var writer = new LightXmlWriter(new StringWriter(sb))) { writer.WriteEndElement(null); Assert.Equal(">", sb.ToString()); sb.Clear(); writer.WriteEndElement(""); Assert.Equal("</>", sb.ToString()); sb.Clear(); writer.WriteEndElement("x"); Assert.Equal("</x>", sb.ToString()); sb.Clear(); writer.WriteStartElement("root"); writer.WriteEndElement("root"); Assert.Equal("<root/>", sb.ToString()); sb.Clear(); writer.WriteStartElement("root"); writer.WriteValue("value"); writer.WriteEndElement("root"); Assert.Equal("<root>value</root>", sb.ToString()); sb.Clear(); writer.WriteStartElement("root"); writer.WriteValue("value"); writer.WriteEndElement(""); Assert.Equal("<root>value</>", sb.ToString()); sb.Clear(); writer.WriteStartElement(""); writer.WriteValue("value"); writer.WriteEndElement("root"); Assert.Equal("<>value</root>", sb.ToString()); sb.Clear(); writer.WriteStartElement("root"); writer.WriteValue(""); writer.WriteEndElement("root"); Assert.Equal("<root></root>", sb.ToString()); sb.Clear(); writer.WriteStartElement("root"); writer.WriteValue(null); writer.WriteEndElement("root"); Assert.Equal("<root></root>", sb.ToString()); sb.Clear(); writer.WriteStartElement("root"); writer.WriteStartAttribute("attr"); writer.WriteEndElement("root"); Assert.Equal("<root attr=\"/>", sb.ToString()); sb.Clear(); writer.WriteStartElement("root"); writer.WriteStartAttribute("attr"); writer.WriteValue("value"); writer.WriteEndElement("root"); Assert.Equal("<root attr=\"value/>", sb.ToString()); sb.Clear(); } }
public void LightXmlWriter_Before_Each_Test() { this.writer = new LightXmlWriter(new StreamWriter(new MemoryStream())); }
private static void WriteVendorPref(LightXmlWriter writer, string code) { writer.WriteStartElement("VendorPref"); writer.WriteAttributeString("Code", code); writer.WriteEndElement("VendorPref"); }
private static void WriteVehPref(LightXmlWriter writer) { writer.WriteStartElement("VehPref"); writer.WriteAttributeString("Code", "EBMR"); writer.WriteEndElement("VehPref"); }
private static void WriteRateQualifier(LightXmlWriter writer) { writer.WriteStartElement("RateQualifier"); writer.WriteAttributeString("RateQualifier", "ER1AL"); writer.WriteEndElement("RateQualifier"); }
private static void WriteOtaVehResRQ(LightXmlWriter writer) { writer.WriteStartElement(null, "OTA_VehResRQ", "http://www.opentravel.org/OTA/2003/05"); writer.WriteAttributeString("PrimaryLangID", "EN"); writer.WriteAttributeString("Target", "Test"); writer.WriteAttributeString("Version", "3.0"); writer.WriteAttributeString("xmlns", "http://www.opentravel.org/OTA/2003/05"); writer.WriteAttributeString("xmlns", "xsi", null, "http://www.w3.org/2001/XMLSchema-instance"); WritePOS(writer); writer.WriteStartElement("VehResRQCore"); writer.WriteAttributeString("Status", "Available"); WriteVehRentalCore(writer); WriteCustomer(writer); WriteVendorPref(writer, "ET"); WriteVehPref(writer); writer.WriteStartElement("DriverType"); writer.WriteAttributeString("Age", 25); writer.WriteEndElement("DriverType"); WriteRateQualifier(writer); WriteSpecialEquipPrefs(writer); writer.WriteStartElement("TPA_Extensions"); writer.WriteStartElement("TPA_Extension_Flags"); writer.WriteAttributeString("EnhancedTotalPrice", "true"); writer.WriteEndElement("TPA_Extension_Flags"); writer.WriteEndElement("TPA_Extensions"); writer.WriteEndElement("VehResRQCore"); writer.WriteStartElement("VehResRQInfo"); WriteArrivalDetails(writer, "LH1234"); writer.WriteStartElement("RentalPaymentPref"); writer.WriteStartElement("Voucher"); writer.WriteAttributeString("SeriesCode", "cust-abc123"); writer.WriteEndElement("Voucher"); writer.WriteEndElement("RentalPaymentPref"); writer.WriteStartElement("Reference"); writer.WriteAttributeString("ID", "ER1AL"); writer.WriteAttributeString("DateTime", "2013-05-01T19:36:00"); writer.WriteAttributeString("Type", "16"); writer.WriteEndElement("Reference"); writer.WriteStartElement("TPA_Extensions"); writer.WriteStartElement("TPA_Extensions_Ref"); writer.WriteAttributeString("AltResNumber", "q8ot"); writer.WriteEndElement("TPA_Extensions_Ref"); writer.WriteStartElement("TPA_Extensions_Ref"); writer.WriteAttributeString("CoRef1", "cust-abc123"); writer.WriteEndElement("TPA_Extensions_Ref"); writer.WriteEndElement("TPA_Extensions"); writer.WriteEndElement("VehResRQInfo"); writer.WriteEndElement("OTA_VehResRQ"); }