Ejemplo n.º 1
0
        public void TestExportToXMLInverseOrder()
        {
            XSSFWorkbook wb = XSSFTestDataSamples
                              .OpenSampleWorkbook("CustomXmlMappings-inverse-order.xlsx");

            MapInfo mapInfo = null;

            foreach (POIXMLDocumentPart p in wb.GetRelations())
            {
                if (!(p is MapInfo))
                {
                    continue;
                }
                mapInfo = (MapInfo)p;

                XSSFMap         map      = mapInfo.GetXSSFMapById(1);
                XSSFExportToXml exporter = new XSSFExportToXml(map);
                MemoryStream    os       = new MemoryStream();
                exporter.ExportToXML(os, true);
                os.Position = 0;
                var xml = XDocument.Load(os);
                Assert.IsNotNull(xml);
                Assert.IsTrue(xml.OuterXml() != "");

                String docente   = xml.XPathSelectElement("//DOCENTE").Value.Trim();
                String nome      = xml.XPathSelectElement("//NOME").Value.Trim();
                String tutor     = xml.XPathSelectElement("//TUTOR").Value.Trim();
                String cdl       = xml.XPathSelectElement("//CDL").Value.Trim();
                String durata    = xml.XPathSelectElement("//DURATA").Value.Trim();
                String argomento = xml.XPathSelectElement("//ARGOMENTO").Value.Trim();
                String progetto  = xml.XPathSelectElement("//PROGETTO").Value.Trim();
                String crediti   = xml.XPathSelectElement("//CREDITI").Value.Trim();

                Assert.AreEqual("aa", nome);
                Assert.AreEqual("aaaa", docente);
                Assert.AreEqual("gvvv", tutor);
                Assert.AreEqual("g", cdl);
                Assert.AreEqual("gs", durata);
                Assert.AreEqual("ds", argomento);
                Assert.AreEqual("ro", progetto);
                Assert.AreEqual("ro", crediti);
            }
        }
Ejemplo n.º 2
0
        public void TestXPathOrdering()
        {
            XSSFWorkbook wb = XSSFTestDataSamples
                              .OpenSampleWorkbook("CustomXmlMappings-inverse-order.xlsx");

            MapInfo mapInfo = null;

            foreach (POIXMLDocumentPart p in wb.GetRelations())
            {
                if (p is MapInfo)
                {
                    mapInfo = (MapInfo)p;

                    XSSFMap         map      = mapInfo.GetXSSFMapById(1);
                    XSSFExportToXml exporter = new XSSFExportToXml(map);

                    Assert.AreEqual(1, exporter.Compare("/CORSO/DOCENTE", "/CORSO/NOME"));
                    Assert.AreEqual(-1, exporter.Compare("/CORSO/NOME", "/CORSO/DOCENTE"));
                }
            }
        }
Ejemplo n.º 3
0
        public void TestMultiTable()
        {
            XSSFWorkbook wb = XSSFTestDataSamples
                              .OpenSampleWorkbook("CustomXMLMappings-complex-type.xlsx");

            foreach (POIXMLDocumentPart p in wb.GetRelations())
            {
                if (p is MapInfo)
                {
                    MapInfo mapInfo = (MapInfo)p;

                    XSSFMap map = mapInfo.GetXSSFMapById(2);

                    Assert.IsNotNull(map);

                    XSSFExportToXml exporter = new XSSFExportToXml(map);
                    MemoryStream    os       = new MemoryStream();
                    exporter.ExportToXML(os, true);
                    String xml = Encoding.UTF8.GetString(os.ToArray());
                    Assert.IsNotNull(xml);

                    String[] regexConditions =
                    {
                        "<MapInfo",                                          "</MapInfo>",
                        "<Schema ID=\"1\" SchemaRef=\"\" Namespace=\"\" />",
                        "<Schema ID=\"4\" SchemaRef=\"\" Namespace=\"\" />",
                        "DataBinding",
                        "Map ID=\"1\"",
                        "Map ID=\"5\"",
                    };

                    foreach (string condition in regexConditions)
                    {
                        Regex pattern = new Regex(condition, RegexOptions.Compiled);
                        Assert.IsTrue(pattern.IsMatch(xml), condition);
                    }
                }
            }
        }