public void TestStringReaderAndSubtree() { var stringContentReader = new StringContentReader(); using (var xmlReader = ReportReaderHelpers.CreateXmlReader("<A><b>234</b></A><z />")) Assert.Throws <XmlException>(() => stringContentReader.Read(new SimpleXmlReader(xmlReader, true))); }
public void TestSubtree() { using (var xmlReader = ReportReaderHelpers.CreateXmlReader("<A><b>234</b></A><z />")) { var contentReader = new SimpleContentReader <int>(int.TryParse); Assert.Throws <XmlException>(() => contentReader.Read(new SimpleXmlReader(xmlReader, true))); } }
public void TestDecimal_Comma() { decimal read; var reader = new FractionalContentReader <decimal>(decimal.TryParse); using (var xmlReader = ReportReaderHelpers.CreateXmlReader("<A>1,23</A>")) read = reader.Read(new SimpleXmlReader(xmlReader, true)); Assert.AreEqual(1.23, read); }
public void TestDouble_Comma() { double read; var reader = new FractionalContentReader <double>(double.TryParse); using (var xmlReader = ReportReaderHelpers.CreateXmlReader("<A>1,23</A>")) read = reader.Read(new SimpleXmlReader(xmlReader, true)); Assert.AreEqual(1.23, read, 1e-10); }
private static void Check <T>(string source, T?expected) where T : struct { using (var xmlReader = ReportReaderHelpers.CreateXmlReader(source)) { var arrayContentReader = new NullableContentReader <T>(new ContentReaderCollection(new XmlAttributeInterpreter(), StandardConfigurations.EmptyOnDeserializeConfiguration)); var value = arrayContentReader.Read(new SimpleXmlReader(xmlReader, true)); value.Should().BeEquivalentTo(expected); } }
public void TestReadSimple() { using (var xmlReader = ReportReaderHelpers.CreateXmlReader("<A x='xx'>123</A>")) { var contentReader = new SimpleContentReader <int>(int.TryParse); var read = contentReader.Read(new SimpleXmlReader(xmlReader, true)); Assert.AreEqual(XmlNodeType.None, xmlReader.NodeType); Assert.AreEqual(123, read); } }
public void TestPosition() { using (var xmlReader = ReportReaderHelpers.CreateXmlReader("<A>123</A> <Z />")) { var read = ((IContentReader <int>) new SimpleContentReader <int>(int.TryParse)).Read(new SimpleXmlReader(xmlReader, true)); Assert.AreEqual(XmlNodeType.Element, xmlReader.NodeType); Assert.AreEqual("Z", xmlReader.LocalName); Assert.AreEqual(123, read); } }
public void TestCantParse() { int read; using (var xmlReader = ReportReaderHelpers.CreateXmlReader("<A>ZZZ</A>")) { read = ((IContentReader <int>) new SimpleContentReader <int>(int.TryParse)).Read(new SimpleXmlReader(xmlReader, true)); Assert.AreEqual(XmlNodeType.None, xmlReader.NodeType); } Assert.AreEqual(0, read); }
public void TestGenericType() { using (var xmlReader = ReportReaderHelpers.CreateXmlReader(@"<Message><specificTrash>1</specificTrash><SpecificTransaction><specifictransactiontrash>2</specifictransactiontrash></SpecificTransaction></Message>")) { var interpreter = new XmlAttributeInterpreter(); var contentReader = new ClassContentReader <Message <SpecificTransaction> >(new ContentReaderCollection(interpreter, StandardConfigurations.EmptyOnDeserializeConfiguration), interpreter, StandardConfigurations.EmptyOnDeserializeConfiguration); var message = contentReader.Read(new SimpleXmlReader(xmlReader, true)); message.Should().BeEquivalentTo(new Message <SpecificTransaction> { SpecificTrash = "1", Transaction = new SpecificTransaction { SpecificTransactionTrash = "2" }, }); } }