public void PDFXMLParserConstructorTest() { PDFGeneratorSettings settings = GetSettings(); PDFXMLParser target = new PDFXMLParser(settings); Assert.IsNotNull(target); Assert.AreSame(settings, target.Settings); }
public void SettingsTest() { PDFGeneratorSettings settings = this.GetSettings(); PDFXMLParser target = new PDFXMLParser(settings); PDFGeneratorSettings actual; actual = target.Settings; Assert.AreSame(settings, actual); }
public void ParseProcessingInstructionsTest() { PDFGeneratorSettings settings = GetSettings(); PDFXMLParser target = new PDFXMLParser(settings); string source = @"C:\Fake\File\Path.xml"; using (Stream stream = ToStream(xmlValidProcess)) { IPDFComponent actual; actual = target.Parse(source, stream, ParseSourceType.DynamicContent); Assert.AreEqual(false, target.Settings.LogParserOutput); Assert.AreEqual(ParserConformanceMode.Strict, target.Mode); } }
public void Parse_XmlValid2_Test() { PDFGeneratorSettings settings = GetSettings(); PDFXMLParser target = new PDFXMLParser(settings); string source = @"C:\Fake\File\Path.xml"; using (Stream stream = ToStream(xmlValid2)) { IPDFComponent result; result = target.Parse(source, stream, ParseSourceType.DynamicContent); AssertValidXml2(result as Fakes.ParserRootOne); } }
public void Parse_XmlValidRemote_Test() { PDFGeneratorSettings settings = GetSettings(); PDFXMLParser target = new PDFXMLParser(settings); string source = @"C:\Fake\File\Path.xml"; using (Stream stream = ToStream(xmlValidRemote)) { IPDFComponent actual; resolverCallCount = 0; actual = target.Parse(source, stream, ParseSourceType.DynamicContent); Assert.AreEqual(2, resolverCallCount); AssertValidXmlRemote(actual as Fakes.ParserRootOne); } }
public void Parse_XmlValid1_Test() { PDFGeneratorSettings settings = GetSettings(); PDFXMLParser target = new PDFXMLParser(settings); string source = @"C:\Fake\File\Path.xml"; using (Stream stream = ToStream(xmlValid1)) { IPDFComponent result; result = target.Parse(source, stream, ParseSourceType.DynamicContent); AssertValidXml1(result as Fakes.ParserRootOne); } //Check with stream reader using (Stream stream = ToStream(xmlValid1)) { using (StreamReader reader = new StreamReader(stream)) { IPDFComponent actual; actual = target.Parse(source, reader, ParseSourceType.DynamicContent); AssertValidXml1(actual as Fakes.ParserRootOne); } } //Check with XMLReader using (Stream stream = ToStream(xmlValid1)) { using (XmlReader reader = XmlReader.Create(stream)) { IPDFComponent actual; actual = target.Parse(source, reader, ParseSourceType.DynamicContent); AssertValidXml1(actual as Fakes.ParserRootOne); } } }
public void RootComponentTest() { PDFGeneratorSettings settings = GetSettings(); PDFXMLParser target = new PDFXMLParser(settings); IPDFComponent expected = new Fakes.ParserRootOne(); IPDFComponent actual; // // if we set it, then it should stay as set // target.RootComponent = expected; string source = @"C:\Fake\File\Path.xml"; using (Stream stream = ToStream(xmlValid1)) { target.Parse(source, stream, ParseSourceType.DynamicContent); //not capturing the output - want to check the RootComponent } actual = target.RootComponent as IPDFComponent; Assert.AreSame(expected, actual); //Should not have changed // // if we don't set it then it becomes the output // target = new PDFXMLParser(settings); source = @"C:\Fake\File\Path.xml"; using (Stream stream = ToStream(xmlValid1)) { expected = target.Parse(source, stream, ParseSourceType.DynamicContent); AssertValidXml1(expected as Fakes.ParserRootOne); } actual = target.RootComponent as Fakes.ParserRootOne; //root component should be the same as the returned value from parse Assert.AreSame(expected, actual); }
public void ParseProcessingCultureTest() { PDFGeneratorSettings settings = GetSettings(); PDFXMLParser target = new PDFXMLParser(settings); string source = @"C:\Fake\File\Path.xml"; //Invariant format for dates and numbers using (Stream stream = ToStream(xmlValidInvariant)) { IPDFComponent actual; actual = target.Parse(source, stream, ParseSourceType.DynamicContent); Assert.AreEqual(false, target.Settings.LogParserOutput); Assert.AreEqual(ParserConformanceMode.Strict, target.Mode); Assert.IsInstanceOfType(actual, typeof(Fakes.ParserRootOne)); Fakes.ParserRootOne r1 = (Fakes.ParserRootOne)actual; Assert.AreEqual(r1.Complex.Size, 2.5, "Invariant number failed"); Assert.AreEqual(r1.Complex.Date, new DateTime(2015, 12, 25, 13, 30, 24), "Invariant date failed"); } //British format for dates and numbers settings = GetSettings(); target = new PDFXMLParser(settings); using (Stream stream = ToStream(xmlValidExplicitGB)) { IPDFComponent actual; actual = target.Parse(source, stream, ParseSourceType.DynamicContent); Assert.AreEqual(false, target.Settings.LogParserOutput); Assert.AreEqual(ParserConformanceMode.Strict, target.Mode); Assert.IsInstanceOfType(actual, typeof(Fakes.ParserRootOne)); Fakes.ParserRootOne r1 = (Fakes.ParserRootOne)actual; Assert.AreEqual(r1.Complex.Size, 2.5, "Britsh number failed"); Assert.AreEqual(r1.Complex.Date, new DateTime(2015, 12, 25, 13, 30, 24), "Britsh date failed"); } //French format for dates and numbers settings = GetSettings(); target = new PDFXMLParser(settings); using (Stream stream = ToStream(xmlValidExplicitFR)) { IPDFComponent actual; actual = target.Parse(source, stream, ParseSourceType.DynamicContent); Assert.AreEqual(false, target.Settings.LogParserOutput); Assert.AreEqual(ParserConformanceMode.Strict, target.Mode); Assert.IsInstanceOfType(actual, typeof(Fakes.ParserRootOne)); Fakes.ParserRootOne r1 = (Fakes.ParserRootOne)actual; Assert.AreEqual(r1.Complex.Size, 2.5, "French number failed"); Assert.AreEqual(r1.Complex.Date, new DateTime(2015, 12, 25, 13, 30, 24), "French date failed"); } //Make sure the current culture is ignored System.Globalization.CultureInfo current = System.Threading.Thread.CurrentThread.CurrentCulture; System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.GetCultureInfo("fr-FR"); System.Threading.Thread.CurrentThread.CurrentUICulture = System.Globalization.CultureInfo.GetCultureInfo("fr-FR"); //Invariant format for dates and numbers settings = GetSettings(); target = new PDFXMLParser(settings); using (Stream stream = ToStream(xmlValidInvariant)) { IPDFComponent actual; actual = target.Parse(source, stream, ParseSourceType.DynamicContent); Assert.AreEqual(false, target.Settings.LogParserOutput); Assert.AreEqual(ParserConformanceMode.Strict, target.Mode); Assert.IsInstanceOfType(actual, typeof(Fakes.ParserRootOne)); Fakes.ParserRootOne r1 = (Fakes.ParserRootOne)actual; Assert.AreEqual(r1.Complex.Size, 2.5, "Invariant number failed in french culture"); Assert.AreEqual(r1.Complex.Date, new DateTime(2015, 12, 25, 13, 30, 24), "Invariant date failed in french culture"); } //British format for dates and numbers settings = GetSettings(); target = new PDFXMLParser(settings); using (Stream stream = ToStream(xmlValidExplicitGB)) { IPDFComponent actual; actual = target.Parse(source, stream, ParseSourceType.DynamicContent); Assert.AreEqual(false, target.Settings.LogParserOutput); Assert.AreEqual(ParserConformanceMode.Strict, target.Mode); Assert.IsInstanceOfType(actual, typeof(Fakes.ParserRootOne)); Fakes.ParserRootOne r1 = (Fakes.ParserRootOne)actual; Assert.AreEqual(r1.Complex.Size, 2.5, "Britsh number failed"); Assert.AreEqual(r1.Complex.Date, new DateTime(2015, 12, 25, 13, 30, 24), "Britsh date failed"); } //French format for dates and numbers settings = GetSettings(); target = new PDFXMLParser(settings); using (Stream stream = ToStream(xmlValidExplicitFR)) { IPDFComponent actual; actual = target.Parse(source, stream, ParseSourceType.DynamicContent); Assert.AreEqual(false, target.Settings.LogParserOutput); Assert.AreEqual(ParserConformanceMode.Strict, target.Mode); Assert.IsInstanceOfType(actual, typeof(Fakes.ParserRootOne)); Fakes.ParserRootOne r1 = (Fakes.ParserRootOne)actual; Assert.AreEqual(r1.Complex.Size, 2.5, "French number failed"); Assert.AreEqual(r1.Complex.Date, new DateTime(2015, 12, 25, 13, 30, 24), "French date failed"); } System.Threading.Thread.CurrentThread.CurrentCulture = current; }