public void GetModelTypesTest() { PluginFactory.LoadPlugins(pluginPath); var actual = PluginFactory.GetModelTypes(); Assert.IsTrue(actual.Length >= 1); }
public void RegisterModelTypeTest() { PluginFactory.LoadPlugins(pluginPath); var beforeLength = PluginFactory.GetModelTypes().Length; PluginFactory.RegisterModelType(typeof(PluginFactoryTests)); var actual = PluginFactory.GetModelTypes(); CollectionAssert.Contains(actual, typeof(PluginFactoryTests)); Assert.IsTrue(actual.Length == beforeLength + 1); }
static internal ProjectData Open(string filename) { using (FileStream reader = new FileStream(filename, FileMode.Open, FileAccess.Read)) { DataContractSerializer ser = new DataContractSerializer(typeof(ProjectData), PluginFactory.GetModelTypes()); ProjectData p = (ProjectData)ser.ReadObject(reader); return(p); } }
internal void Save(string filename) { const string extension = ".scp"; if (string.IsNullOrEmpty(filename)) { return; } if (!filename.EndsWith(extension)) { filename = filename + extension; } var settings = new XmlWriterSettings(); settings.Indent = true; using (XmlWriter xw = XmlWriter.Create(filename, settings)) { DataContractSerializer ser = new DataContractSerializer(typeof(ProjectData), PluginFactory.GetModelTypes()); ser.WriteObject(xw, this); } }