public void EmptyConstructor() { string filePath = "EmptyConstructor.xml"; DotNetConfigSource source = new DotNetConfigSource (); IConfig config = source.AddConfig ("Pets"); config.Set ("cat", "Muffy"); config.Set ("dog", "Rover"); config.Set ("bird", "Tweety"); source.Save (filePath); Assert.AreEqual (3, config.GetKeys ().Length); Assert.AreEqual ("Muffy", config.Get ("cat")); Assert.AreEqual ("Rover", config.Get ("dog")); Assert.AreEqual ("Tweety", config.Get ("bird")); source = new DotNetConfigSource (filePath); config = source.Configs["Pets"]; Assert.AreEqual (3, config.GetKeys ().Length); Assert.AreEqual ("Muffy", config.Get ("cat")); Assert.AreEqual ("Rover", config.Get ("dog")); Assert.AreEqual ("Tweety", config.Get ("bird")); File.Delete (filePath); }
public void SetFolder(string folder) { DotNetConfigSource source = new DotNetConfigSource(); IConfig cfg = source.Configs["Config"]; if (cfg == null) { cfg = source.Configs.Add("Config"); } cfg.Set("ConfigFolder", folder); source.Save(AppDomain.CurrentDomain.SetupInformation.ConfigurationFile); }
/// <summary> /// Creates a new config file. /// </summary> private void CreateNewFile() { string type = null;; if (IsArg ("set-type")) { type = GetArg ("set-type").ToLower (); } else { ThrowError ("You must supply a type (--set-type)"); } switch (type) { case "ini": IniConfigSource iniSource = new IniConfigSource (); iniSource.Save (configPath); break; case "xml": XmlConfigSource xmlSource = new XmlConfigSource (); xmlSource.Save (configPath); break; case "config": DotNetConfigSource dotnetSource = new DotNetConfigSource (); dotnetSource.Save (configPath); break; default: ThrowError ("Unknown type"); break; } }
public void SetAndSave () { string filePath = "Test.xml"; XmlDocument doc = NiniDoc (); AddSection (doc, "NewSection"); AddKey (doc, "NewSection", "dog", "Rover"); AddKey (doc, "NewSection", "cat", "Muffy"); doc.Save (filePath); DotNetConfigSource source = new DotNetConfigSource (filePath); IConfig config = source.Configs["NewSection"]; Assert.AreEqual ("Rover", config.Get ("dog")); Assert.AreEqual ("Muffy", config.Get ("cat")); config.Set ("dog", "Spots"); config.Set ("cat", "Misha"); config.Set ("DoesNotExist", "SomeValue"); Assert.AreEqual ("Spots", config.Get ("dog")); Assert.AreEqual ("Misha", config.Get ("cat")); Assert.AreEqual ("SomeValue", config.Get ("DoesNotExist")); source.Save (); source = new DotNetConfigSource (filePath); config = source.Configs["NewSection"]; Assert.AreEqual ("Spots", config.Get ("dog")); Assert.AreEqual ("Misha", config.Get ("cat")); Assert.AreEqual ("SomeValue", config.Get ("DoesNotExist")); File.Delete (filePath); }
public void SaveToStream () { string filePath = "SaveToStream.ini"; FileStream stream = new FileStream (filePath, FileMode.Create); // Create a new document and save to stream DotNetConfigSource source = new DotNetConfigSource (); IConfig config = source.AddConfig ("Pets"); config.Set ("dog", "rover"); config.Set ("cat", "muffy"); source.Save (stream); stream.Close (); DotNetConfigSource newSource = new DotNetConfigSource (filePath); config = newSource.Configs["Pets"]; Assert.IsNotNull (config); Assert.AreEqual (2, config.GetKeys ().Length); Assert.AreEqual ("rover", config.GetString ("dog")); Assert.AreEqual ("muffy", config.GetString ("cat")); stream.Close (); File.Delete (filePath); }
public void Reload () { string filePath = "ReloadDot.xml"; DotNetConfigSource source = new DotNetConfigSource (); IConfig petConfig = source.AddConfig ("Pets"); petConfig.Set ("cat", "Muffy"); petConfig.Set ("dog", "Rover"); IConfig weatherConfig = source.AddConfig ("Weather"); weatherConfig.Set ("skies", "cloudy"); weatherConfig.Set ("precipitation", "rain"); source.Save (filePath); Assert.AreEqual (2, petConfig.GetKeys ().Length); Assert.AreEqual ("Muffy", petConfig.Get ("cat")); Assert.AreEqual (2, source.Configs.Count); DotNetConfigSource newSource = new DotNetConfigSource (filePath); IConfig compareConfig = newSource.Configs["Pets"]; Assert.AreEqual (2, compareConfig.GetKeys ().Length); Assert.AreEqual ("Muffy", compareConfig.Get ("cat")); Assert.IsTrue (compareConfig == newSource.Configs["Pets"], "References before are not equal"); // Set the new values to source source.Configs["Pets"].Set ("cat", "Misha"); source.Configs["Pets"].Set ("lizard", "Lizzy"); source.Configs["Pets"].Set ("hampster", "Surly"); source.Configs["Pets"].Remove ("dog"); source.Configs.Remove (weatherConfig); source.Save (); // saves new value // Reload the new source and check for changes newSource.Reload (); Assert.IsTrue (compareConfig == newSource.Configs["Pets"], "References after are not equal"); Assert.AreEqual (1, newSource.Configs.Count); Assert.AreEqual (3, newSource.Configs["Pets"].GetKeys ().Length); Assert.AreEqual ("Lizzy", newSource.Configs["Pets"].Get ("lizard")); Assert.AreEqual ("Misha", newSource.Configs["Pets"].Get ("cat")); Assert.IsNull (newSource.Configs["Pets"].Get ("dog")); File.Delete (filePath); }
public void SaveNewSection () { string filePath = "Test.xml"; XmlDocument doc = NiniDoc (); AddSection (doc, "NewSection"); AddKey (doc, "NewSection", "dog", "Rover"); AddKey (doc, "NewSection", "cat", "Muffy"); doc.Save (filePath); DotNetConfigSource source = new DotNetConfigSource (filePath); IConfig config = source.AddConfig ("test"); Assert.IsNotNull (source.Configs["test"]); source.Save (); source = new DotNetConfigSource (filePath); config = source.Configs["NewSection"]; Assert.AreEqual ("Rover", config.Get ("dog")); Assert.AreEqual ("Muffy", config.Get ("cat")); Assert.IsNotNull (source.Configs["test"]); File.Delete (filePath); }
public void SaveToWriter () { string newPath = "TestNew.xml"; XmlDocument doc = NiniDoc (); AddSection (doc, "Pets"); AddKey (doc, "Pets", "cat", "Muffy"); AddKey (doc, "Pets","dog", "Rover"); DotNetConfigSource source = new DotNetConfigSource (DocumentToReader (doc)); IConfig config = source.Configs["Pets"]; Assert.AreEqual ("Rover", config.Get ("dog")); Assert.AreEqual ("Muffy", config.Get ("cat")); StreamWriter textWriter = new StreamWriter (newPath); source.Save (textWriter); textWriter.Close (); // save to disk source = new DotNetConfigSource (newPath); config = source.Configs["Pets"]; Assert.AreEqual ("Rover", config.Get ("dog")); Assert.AreEqual ("Muffy", config.Get ("cat")); File.Delete (newPath); }
public void SaveToNewPath () { string filePath = "Test.xml"; string newPath = "TestNew.xml"; XmlDocument doc = NiniDoc (); AddSection (doc, "Pets"); AddKey (doc, "Pets", "cat", "Muffy"); AddKey (doc, "Pets", "dog", "Rover"); doc.Save (filePath); DotNetConfigSource source = new DotNetConfigSource (filePath); IConfig config = source.Configs["Pets"]; Assert.AreEqual ("Rover", config.Get ("dog")); Assert.AreEqual ("Muffy", config.Get ("cat")); source.Save (newPath); source = new DotNetConfigSource (newPath); config = source.Configs["Pets"]; Assert.AreEqual ("Rover", config.Get ("dog")); Assert.AreEqual ("Muffy", config.Get ("cat")); File.Delete (filePath); File.Delete (newPath); }
public void MergeAndSave () { string xmlFileName = "NiniConfig.xml"; XmlDocument doc = NiniDoc (); AddSection (doc, "Pets"); AddKey (doc, "Pets", "cat", "Muffy"); AddKey (doc, "Pets", "dog", "Rover"); AddKey (doc, "Pets", "bird", "Tweety"); doc.Save (xmlFileName); StringWriter writer = new StringWriter (); writer.WriteLine ("[Pets]"); writer.WriteLine ("cat = Becky"); // overwrite writer.WriteLine ("lizard = Saurus"); // new writer.WriteLine ("[People]"); writer.WriteLine (" woman = Jane"); writer.WriteLine (" man = John"); IniConfigSource iniSource = new IniConfigSource (new StringReader (writer.ToString ())); DotNetConfigSource xmlSource = new DotNetConfigSource (xmlFileName); xmlSource.Merge (iniSource); IConfig config = xmlSource.Configs["Pets"]; Assert.AreEqual (4, config.GetKeys ().Length); Assert.AreEqual ("Becky", config.Get ("cat")); Assert.AreEqual ("Rover", config.Get ("dog")); Assert.AreEqual ("Saurus", config.Get ("lizard")); config = xmlSource.Configs["People"]; Assert.AreEqual (2, config.GetKeys ().Length); Assert.AreEqual ("Jane", config.Get ("woman")); Assert.AreEqual ("John", config.Get ("man")); config.Set ("woman", "Tara"); config.Set ("man", "Quentin"); xmlSource.Save (); xmlSource = new DotNetConfigSource (xmlFileName); config = xmlSource.Configs["Pets"]; Assert.AreEqual (4, config.GetKeys ().Length); Assert.AreEqual ("Becky", config.Get ("cat")); Assert.AreEqual ("Rover", config.Get ("dog")); Assert.AreEqual ("Saurus", config.Get ("lizard")); config = xmlSource.Configs["People"]; Assert.AreEqual (2, config.GetKeys ().Length); Assert.AreEqual ("Tara", config.Get ("woman")); Assert.AreEqual ("Quentin", config.Get ("man")); File.Delete (xmlFileName); }
private void bindButton_Click(object sender, EventArgs e) { string configFile = Path.Combine("..", applicationList.SelectedItem + ".exe.config"); string configPath = Path.GetFullPath(Path.Combine(Environment.CurrentDirectory, configFile)); DotNetConfigSource source = new DotNetConfigSource(configPath); IConfig cfg = source.Configs["Config"]; if (cfg == null) { cfg = source.Configs.Add("Config"); } cfg.Set("ConfigFolder", "Configs/" + folderList.SelectedItem);