/// <summary> /// Creates a filled MOF and UML instance which can be used for further testing /// </summary> /// <param name="mof">Mof instance to be returned</param> /// <param name="uml">Uml instance to be returned</param> public static void CreateUmlAndMofInstance(out _MOF mof, out _UML uml) { var dataLayerLogic = new DataLayerLogic(new DataLayerData()); var dataLayers = new DataLayers(); dataLayers.SetRelationsForDefaultDataLayers(dataLayerLogic); var strapper = Bootstrapper.PerformFullBootstrap( new Bootstrapper.FilePaths() { PathPrimitive = "Xmi/PrimitiveTypes.xmi", PathUml = "Xmi/UML.xmi", PathMof = "Xmi/MOF.xmi" }, dataLayerLogic, dataLayers.Mof); Assert.That(strapper, Is.Not.Null); Assert.That(strapper.UmlInfrastructure, Is.Not.Null); Assert.That( AllDescendentsQuery.getDescendents(strapper.UmlInfrastructure).Count(), Is.GreaterThan(500)); // Check, if the filled classes are working mof = dataLayerLogic.Get<_MOF>(dataLayers.Mof); uml = dataLayerLogic.Get<_UML>(dataLayers.Mof); Assert.That(mof, Is.Not.Null); Assert.That(uml, Is.Not.Null); }
private static void TestFillTree() { var watch = new Stopwatch(); watch.Start(); var factory = new MofFactory(); var mofExtent = new MofUriExtent("datenmeister:///mof"); var umlExtent = new MofUriExtent("datenmeister:///uml"); var loader = new SimpleLoader(factory); loader.Load(mofExtent, "data/MOF.xmi"); loader.Load(mofExtent, "data/UML.xmi"); var mof = new _MOF(); var uml = new _UML(); FillTheMOF.DoFill(mofExtent.elements(), mof); FillTheUML.DoFill(umlExtent.elements(), uml); watch.Stop(); System.Console.WriteLine($"Elapsed Time for MOF and UML Fill {watch.ElapsedMilliseconds.ToString("n0")} ms"); }