public void ImportDocumentTest2() { MeiDocument testDoc = MeiImport.ImportDocument("..\\..\\files\\MeiImportTest2.xml"); Assert.IsNotNull(testDoc.SchemaLocation); Assert.IsNotNull(from node in testDoc.Nodes().OfType <XProcessingInstruction>() select node.Target != "xml-model"); }
public void MeiDocumentTest() { Mei blubb = new Mei(); MeiDocument testDoc = new MeiDocument(blubb); Assert.IsNotNull(testDoc); }
/// <summary> /// Reads Mei-File and generates sequences per panel. /// </summary> /// <param name="_filedir">Path to Mei file</param> /// <returns>List of sequence objects</returns> public static List <Sequence> GetSequences(string _filedir) { MeiDocument doc = MeiImport.ImportDocument(_filedir); MeiElement root = doc.Root; List <Sequence> sequences = new List <Sequence>(); string piece; //Get name of piece try { piece = root.Element <MeiHead>().Element <FileDesc>().Descendants <Title>().FirstOrDefault().Value; } catch { string[] splitUri = doc.BaseUri.Split('/'); piece = splitUri[splitUri.Length - 1]; } foreach (Panel panel in root.Descendants <Panel>()) { List <Sequence> sequencesPerPart = SequenceHandler.GetPreConversionSequence(panel, piece); foreach (Sequence stateSequence in sequencesPerPart) { sequences.Add(stateSequence); } } return(sequences); }
public void SetSchemaLocationTest() { string schemaLoc = "bla"; MeiDocument testDoc = new MeiDocument(new Mei(new XAttribute("label","foo"))); testDoc.SetSchemaLocation(schemaLoc); Assert.AreEqual(schemaLoc, testDoc.SchemaLocation); }
public void ImportExportCompare() { XDocument xDoc = XDocument.Load("..\\..\\files\\MeiImportTest2.xml"); MeiDocument meiDoc = MeiImport.ImportDocument("..\\..\\files\\MeiImportTest2.xml"); string xString = xDoc.ToString(); string meiString = meiDoc.ToString(); Equals(xString, meiString); }
public void SaveDocumentTest() { if(File.Exists("test.xml")) { File.Delete("test.xml"); } MeiDocument testDoc = new MeiDocument(new Mei(new XAttribute("label", "foo"))); testDoc.SetSchemaLocation("foobarfoobarfoo"); testDoc.Save("test.xml"); bool check = File.Exists("test.xml"); Assert.IsTrue(check); }
public void ImportDocumentTest3() { MeiDocument testDoc = MeiImport.ImportDocument("..\\..\\files\\MeiImportTest3.xml"); IEnumerable <XProcessingInstruction> models = from node in testDoc.Nodes().OfType <XProcessingInstruction>().Where(node => node.Target == "xml-model") select node; List <string> href_compare = new List <string>(); Match hrefs; foreach (XProcessingInstruction model in models) { //Get schemaLocation from pImodel.Data //See example here: https://msdn.microsoft.com/de-de/library/t9e807fx(v=vs.110).aspx string HRefPattern = "href\\s*=\\s*(?:[\"'](?<1>[^\"']*)[\"']|(?<1>\\S+))"; try { hrefs = Regex.Match(model.Data, HRefPattern, RegexOptions.IgnoreCase | RegexOptions.Compiled, TimeSpan.FromSeconds(1)); while (hrefs.Success) { href_compare.Add(hrefs.Groups[1].ToString()); hrefs = hrefs.NextMatch(); } } catch (RegexMatchTimeoutException) { break; } } Assert.AreEqual(testDoc.SchemaLocation, string.Empty); CollectionAssert.AllItemsAreUnique(href_compare); }
public void ImportDocumentTest1() { MeiDocument testDoc = MeiImport.ImportDocument("..\\..\\files\\MeiImportTest1.xml"); Assert.IsNotNull(testDoc); }