public void WhenReadWithEmptySet_ThenReturnsEmptyCollection() { // Note: Example of using strings for XML // Arrange string inputXml = "<SuperPeople></SuperPeople>"; SuperXmlSerializer target = new SuperXmlSerializer(); XmlReaderSettings settings = new XmlReaderSettings(); settings.CloseInput = false; settings.IgnoreWhitespace = true; settings.IgnoreComments = true; // Act IEnumerable <SuperPerson> actual; using (StringReader stringReader = new StringReader(inputXml)) { using (XmlReader reader = XmlReader.Create(stringReader, settings)) { actual = target.Read(reader); } } // Assert Assert.IsNotNull(actual); Assert.AreEqual(0, actual.Count()); }
public void WhenReadWithReaderNull_ThenThrows() { // Arrange SuperXmlSerializer target = new SuperXmlSerializer(); XmlReader reader = null; // Act target.Read(reader); // Assert }
public void WhenReadAndWrite_ThenRoundtripsXml() { // Arrange string inputXml = TestDataLoader.LoadText("TestData.SuperPeople.Valid.xml"); string expected = inputXml; SuperXmlSerializer target = new SuperXmlSerializer(); XmlReaderSettings settings = new XmlReaderSettings(); settings.CloseInput = false; settings.IgnoreWhitespace = true; settings.IgnoreComments = true; XmlWriterSettings writerSettings = new XmlWriterSettings(); writerSettings.CloseOutput = false; writerSettings.Encoding = System.Text.Encoding.UTF8; writerSettings.Indent = false; writerSettings.OmitXmlDeclaration = false; // Act IEnumerable <SuperPerson> superPeople; using (StringReader stringReader = new StringReader(inputXml)) { using (XmlReader reader = XmlReader.Create(stringReader, settings)) { superPeople = target.Read(reader); } } string actual; using (StringWriter stringWriter = new StringWriter()) { using (XmlWriter writer = XmlWriter.Create(stringWriter, writerSettings)) { target.Write(writer, superPeople); writer.Flush(); stringWriter.Flush(); actual = stringWriter.ToString(); } } // Assert AssertXml.AreEqual(expected, actual); }
public void WhenReadWithValidXml_ThenReturnsCollection() { // Note: Example of using embedded resource XML with TestDataLoader for input // Arrange string inputXml = TestDataLoader.LoadText("TestData.SuperPeople.Valid.xml"); SuperXmlSerializer target = new SuperXmlSerializer(); XmlReaderSettings settings = new XmlReaderSettings(); settings.CloseInput = false; settings.IgnoreWhitespace = true; settings.IgnoreComments = true; // Act IEnumerable <SuperPerson> actual; using (StringReader stringReader = new StringReader(inputXml)) { using (XmlReader reader = XmlReader.Create(stringReader, settings)) { actual = target.Read(reader); } } // Assert Assert.IsNotNull(actual); Assert.AreEqual(5, actual.Count()); int i = 1; foreach (var actualItem in actual) { Assert.AreEqual(i, actualItem.Id); Assert.AreEqual("Name" + i.ToString(), actualItem.Name); Assert.AreEqual("Allegiance" + i.ToString(), actualItem.Allegiance); Assert.AreEqual(i, actualItem.Rank); Assert.AreEqual(i, actualItem.Health); Assert.AreEqual(i, actualItem.Strength); Assert.AreEqual(i, actualItem.Speed); Assert.AreEqual(i, actualItem.Resistance); Assert.AreEqual(i, actualItem.Intellect); i++; } }
public void WhenReadWithEmptyXml_ThenThrows() { // Arrange string inputXml = ""; SuperXmlSerializer target = new SuperXmlSerializer(); XmlReaderSettings settings = new XmlReaderSettings(); settings.CloseInput = false; settings.IgnoreWhitespace = true; settings.IgnoreComments = true; // Act using (StringReader stringReader = new StringReader(inputXml)) { using (XmlReader reader = XmlReader.Create(stringReader, settings)) { target.Read(reader); } } // Assert }